close
Ugrás a tartalomhoz

ASCII

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából

Az ASCII egy mozaikszó: az American Standard Code for Information Interchange kezdőbetűiből (jelentése kb.: szabványos amerikai kód információcserére). A kód jelkészlete az angol abc betűit, számokat, írásjeleket és vezérlő kódokat tartalmazza.[1] Az ASCII jelkészlet 128 különböző szövegkaraktert 0..127 előjel nélküli egész számokra képez le. ASCII-kódolást alkalmaznak a szövegszerkesztő programok (például a Jegyzettömb) is.

BERJAYA
Az eredeti ASCII jelkészlet

Rendeltetése

[szerkesztés]

Az informatikai eszközök az emberi kommunikációra használatos betűket digitális formában tudják csak tárolni és megjeleníteni. Például egy számítógép az összes digitálisan megjeleníthető karaktert (a kis- és nagybetűket, írásjeleket, valamint az egyéb speciális jeleket is) számok formájában tudja csak tárolni és egymástól megkülönböztetni. Egy számítógép mindent bináris számokként ábrázol, így a karaktereket szintén bináris értékekként ábrázolják.

Lényeges, hogy a karakterek numerikus értékekké való leképezése egységesen történjen: Ha a 65-ös helyen álló ASCII kódot elküldik egy eszköznek (számítógép perifériának vagy egy másik számítógépnek), akkor a fogadó eszköznek ezt a kapott jelet minden esetben A karakternek kell értelmeznie, máskülönben a kommunikáció nem lehetne egységes, így lehetetlenné válna szövegek tárolása, kinyomtatása vagy átvitele egy másik gépre. A korabeli karakteres (nem grafikus) kijelzők vezérlőegységei egy adott szimbólum megjelenítésére a saját memóriájukat (EPROM-ba égetett karaktergenerátorukat) használták.[2] Az ASCII-kódoláson kívül léteznek más kódolások is, például az EBCDIC, sőt a különböző számítógép-architektúrák eltérő kódolást használnak.[3][4]

Története

[szerkesztés]

A kódrendszert az 1960-as években dolgozták ki és szabványosították az Egyesült Államokban. Alkalmazásának célja a telexgépeken (távgépírón) és sornyomtatókon való felhasználás volt. A szöveget egy villamos írógéphez vagy margarétafejes nyomtatóhoz hasonló írógépbe gépelték, mely vagy közvetlenül továbbította közönséges telefonhálózaton keresztül a fogadó állomásnak a binárisan kódolt üzenetet vagy offline üzemmódban lyukszalagot nyomtattak segítségével és később automatikus üzemmódban küldték el. A nem nyomtatható karakterek a sornyomtató működéséhez igazodtak: ilyen a tabulátor és a kocsi-vissza, valamint a soremelés karakter is. A bájt nyolc bitjéből egy kihasználatlan maradt: ez volt a paritás bit, amelyből következtetni lehetett az átvitel zavarmentességére. Első továbbfejlesztési iránya az volt, hogy belekerüljenek a leggyakoribb nyugat-európai nyelvek ékezetes karakterei; ennek eredménye az ISO 8859-1 kódolás, más néven a Latin-1. A Unicode az ASCII jelkészlet kiterjesztése, amely hét bit helyett 16 bitet használ a karakterek ábrázolására. Ez 65 536 különböző jel használatát engedi meg a jelkészletben, ezáltal lehetővé teszi, hogy a világ különböző nyelveinek legtöbb szimbólumát egyetlen egységes jelkészletbe foglaljuk.

Felépítése

[szerkesztés]

