ASCII

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. március 19-én felülvizsgált verziótól ; az ellenőrzések 19 szerkesztést igényelnek .

Az ASCII ( angol -  amerikai standard c ode for i nformation i nterchange , [ ˈ æ s . k i ] [1] ) egy táblázat neve (kódolás, halmaz), amelyben a numerikus kódok néhány gyakori nyomtatott és nem . - nyomtatható karakterek. A táblázatot 1963- ban fejlesztették ki és szabványosították az Egyesült Államokban .


Az ASCII tábla a karakterek kódjait határozza meg:

Történelem

Kezdetben (1963) az ASCII-t olyan karakterek kódolására fejlesztették ki, amelyek kódjai 7 bitbe (128 karakter; 2 7 \u003d 128) illeszkednek, és a legjelentősebb 7-es bitet (nullától számozás) használták az adatátvitel során fellépő hibák szabályozására. . Az első változatban csak nagybetűket kódoltak. A 6-os és 7-es (a számozás 0-tól kezdődik) sávokat (16 karakterből álló csoportok) fenntartották a további bővítésre. Vita folyik arról, hogy ezt a területet kisbetűk vagy vezérlőkarakterek esetén használja-e.

1965-ben elkészült az ASCII új kiadása, amely soha nem jelent meg. Az IBM 2260/2848 terminálokon kívül sehol nem használták . Az alábbi specifikáció 1967-ben jelent meg, és a benne szereplő karakterek a táblázatban azóta sem változtak.

Idővel a kódolás 256 karakterre bővült (2 8 = 256); az első 128 karakter kódja nem változott. Az ASCII-t a 8 bites kódolás feleként kezdték érzékelni, és a „bővített ASCII”-t ASCII-nek hívták a 8. bittel együtt (például KOI-8 ).

Szimbólumfedő

A nyomtatón található Backspace (BS) karakter (backspace ) használatával egy karaktert nyomtathat a másikra. Az ASCII-ben ugyanúgy adhat hozzá diakritikus jeleket a betűkhöz , például:

Megjegyzés . A régebbi betűtípusoknál az "'" aposztrófot ferdén balra húzták (hasonlítsa össze: " ` " és " ´ "), a "~" hullámvonalat pedig felfelé tolták (hasonlítsa össze: " ~ " és " ˜ "), így éppen alkalmas az akut "´" és a "tetőn tilde" szimbólumok szerepére.

Ha ugyanazt a karaktert kétszer nyomtatja egy helyre, félkövér karaktert kap; ha kiír egy karaktert egy helyre, majd  egy aláhúzásjelet "_" , akkor aláhúzott karaktert kap:

Ezt a technikát ma is használják, például a súgórendszerben man.

Az ASCII nemzeti változatai

Az ISO 646 (ECMA-6) szabvány lehetőséget biztosít nemzeti karakterek elhelyezésére az ASCII-ben. Ehhez javasolt a " @ ", " [ ", " \ ", " ] ", " ^ ", " ` ", " { ", " | "", " } ", " ~ ". Továbbá a "#" font jel helyett a "£" font szimbólum  , a "$" dollárjel helyére pedig a "¤" valutajel helyezhető el . Az ASCII azon változatát, amely nem tartalmaz nemzeti karaktereket, „US-ASCII”-nak vagy „nemzetközi referenciaverziónak” nevezik.

Egyes nyelvek esetében (nem latin betűkkel : orosz , görög , arab , héber stb.) az ASCII radikálisabb módosításai voltak:

Ezt követően kényelmesebbnek bizonyult a 8 bites kódolások ( kódlapok ) használata, amelyekben a kódtábla alsó felét (0-127) US-ASCII karakterek, a felső felét (128-255) foglalják el. ) további karakterek foglalják el, beleértve a nemzeti karakterek halmazát. Így az ASCII-tábla felső felét (az Unicode széles körű elterjedése előtt ) nagymértékben használták a lokalizált karakterek, a helyi nyelv betűinek megjelenítésére. A cirill karakterek ASCII táblában való elhelyezésére vonatkozó egységes szabvány hiánya sok problémát okozott a kódolással ( KOI-8 , Windows-1251 stb.). A nem latin írásjelű más nyelvek beszélői szintén szenvedtek a különféle kódolások jelenléte miatt.

Az Unicode szabvány első 128 karaktere megegyezik a megfelelő US-ASCII karakterekkel.

