ASCII

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 19. března 2022; kontroly vyžadují 19 úprav .

ASCII ( anglicky  American s tandard code for in nformation interchange , [ ˈ æ s . k i ] [1] ) je název tabulky (kódování, sady), ve které jsou číselné kódy spojeny s některými běžnými tištěnými a ne - tisknutelné znaky. Stůl byl vyvinut a standardizován v USA v roce 1963.


ASCII tabulka definuje kódy pro znaky:

Historie

Zpočátku (1963) byl ASCII vyvinut pro kódování znaků, jejichž kódy se vešly do 7 bitů (128 znaků; 2 7 \u003d 128), a nejvýznamnější bit č. 7 (číslování od nuly) byl použit pro kontrolu chyb, ke kterým došlo během přenosu dat. . V první verzi byla kódována pouze velká písmena. Pásma (skupiny po 16 znacích) č. 6 a 7 (číslování začíná od 0) byla vyhrazena pro další rozšíření. Diskutovalo se, zda tuto oblast použít pro malá písmena nebo řídicí znaky.

V roce 1965 byla připravena nová edice ASCII, která nebyla nikdy vydána. Kromě terminálů IBM 2260/2848 nebyl nikde použit . Následující specifikace byla zveřejněna v roce 1967 a všechny znaky v ní obsažené od té doby nezměnily svou pozici v tabulce.

Postupem času bylo kódování rozšířeno na 256 znaků (2 8 = 256); kódy prvních 128 znaků se nezměnily. ASCII začalo být vnímáno jako polovina 8bitového kódování a „rozšířené ASCII“ se nazývalo ASCII se zapojeným 8. bitem (například KOI-8 ).

Překryvný symbol

Pomocí znaku Backspace (BS) (backspace ) na tiskárně můžete tisknout jeden znak na druhý. V ASCII můžete písmenům přidávat diakritiku stejným způsobem , například:

Poznámka . Ve starších fontech byl apostrof "'" nakreslen šikmo doleva (srovnej: " ` " a " ´ ") a vlnovka "~" byla posunuta nahoru (srov.: " ~ " a " ˜ "), takže právě vhodné pro roli symbolů akutní "´" a "tilda na vrcholu".

Pokud vytisknete stejný znak dvakrát na jednu pozici, získáte tučný znak; pokud vytisknete znak na jednu pozici a poté  podtržítko "_" , získáte podtržený znak:

Tato technika se dodnes používá například v systému nápovědy man.

Národní varianty ASCII

Norma ISO 646 (ECMA-6) poskytuje možnost umístit národní znaky do ASCII. K tomu se navrhuje nahradit znaky " @ ", " [ ", " \ ", " ] ", " ^ ", " ` ", " { ", " | "", " } ", " ~ ". Místo znaku libry "#" lze také umístit symbol libry "£" a místo symbolu dolaru "$"  - znak měny "¤" . Varianta ASCII, která neobsahuje národní znaky, se nazývá „US-ASCII“ nebo „mezinárodní referenční verze“.

U některých jazyků (s nelatinkovým písmem : ruština , řečtina , arabština , hebrejština atd.) došlo k radikálnějším úpravám ASCII:

Následně se ukázalo jako výhodnější použít 8bitové kódování ( code pages ), ve kterém je spodní polovina kódové tabulky (0-127) obsazena znaky US-ASCII a horní polovina (128-255 ) je obsazeno dalšími znaky, včetně sady národních znaků. Horní polovina tabulky ASCII (před rozšířeným přijetím Unicode ) byla tedy silně používána k reprezentaci lokalizovaných znaků, písmen místního jazyka. Neexistence jednotného standardu pro umístění znaků azbuky do ASCII tabulky způsobila mnoho problémů s kódováním ( KOI-8 , Windows-1251 atd.). Mluvčí jiných jazyků s jiným než latinským písmem také trpěli kvůli přítomnosti několika různých kódování.

Prvních 128 znaků standardu Unicode je stejných jako odpovídající znaky US-ASCII.