A 7 bites ASCII jelkészlet négy, egyenként 32 karakterből álló csoportra oszlik, amelyek a következők:

  • Vezérlőkódok: az első 32 karakter (0 és 31 közé eső) különböző nyomtató és képernyő vezérlési műveleteket végeznek és nem jelenítenek meg szimbólumot. A 0 és 31 közé eső ASCII kódok speciális, nem-nyomtatódó vezérlő kódok. Például a 8. helyen lévő visszalépés BS (backspace) egy karakterrel balra lépteti a kurzort vagy a nyomtatófejet.[5]
  • Írásjelek és számjegyek. A táblázat 3. és 4. sora (írásjelek a szóközzel kezdődően és a számok).
  • Nagybetűk: Mivel csak 26 különböző angol betű van, a fennmaradó hat kód különböző speciális jeleket tartalmaz.
  • Kisbetűk: Az utolsó csoport a kisbetűknek van fenntartva. A fennmaradó hat kódból öt különleges jel és a 127. helyen lévő törlés jele: DEL. A nagy- és a (nekik megfelelő) kisbetűk között éppen 32 hely (karakter) távolság van, így egy adott nagybetű ASCII-helyértékét 32-vel növelve a neki megfelelő kisbetűt adja vissza és viszont. Bináris formában viszont csak az 5. biten térnek el a nagy- és a kisbetűk. A megfelelő bitek átállításával nagyon gyors függvények készíthetőek kisbetű-nagybetű konverzióra.[6]

Vezérlőkarakterek

[szerkesztés]
Bináris Decimális Hexa Rövidítés Eredeti név Név/jelentés
0000 00000 00NUL Null character Lezáró nulla, például a memóriában tárolt karakterláncok végén használatos
0000 00011 01SOH Start of Header Fej(léc) kezdete
0000 00102 02STX Start of Text Szöveg kezdete
0000 00113 03ETX End of Text Szöveg vége
0000 01004 04EOT End of Transmission Adatátvitel vége
0000 01015 05ENQ Enquiry Vizsgálat
0000 01106 06ACK Acknowledgment Visszaigazolás
0000 01117 07BEL Bell Csengetés
0000 10008 08BS Backspace Visszalépés (kurzor balra mozog). Esetleg törlés is
0000 10019 09HT Horizontal Tab Vízszintes tabulátor
0000 101010 0ALF Line feed Új sor
0000 101111 0BVT Vertical Tab Függőleges tabulátor
0000 110012 0CFF Form feed Lapdobás (új oldal)
0000 110113 0DCR Carriage return Kocsi vissza, a kurzor a sor elejére megy (de marad a sorban!)
0000 111014 0ESO Shift Out Karakterkészlet váltása
0000 111115 0FSI Shift In Karakterkészlet visszaállítása
0001 000016 10DLE Data Link Escape Nyers adat következik
0001 000117 11DC1 Device Control 1 Eszközvezérlés 1 – gyakran XON (adás engedélyezése)
0001 001018 12DC2 Device Control 2 Eszközvezérlés 2
0001 001119 13DC3 Device Control 3 (often XOFF) Eszközvezérlés 3 – gyakran XOFF (adás szüneteltetése)
0001 010020 14DC4 Device Control 4 Eszközvezérlés 4
0001 010121 15NAK Negative Acknowledgement Negatív visszaigazolás
0001 011022 16SYN Synchronous Idle Szinkron üresjárat
0001 011123 17ETB End of Trans. Block Adatátviteli blokk vége
0001 100024 18CAN Cancel Mégsem, visszavonás
0001 100125 19EM End of Medium Adathordozó vége
0001 101026 1ASUB Substitute Helyettesítő karakter
0001 101127 1BESC Escape Feloldójel
0001 110028 1CFS File Separator Állományelválasztó
0001 110129 1DGS Group Separator Csoportelválasztó
0001 111030 1ERS Record Separator Rekordelválasztó
0001 111131 1FUS Unit Separator Egységelválasztó
0111 1111127 7FDEL Delete Törlés

A többi karakterhely

[szerkesztés]

Az írásjeleket és a latin ábécé betűit tartalmazza. Szokás még nyomtatható karakterek néven is emlegetni, mivel a 127-es helyen lévő karakter kivételével valamennyi nyomtatható illetve képernyőn megjeleníthető.

Bináris Decimális Hexa Jel
0010 000032 20 szóköz (␠)
0010 000133 21 !
0010 001034 22"
0010 001135 23#
0010 010036 24$
0010 010137 25%
0010 011038 26 &
0010 011139 27 '
0010 100040 28(
0010 100141 29)
0010 101042 2A*
0010 101143 2B+
0010 110044 2C,
0010 110145 2D-
0010 111046 2E.
0010 111147 2F/
0011 000048 300
0011 000149 311
0011 001050 322
0011 001151 333
0011 010052 344
0011 010153 355
0011 011054 366
0011 011155 377
0011 100056 388
0011 100157 399
0011 101058 3A :
0011 101159 3B;
0011 110060 3C<
0011 110161 3D=
0011 111062 3E>
0011 111163 3F ?
 
