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:
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 ).
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.
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.
.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á | 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]
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:
|
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:
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 |
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á | 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] .
![]() | |
---|---|
V bibliografických katalozích |
Kódování znaků | |
---|---|
Historická kódování | doplňková komp. semafor (Makarov) morse Bodo MTK-2 komp. 6bitový SCP RADIX-50 EBCDIC KOI-7 ISO 646 |
moderní 8bitová reprezentace | symboly ASCII non-ASCII 8bitové kódové stránky cyrilice KOI-8 Základní kódování MacCyrillic ISO 8859 1 (lat.) 2 3 čtyři 5 (kir.) 6 7 osm 9 deset jedenáct 12 13 čtrnáct 15 (€) 16 Okna 1250 1251 (Kir.) 1252 1253 1254 1255 1256 1257 1258 WGL4 IBM a DOS 437 850 852 855 866 "alternativní" MIC |
Vícebajtové | tradiční DBCS GB2312 HTML unicode UTF-32 UTF-16 UTF-8 seznam postav cyrilice |
uživatelské rozhraní rozložení klávesnice národní prostředí překlad řádků písmo přepis vlastní písma utility iconv záznam |