ASCII tábla
  .0 .egy .2 .3 .négy .5 .6 .7 .nyolc .9 .A .B .C .D .E .F
0. NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR ÍGY SI
egy. DLE DC1 DC2 DC3 DC4 NAK SYN ETB TUD EM ALATTI KILÉPÉS FS GS RS MINKET
2.     ! " # $ % & ' ( ) * + , - . /
3. 0 egy 2 3 négy 5 6 7 nyolc 9 : ; < = > ?
négy. @ A B C D E F G H én J K L M N O
5. P K R S T U V W x Y Z [ \ ] ^ _
6. ` a b c d e f g h én j k l m n o
7. p q r s t u v w x y z { | } ~ DEL

Az ASCII-szabvány első verziójában (1963) - a 0x5e (94) és 0x5f (95) pozíciókban a „felfelé nyíl” és a „balra nyíl” karakterek voltak. Az ECMA-6 szabvány (1965) ezeket a caret és az aláhúzás "_" jelre cserélte .

A Szovjetunióban a szabványt a KOI-7 H0 GOST 27463-87 (ST SEV 356-86) „Információs feldolgozó rendszerek” kód nemzetközi referenciaverziójának táblázata formájában hagyták jóvá. 7 bites kódolt karakterkészletek". [2]

Vezérlőkarakterek

Az ASCII tábla teletípuson keresztüli információcserére készült . A készlet nem nyomtatható karaktereket tartalmazott, amelyeket parancsként használtak a teletype vezérléséhez. Hasonló parancsokat használtak más számítógép előtti üzenetküldő eszközökben ( Morse kód , szemafor ábécé ), tekintettel az eszköz sajátosságaira. Az ASCII vezérlőkarakterek többsége hamar elvesztette célját, és nem használják a modern számítógépes rendszerekben.

Megjegyzés: a listában tovább - a karakterkódokat hexadecimális számrendszerben írjuk, a karakterek neve után.

A kommunikációs csatornán továbbított üzeneteket két részre osztották:

A "fejléc" a következőket tartalmazza: feladó és címzett címe, ellenőrző összeg stb .; helyezhető a "szöveg" elé vagy utána. A "szöveg" kifejezés az üzenetnek az a része volt, amelyet nyomtatásra szántak.

Szimbólum HEX kód Dekódolás Fordítás Leírás
SOH 01 s tart o f h rovat "fejléc" eleje A fejléc kezdete (SOH) szimbólum egy nem adatalapú adatleválasztást jelöl: a folyamnak azt a részét, amely címeket és egyéb többletköltséget tartalmaz.
STX 02 s tart of t e x t "szöveg" eleje Kapcsolja be a nyomtatót (TTY). A nyomtatandó szöveg a " STX" és a " " szimbólumok között volt .ETX
ETX 03 t e x t vége _ "szöveg" vége Kapcsolja ki a nyomtatót (TTY). Manapság a " " kódot " SIGINT " 03jel küldésére használják egy folyamatnak , és a + billentyűkombináció megnyomásával írható be . Ilyen jel vételekor a folyamatnak ki kell lépnie .  CtrlC
EOT 04 e nd o f t átadás adás vége A szimbólumot a terminálemulátorok a " Fájl vége " ( EOF: angolul  e nd o f file )Ctrl értelmében használják, és a + billentyűkombináció megnyomásával küldhető el D. Egy ilyen jel vételekor a terminálemulátor meghatározza a terminállal éppen működő folyamatot, és beállítja a fájl vége jelzőt a folyamat szabványos bemeneti adatfolyamára ( stdin : eng.  st andar d in put stream ) . Ennek eredményeként a folyamat leállítja az stdin olvasását , és megkezdi az olvasott adatok feldolgozását.
ENQ 05 enq uire "Kérem erősítse meg!"
ACK 06 ack most párkány "Kijelentem!" A „ NAK” szimbólum az ellenkezőjét jelenti: „Nem erősítem meg!”.
BEL 07 bel l sípolás : csengő A karaktert gyakran "\a"-ként jelölik, és a hangjelzés megszólaltatására használják. Egy modern személyi számítógépben a hangot a beépített hangszóró reprodukálja . Például a következő parancsok lejátszhatják ezt a hangot:
  • echo -e "\a"vagy echo -e "\007"- ha ezt a parancsot a " bash" programon keresztül adta meg ;
  • echo ^G- ha ezt a parancsot a " cmd.exe" programon keresztül adja meg (a " ^G" szimbólum beviteléhez nyomja meg a Ctrl+ billentyűt G);
  • printf( "\a" );- ha ez a parancs a program forráskódjaként kerül végrehajtásra "C" nyelven .
BS 08 visszafelé _ _ _ visszaad egy karaktert A gomb az előző karakter törlésére szolgál. ← Backspace
TAB 09 táblázat _ vízszintes fül Jelölve: " \t ". Néha " " HT(az angol  horizontal t abulation szóból )
LF 0A vonal táplálás _ _ soros fordítás Parancs a nyomtató kocsijának leengedésére egy sorral lejjebb. A szöveges fájlok sorvégi megjelölése operációs rendszer-családonként eltérő:

Sok programozási nyelvben a szimbólumot " \n " formában ábrázolják. Egy billentyű lenyomása szöveg kiírása közben lefordítja a sort. ↵ Enter

VT 0B függőleges fül _ _ függőleges fül
FF 0C űrlap betáplálás _ _ oldal futtatása, új oldal Nyomtatóparancs : Nyomtatás folytatása a következő lap elejétől.
CR 0D c arriage return _ kocsi vissza A nyomtató parancsa az, hogy folytassa a nyomtatást az aktuális sor elejétől ( nem egy új sortól). Számos programozási nyelvben a " " szimbólumot " \rCR " -ként jelölik . A Mac operációs rendszeren a " " karakter (a múltban) egy sor végét jelölte egy szövegfájlban. A billentyűzetről a „ ” szimbólum a + billentyűkombináció megnyomásával írható be . CRCRCtrlM
ÍGY 0E s hift o ut "Váltás másik szalagra (kódolás)" A másik szalagot általában pirosra festették. A jövőben a szimbólumot használták a nemzeti kódolásra való átváltáshoz.
SI 0F s műszak i n "Váltás eredeti szalagra (kódolás)" A művelet végrehajtására szolgáló parancs, a művelet fordítottja " SO".
DLE tíz d ata l ink e scape "Az adatcsatorna árnyékolása" A " " karaktert követő karaktereket adatkéntDLE kell kezelni, nem pedig vezérlőkarakterként.
DC1 tizenegy d eszközvezérlő 1 _ _ Az első eszközvezérlő karakter A lyukszalag - olvasó engedélyezésére szolgáló parancs .
DC2 12 eszközvezérlő 2 _ _ _ Második eszközvezérlő karakter A lyukasztó bekapcsolásának parancsa .
DC3 13 eszközvezérlés 3 _ _ _ Harmadik eszközvezérlő karakter A lyukszalag-olvasó kikapcsolásának parancsa.
DC4 tizennégy eszközvezérlés 4 _ _ _ Negyedik eszközvezérlő karakter Az ütés kikapcsolásának parancsa.
NAK tizenöt n negatív a c k mostlegment – Nem helyeslem! Fordított " ACK" karakter.
SYN 16 szinkronizálás _ Ezt a karaktert akkor adták át, amikor (szinkronizáláshoz) valamit továbbítani kellett.
ETB 17 e nd of t ext b lock szövegblokk vége Néha a szöveget (technikai okokból) blokkokra bontották.
TUD tizennyolc tud cel "Megszünteti" A korábban átvitt törlése.
EM 19 e n d of m médium "A hordozó vége" Kifogyott a lyukszalag, papír stb.
ALATTI 1A helyettesítő _ "Helyettes" A szimbólum elhelyezve:
  • Olyan szimbólum helyett, amelynek jelentése elveszett (vagy megsérült) az átvitel során;
  • Olyan karakter előtt, amelynek értelmezése további karakterkészletre váltást igényel;
  • A más színnel nyomtatandó karakter előtt...

CtrlJelenleg a karakter beszúrása a + billentyűkombináció megnyomásával Ztörténik, és a fájl végét jelzi a "DOS" és a "Windows" operációs rendszerekben .

KILÉPÉS 1B esc majom Annak jele, hogy a " ESC" karaktert követő karakternek más (nem ASCII) jelentése van. A " " karaktert általában escape szekvenciákESC követik ; a DOS operációs rendszerben ezeket az ANSI.SYS illesztőprogram valósítja meg .
DEL 7F del ete törölje az utolsó karaktert A " " szimbólum DEL(amely a bináris kód összes egységéből áll) bármilyen karaktert "kalapálhat". Az eszközök és programok figyelmen kívül hagyták DELa " " elemet ugyanúgy, mint a " NUL".

Ennek a karakternek a kódja az első lyukszalagos memóriával rendelkező szövegszerkesztőkből származik : ezekben a karakter törlése úgy történt, hogy a kódját lyukakkal ( logikai egységeket jelölve ) „kalapálták”.

Az adatok 4 szintre történő szétválasztása támogatott:

Szimbólum A kód Dekódolás Fordítás Leírás
FS 1C fájlelválasztó _ _ _ fájlelválasztó az üzenet fájlokból állhat
GS 1D g - roup s elválasztó csoportelválasztó a fájlok csoportosíthatók
RS 1E r ecord s elválasztó rekordelválasztó csoportok állhatnának rekordokból
MINKET 1F u nit s elválasztó egység elválasztó a rekordok egységekből állhatnak

A táblázat szerkezeti tulajdonságai

Az ASCII számítógépes ábrázolása

A modern számítógépek túlnyomó többségén a minimális címezhető memóriaegység egy bájt (8 bit méretű ); tehát 7 bites helyett 8 bites karaktereket használ. Általában egy ASCII-karakter 8 bitesre bővül úgy, hogy a legjelentősebb bitként egyszerűen hozzáadunk egy bit nullát.

Az IBM / 360 számítógépeken azonban (ASCII használata esetén) más módszert alkalmaztak: a 6. bitet (ha a legkisebb jelentőségű bitet tekintjük elsőnek) áthelyezik a 7.-be, a korábbi 7-et pedig "elágazzák" és a 8. bitre másolva, és a 6. bitre. Ennek eredménye egy táblázat [4] :

  .0 .egy .2 .3 .négy .5 .6 .7 .nyolc .9 .A .B .C .D .E .F
0. NUL SOM EOA EOM EQT WRU HU HARANG BKSP HT LF VT FF CR ÍGY SI
egy. DC 0 DC 1 DC 2 DC 3 DC 4 TÉVED SZINKRONIZÁL LEM S0_ _ S1_ _ S2_ _ S3_ _ S4_ _ S5_ _ S6_ _ S7_ _
2.                                
3.                                
négy. ÜRES ! " # $ % & ' ( ) * + , - . /
5. 0 egy 2 3 négy 5 6 7 nyolc 9 : ; < = > ?
6.                                
7.                                
nyolc.                                
9.                                
A. @ A B C D E F G H én J K L M N O
b. P K R S T U V W x Y Z [ \ ]
C.                                
D.                                
E.   a b c d e f g h én j k l m n o
F. p q r s t u v w x y z       KILÉPÉS DEL

A 36 bites minimális címezhető memóriaegységgel rendelkező számítógépeken először 6 bites karaktereket használtak (1 szó = 6 karakter). Az ASCII-re való áttérés után az ilyen számítógépek vagy 5 hét bites karaktert kezdtek el elhelyezni egy szóban (1 bit felesleges maradt), vagy 4 kilenc bites karaktert.

Az ASCII-kódokat a programozás során a billentyűleütések közbenső platformok közötti kódjaként használják (szemben az IBM PC - szkennelési kódokkal és más belső kódokkal). A QWERTY billentyűzetkiosztásnál a kódtábla úgy néz ki, mint a következő táblázatban [5] .

Lásd még

Jegyzetek

  1. ASCII  . _ a Cambridge-i angol szótár . dictionary.cambridge.org. Letöltve: 2018. április 9. Az eredetiből archiválva : 2017. szeptember 27..
  2. GOST 27463-87 (ST SEV 356-86) Információfeldolgozó rendszerek. 7 bites kódolt karakterkészletek (N 1 módosítással), GOST, 1987. október 29., 27463-87 . docs.cntd.ru. Letöltve: 2018. április 9. Az eredetiből archiválva : 2018. április 23..
  3. ↑ Kódolt karakterkészletek , előzmények és fejlődés  . - 1. - Addison-Wesley Publishing Company, Inc. , 1980. - 6., 66., 211., 215., 217., 220., 223., 228., 236-238., 243-245., 247-253., 423., 425-428., 435-439. — ISBN 978-0-201-14460-4 .
  4. Amdahl GM, Blaauw GA, Brooks FP, Jr. "Az IBM rendszer/360 architektúrája". 1964
  5. Billentyűk Enum . Microsoft.com . Letöltve: 2022. június 11. Az eredetiből archiválva : 2022. június 11.

Linkek