Bináris Decimális Hexa Jel
0100 000064 40 @
0100 000165 41A
0100 001066 42B
0100 001167 43C
0100 010068 44D
0100 010169 45E
0100 011070 46F
0100 011171 47G
0100 100072 48H
0100 100173 49I
0100 101074 4AJ
0100 101175 4BK
0100 110076 4CL
0100 110177 4DM
0100 111078 4EN
0100 111179 4FO
0101 000080 50P
0101 000181 51Q
0101 001082 52R
0101 001183 53S
0101 010084 54T
0101 010185 55U
0101 011086 56V
0101 011187 57W
0101 100088 58X
0101 100189 59Y
0101 101090 5AZ
0101 101191 5B[
0101 110092 5C\
0101 110193 5D]
0101 111094 5E^
0101 111195 5F_
 
Bináris Decimális Hexa Jel
0110 000096 60`
0110 000197 61a
0110 001098 62b
0110 001199 63c
0110 0100100 64d
0110 0101101 65e
0110 0110102 66f
0110 0111103 67g
0110 1000104 68h
0110 1001105 69i
0110 1010106 6Aj
0110 1011107 6Bk
0110 1100108 6Cl
0110 1101109 6Dm
0110 1110110 6En
0110 1111111 6Fo
0111 0000112 70p
0111 0001113 71q
0111 0010114 72r
0111 0011115 73s
0111 0100116 74t
0111 0101117 75u
0111 0110118 76v
0111 0111119 77w
0111 1000120 78x
0111 1001121 79y
0111 1010122 7Az
0111 1011123 7B{
0111 1100124 7C|
0111 1101125 7D}
0111 1110126 7E~
BERJAYA
Kibővített ASCII-jelkészlet (437-es kódlap, IBM PC)

Kibővített jelkészlet

[szerkesztés]

Nyolc bit segítségével 256-féle különböző állapot (és ennek megfelelő karakter) tárolható és különböztethető meg, így kézenfekvő volt az ASCII-jelkészlet bővítése.[7] Az IBM PC elterjedésével először a 437-es kódlap (USA) szerinti bővítést használták, amely ékezetes betűket, matematikai jeleket és táblázatrajzoló szimbólumokat tartalmazott. Mivel az ASCII-jelkészletben csak az alsó 127 helyen lévő karakterek kódolása kötött, számos más kibővített ASCII-kód jelent meg a különböző nyelvek támogatására.

Jegyzetek

[szerkesztés]
  1. http://www.interfacebus.com/ASCII_Table.html ASCII Code Table
  2. http://www.atariarchives.org/cgp/Ch02_Sec04.php THE CHARACTER GENERATOR ROM
  3. https://web.archive.org/web/20050307204242/http://eclecticsatyr.hostultra.com/speccs.htm Sinclair Spectrum+ 48K Character Set
  4. Különböző számítógép-architektúrák között a fájlok átvitele nemcsak az eltérő technikai megoldások (interfészek megléte/hiánya és a fájlok eltérő formátuma) miatt körülményes, hanem azért is, mert a karakterek leképzése más szisztéma szerint történik.
  5. Nyomtatófej visszaléptetése az előző karakter dupla nyomtatása miatt (bold) vagy pedig speciális, a kódban nem lévő szimbólum elkészítése céljából történik. Utóbbi esetben két betű egymásra ütésével valósítható meg egy új karakter nyomtatás közbeni összerakása.
  6. http://www.inf.unideb.hu/~jvegh/public/edu/ASM386/AoAHLA/html/ch04s04.html Archiválva 2016. február 26-i dátummal a Wayback Machine-ben 4.4. Karakterek
  7. http://www.muszeroldal.hu/assistance/ASCII.html A kiterjesztett ASCII kódrendszer

Kapcsolódó szócikkek

[szerkesztés]
Commons:Category:ASCII
A Wikimédia Commons tartalmaz ASCII témájú médiaállományokat.

További információk

[szerkesztés]