ASCII tabulka
  .0 .jeden .2 .3 .čtyři .5 .6 .7 .osm .9 .A .B .C .D .E .F
0. NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF ČR TAK SI
jeden. DLE DC1 DC2 DC3 DC4 NAK SYN ETB UMĚT EM SUB ESC FS GS RS NÁS
2.     ! " # $ % & ' ( ) * + , - . /
3. 0 jeden 2 3 čtyři 5 6 7 osm 9 : ; < = > ?
čtyři. @ A B C D E F G H J K L M N Ó
5. P Q R S T U PROTI W X Y Z [ \ ] ^ _
6. ` A b C d E F G h i j k l m n Ó
7. p q r s t u proti w X y z { | } ~ DEL

V první verzi standardu ASCII (1963) - na pozicích 0x5e (94) a 0x5f (95) byly znaky "šipka nahoru" a "šipka vlevo". Standard ECMA-6 (1965) je nahradil stříškou a podtržítkem „_“ .

V Sovětském svazu byla norma schválena ve formě tabulky mezinárodní referenční verze kódu KOI-7 H0 GOST 27463-87 (ST SEV 356-86) „Systémy zpracování informací. 7bitové kódované znakové sady“. [2]

Řídicí znaky

ASCII tabulka byla vytvořena pro výměnu informací přes dálnopis . Sada obsahovala netisknutelné znaky používané jako příkazy pro ovládání dálnopisu. Podobné příkazy byly použity v jiných předpočítačových nástrojích pro zasílání zpráv ( Morseova abeceda , semaforová abeceda ), s ohledem na specifika zařízení. Většina řídicích znaků ASCII brzy ztratila svůj účel a v moderních počítačových systémech se nepoužívají.

Poznámka: dále v seznamu - kódy znaků jsou psány v hexadecimální číselné soustavě za názvy znaků.

Zprávy přenášené komunikačním kanálem byly rozděleny do dvou částí:

"Hlavička" obsahovala: adresy odesílatele a příjemce, kontrolní součet atd .; může být umístěn před "text" nebo za. Pojem „text“ byl součástí zprávy určené k tisku.

Symbol HEX kód Dešifrování Překlad Popis
SOH 01 s počátečním nadpisem _ _ _ začátek "hlavičky" Symbol start-of-header (SOH) označuje nedatové oddělení dat: část toku obsahující adresy a další režii.
STX 02 s počátek t e x t začátek "textu" Zapněte tiskárnu (TTY). Text pro tisk byl umístěn mezi symboly " STX" a " ETX".
ETX 03 konec t e x t _ konec "textu" Vypněte tiskárnu (TTY). V dnešní době se kód " 03" používá k odeslání signálu " SIGINT " procesu a lze jej zadat stisknutím kombinace kláves + . Po přijetí takového signálu musí proces ukončit .  CtrlC
EOT 04 konec přenosu _ _ _ _ konec přenosu Symbol je používán emulátory terminálu ve smyslu " End of File " ( EOF: anglicky  e nd of file ) a lze jej odeslat stisknutím kombinace kláves Ctrl+ D. Po přijetí takového signálu emulátor terminálu určí proces, který aktuálně pracuje s terminálem, a nastaví příznak konce souboru na standardním vstupním toku tohoto procesu ( stdin : eng.  st andar d in put stream ) . V důsledku toho proces přestane číst stdin a začne zpracovávat načtená data.
ENQ 05 zeptat se "Prosím potvrďte!"
ACK 06 ack now římsa "Potvrzuji!" Symbol „ NAK“ znamená opak: „Nepotvrzuji!“.
BEL 07 bel l pípnutí : zvonek Znak je často reprezentován jako "\a" a používá se k pípnutí. V moderním osobním počítači bude zvuk reprodukován vestavěným reproduktorem . Tento zvuk mohou přehrát například následující příkazy:
  • echo -e "\a"nebo echo -e "\007"- pokud je tento příkaz zadán prostřednictvím programu " bash" ;
  • echo ^G- pokud bude tento příkaz zadán prostřednictvím programu " cmd.exe" (pro zadání symbolu " ^G" stiskněte Ctrl+ G);
  • printf( "\a" );- pokud bude tento příkaz proveden jako zdrojový kód programu v jazyce "C" .
BS 08 zpět tempo _ _ vrátit jeden znak Klávesa slouží k vymazání předchozího znaku. ← Backspace
TAB 09 tabulka _ horizontální záložka Označeno jako " \t ". Někdy se nazývá " HT" ( z angličtiny  horizontální t abulace ) .
LF 0A linka napájená _ _ překlad řádků Příkaz pro snížení vozíku tiskárny o řádek dolů. Označení konce řádku textového souboru se v různých skupinách operačních systémů liší:

V mnoha programovacích jazycích je symbol reprezentován jako " \n ". Stisknutí klávesy při výstupu textu přeloží řádek. ↵ Enter

VT 0B svislá karta _ _ vertikální záložka
FF 0C formulář napájen _ _ spuštění stránky, nová stránka Příkaz tiskárny : Pokračujte v tisku od začátku dalšího listu.
ČR 0D c vrácení zásilky _ návrat vozíku Příkaz pro tiskárnu je pokračovat v tisku od začátku aktuálního řádku ( ne od nového řádku). V mnoha programovacích jazycích je symbol " CR" označován jako " \r ". V operačním systému Mac znak " CR" (v minulosti) označoval konec řádku v textovém souboru. Z klávesnice lze zadat symbol „ CR“ stisknutím kombinace kláves: Ctrl+ M.
TAK 0E s posun ven _ "Přepnout na jinou pásku (kódování)" Druhá stuha byla obvykle obarvena na červeno. V budoucnu byl symbol používán pro přechod na národní kódování.
SI 0F s posun i n "Přepnout na původní pásku (kódování)" Příkaz k provedení akce, opak akce " SO".
DLE deset d ata l ink e scape "Stínění datového kanálu" Jakékoli znaky následující za " DLE" by měly být považovány za data , nikoli za řídicí znaky.
DC1 jedenáct d ovládání zařízení 1 _ První ovládací znak zařízení Příkaz pro povolení čtečky děrné pásky .
DC2 12 ovládání zařízení 2 _ _ Druhý ovládací znak zařízení Příkaz k zapnutí děrovačky .
DC3 13 ovládání zařízení 3 _ _ Třetí znak pro ovládání zařízení Příkaz k vypnutí čtečky děrné pásky.
DC4 čtrnáct ovládání zařízení 4 _ _ Čtvrtý symbol ovládání zařízení Příkaz k vypnutí děrovačky.
NAK patnáct n negativní a c k poznání "Neschvaluji!" Opačný znak " ACK".
SYN 16 synchronizace _ Tento znak se přenášel, když (pro synchronizaci) bylo potřeba něco vysílat.
ETB 17 konec t ext b zámku _ konec textového bloku Někdy byl text (z technických důvodů) rozdělen do bloků.
UMĚT osmnáct může cel "Zrušení" Zrušení toho, co bylo dříve převedeno.
EM 19 e n d m edia "Konec nositele" Došla děrná páska, papír atd.
SUB 1A nahradit _ "Náhradní" Symbol je umístěn:
  • Místo symbolu, jehož význam byl ztracen (nebo poškozen) během přenosu;
  • Před znakem, jehož interpretace vyžaduje přepnutí na další znakovou sadu;
  • Než bude znak vytištěn v jiné barvě...

V současné době se znak vkládá stisknutím kombinace kláves Ctrl+ Za používá se k označení konce souboru v operačních systémech "DOS" a "Windows" .

ESC 1B esc opice Znak, že znak následující za „ ESC“ má nějaký jiný (ne ASCII) význam. Za znakem " " obvykle ESCnásledují sekvence escape ; v operačním systému DOS jsou implementovány ovladačem ANSI.SYS .
DEL 7F del ete vymazat poslední znak Symbol " DEL" (sestávající ze všech jednotek v binárním kódu) by mohl "zatlouct" jakýkoli znak. Zařízení a programy ignorovány „ DEL“ stejným způsobem jako „ NUL“.

Kód tohoto znaku pochází z prvních textových procesorů s pamětí děrné pásky : v nich došlo k vymazání znaku „zatloukáním“ jeho kódu do děr (označujících logické jednotky ).

Bylo podporováno rozdělení dat do 4 úrovní:

Symbol Kód Dešifrování Překlad Popis
FS 1C oddělovač souborů _ _ oddělovač souborů zpráva se může skládat ze souborů
GS 1D g - oddělovač roup s oddělovač skupin soubory lze seskupit
RS 1E r oddělovač záznamů _ oddělovač záznamů skupiny se mohou skládat z položek
NÁS 1F u nit s oddělovač oddělovač jednotek záznamy se mohou skládat z jednotek

Strukturální vlastnosti tabulky

Počítačová reprezentace ASCII

Na drtivé většině moderních počítačů je minimální adresovatelná jednotka paměti bajt (velikost 8 bitů ); takže používá 8bitové spíše než 7bitové znaky. Typicky je znak ASCII rozšířen na 8 bitů jednoduchým přidáním jednoho bitu nuly jako nejvýznamnějšího bitu.

Na počítačích IBM / 360 však (v případě použití ASCII) byla použita jiná metoda: 6. bit (pokud je jako první považován nejméně významný bit) se přesune na 7. a bývalý 7. bit se "rozvětví" a zkopírován do 8. bitu a do 6. bitu. Výsledkem je tabulka [4] :

  .0 .jeden .2 .3 .čtyři .5 .6 .7 .osm .9 .A .B .C .D .E .F
0. NUL SOM EOA EOM EQT WRU EN ZVONEK BKSP HT LF VT FF ČR TAK SI
jeden. DC 0 DC 1 DC 2 DC 3 DC 4 CHYBOVAT SYNCHRONIZOVAT LEM S0 _ S1 _ S2 _ S3 _ S4 _ S5 _ S6 _ S7 _
2.                                
3.                                
čtyři. PRÁZDNÝ ! " # $ % & ' ( ) * + , - . /
5. 0 jeden 2 3 čtyři 5 6 7 osm 9 : ; < = > ?
6.                                
7.                                
osm.                                
9.                                
A. @ A B C D E F G H J K L M N Ó
b. P Q R S T U PROTI W X Y Z [ \ ]
C.                                
D.                                
E.   A b C d E F G h i j k l m n Ó
F. p q r s t u proti w X y z       ESC DEL

Na počítačích s minimální adresovatelnou jednotkou paměti 36 bitů se nejprve používaly 6bitové znaky (1 slovo = 6 znaků). Po přechodu na ASCII začaly takové počítače umisťovat do jednoho slova buď 5 sedmibitových znaků (1 bit zůstal nadbytečný), nebo 4 devítibitové znaky.

Kódy ASCII se používají při programování jako meziplatformní kódy pro stisky kláves (na rozdíl od skenovacích kódů IBM PC a jiných interních kódů). Pro rozložení klávesnice QWERTY vypadá tabulka kódů jako v následující tabulce [5] .

Viz také

Poznámky

  1. ASCII  . _ Cambridge English Dictionary . slovník.cambridge.org. Získáno 9. dubna 2018. Archivováno z originálu dne 27. září 2017.
  2. GOST 27463-87 (ST SEV 356-86) Systémy zpracování informací. 7bitové kódované znakové sady (s dodatkem N 1), GOST ze dne 29. října 1987 č. 27463-87 . docs.cntd.ru. Staženo 9. dubna 2018. Archivováno z originálu 23. dubna 2018.
  3. ↑ Kódované znakové sady , historie a vývoj  . - 1. - Addison-Wesley Publishing Company, Inc. , 1980. - S. 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. „Architektura systému IBM/360“ . 1964
  5. Výčet kláves . Microsoft.com . Získáno 11. června 2022. Archivováno z originálu dne 11. června 2022.

Odkazy