American Standard Code for Information Interchange
American Standard Code for Information Interchange ( ASCII , vaihtoehtoisesti US-ASCII , usein [ æski ], lausutaan Saksan "American Standard Code for Information Exchange" ) on 7- vähän - merkki koodaus ; se vastaa Yhdysvaltain ISO 646 -versiota ja toimii perustana myöhemmille, useampiin bitteihin perustuville merkkijoukkojen koodauksille .
American Standards Association (ASA) hyväksyi ASCII-koodin ensimmäisen kerran 17. kesäkuuta 1963 ASA X3.4-1963 -standardiksi, ja sitä päivitettiin merkittävästi vuosina 1967/1968 ja viimeksi päivitettiin vuonna 1986 ( ANSI X3.4-1986) sen seuraajalaitokset ja sitä käytetään edelleen. Merkkikoodaus määrittelee 128 merkkiä, jotka koostuvat 33 tulostamattomasta ja seuraavasta 95 tulostettavasta merkistä, alkaen välilyönnistä :
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
Tulostettavia merkkejä ovat latinalaiset aakkoset isoilla ja pienillä kirjaimilla, kymmenen arabialaista numeroa sekä jotkut välimerkit ( välimerkit , sanamerkit ) ja muut erikoismerkit . Joukko merkkiä vastaa suurelta osin kuin tavallisen näppäimistön tai kirjoituskoneella varten Englanti kieli . Tietokoneissa ja muissa elektronisissa laitteissa, jotka näyttävät tekstiä, tämä tallennetaan yleensä ASCII -standardin tai taaksepäin yhteensopivan ( ISO 8859 , Unicode ) mukaisesti.
Tulostamattomat ohjausmerkit sisältävät tulostusmerkkejä, kuten rivinsiirto- tai sarkainmerkkejä , protokollamerkkejä , kuten lähetyksen päättymisen tai vahvistuksen, ja erottimet, kuten datatietueen erottimet.
Koodaus
ASCII | Joulukuu | Hex | Binääri |
---|---|---|---|
A |
65 | 41 | (0) 100 0001 |
B |
66 | 42 | (0) 100 0010 |
C |
67 | 43 | (0) 100 0011 |
... | ... | ... | ... |
Z |
90 | 5A | (0) 101 1010 |
Jokaiselle merkille määritetään 7 -bittinen bittikuvio . Koska jokaisella bitillä voi olla kaksi arvoa, on 2 7 = 128 erilaista bittikuviota, jotka voidaan tulkita myös kokonaisluvuiksi 0–127 ( heksadesimaali 00h - 7Fh).
Kahdeksatta bittiä, jota ei käytetä ASCII: lle, voidaan käyttää tiedonsiirtolinjojen virheenkorjaustarkoituksiin ( pariteettibitti ) tai muihin ohjaustehtäviin. Nykyään sitä käytetään kuitenkin lähes aina ASCII: n laajentamiseen 8-bittiseksi koodiksi. Nämä laajennukset ovat suurelta osin yhteensopivia alkuperäisen ASCII: n kanssa , joten kaikki ASCII: ssä määritellyt merkit on myös koodattu eri laajennuksiin käyttäen samaa bittikuviota. Yksinkertaisimmat laajennukset ovat koodit, joissa on kielikohtaisia merkkejä, jotka eivät sisälly latinalaiseen peruskirjeeseen, katso alla .
sävellys
koodi | … 0 | … 1 | … 2 | … 3 | … 4 | … 5 | … 6 | … 7 | … 8 | … 9 | … A | … B | ... C | … D | … E. | ... F |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0… | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | HT | LF | VT | FF | CR | NIIN | SI |
1… | DLE | DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | VOI | EM | SUB | POISTU | FS | GS | RS | MEILLE |
2… | SP | ! | " | # | $ | % | & | '' | ( | ) | * | + | , | - | . | / |
3… | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4… | @ | A. | B. | C. | D. | E. | F. | G | H | I. | J | K | L. | M. | N | O |
5… | P. | Q | R. | S. | T | U | V | W. | X | Y | Z | [ | \ | ] | ^ | _ |
6… | ` | a | b | c | d | e | f | G | H | i | j | k | l | m | n | O |
7 ... | s | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
Ensimmäiset 32 ASCII -merkkikoodia (00 hex - 1F hex ) ovat varattuja ohjausmerkkejä (ohjausmerkki) varten ; katso selitykset oikealla (tai edellä) olevassa taulukossa olevista lyhenteistä. Nämä merkit eivät edusta merkkejä, vaan niitä käytetään (tai niitä käytettiin) ASCII: tä käyttävien laitteiden (kuten tulostimien) ohjaamiseen. Ohjaus merkit ovat, esimerkiksi rivinvaihto varten rivinvaihto tai Bell (kello); sen määritelmä perustuu historiallisesti.
Koodi 20 heksadesimaali (SP) on välilyönti (engl. Välilyönti tai tyhjä ), jota käytetään tekstissä tyhjänä ja erillisenä sanana näppäimistöllä ja välilyönti .
Koodit 21 hex - 7E hex tarkoittavat tulostettavia merkkejä, jotka sisältävät kirjaimia, numeroita ja välimerkkejä ( välimerkkejä , sanamerkkejä ). Kirjaimet ovat vain latinalaisen aakkoston pieniä ja isoja kirjaimia . Muilla kuin englanninkielisillä kielillä käytetyt kirjainmuunnokset- esimerkiksi saksalaiset umlautit- eivät sisälly ASCII-merkistöön. Samoin typografisesti oikeat viivat ja lainausmerkit puuttuvat , typografia rajoittuu kirjoituskoneeseen . Tarkoitus oli tiedonvaihto , ei tulostus .
Koodi 7F hex (kaikki seitsemän bittien arvoksi on asetettu yksi) on erityinen merkki, joka on myös tunnettu deleetio merkki ( DEL ) . Aiemmin tätä koodia käytettiin kuin kontrollimerkkiä, jotta voitiin poistaa jo rei'itetty merkki nauhalta tai rei'itetyiltä korteilta asettamalla kaikki bitit, eli lävistämällä kaikki seitsemän merkintää. Tämä oli ainoa tapa poistaa, koska reikiä, kun ne ovat olemassa, ei voida poistaa. Alueita, joissa ei ole reikiä (eli koodi 00 hex ), löydettiin pääasiassa rei'itetyn nauhan ( NUL ) alussa ja lopussa .
Tästä syystä todellisessa ASCII -koodissa oli vain 126 merkkiä, koska bittimallit 0 (0000000) ja 127 (1111111) eivät vastanneet mitään merkkikoodeja. Koodi 0 tulkittiin myöhemmin C -ohjelmointikielellä "merkkijonon loppuun"; Merkille 127 on määritetty erilaisia graafisia symboleja.
tarina
Etätulostin
Varhainen merkkikoodauksen muoto oli Morse -koodi . Se poistettiin lennätinverkoista ottamalla käyttöön etätulostimet ja korvattiin Baudot- ja Murray -koodilla . Silloin oli vain pieni askel 5-bittisestä Murray-koodista 7-bittiseen ASCII-järjestelmään-ASCII: ta käytettiin ensin myös tietyissä amerikkalaisissa etätulostinmalleissa , kuten Teletype ASR33 .
Ensimmäinen versio ilman pieniä kirjaimia ja pieniä poikkeamia nykyisestä ASCII -asetuksesta ohjausobjektin ja erikoismerkkien osalta luotiin vuonna 1963.
Toinen ASCII -standardin muoto seurasi vuonna 1965. Vaikka standardi hyväksyttiin, sitä ei koskaan julkaistu eikä siksi sovellettu. Syynä tähän oli se, että ASA: lle ilmoitettiin, että ISO (Kansainvälinen standardointijärjestö) standardoi merkistön, joka oli samanlainen mutta hieman ristiriidassa tämän standardin kanssa.
Vuonna 1968 vahvistettiin ASCII -standardin edelleen voimassa oleva versio.
Joulukuu | Hex | ASCII 1963 (vanhentunut) |
ASCII 1965 (hylätty) |
ASCII 1968 (nykyinen) |
---|---|---|---|---|
0-63 | 00-3F | katso normaali koostumus | ||
64 | 40 | @ |
` |
@
|
65-91 | 41-5B | katso normaali koostumus | ||
92 | 5C | \ |
~ |
\
|
93 | 5D | katso normaali koostumus | ||
94 | 5E |
↑
|
^
|
|
95 | 5F |
←
|
_
|
|
96 | 60 | tyhjillään | @ |
`
|
97-122 | 61-7A | tyhjillään |
a - z
|
|
123 | 7B | tyhjillään |
{
|
|
124 | 7C | tyhjillään | ¬ |
|
|
125 | 7D | tyhjillään |
}
|
|
126 | 7E | ESC |
| |
~
|
127 | 7F | katso normaali koostumus |
tietokone
Tietokonekauden alussa ASCII kehittyi merkkien vakiokoodiksi. Esimerkiksi monia päätelaitteita ( VT100 ) ja tulostimia hallittiin vain ASCII: n avulla.
Latinalaisten merkkien koodaamiseen käytetään 8-bittistä EBCDIC- koodia , joka ei ole yhteensopiva ASCII: n kanssa , lähes yksinomaan keskusyksiköissä , jotka IBM kehitti rinnakkain ASCII: n kanssa System / 360: lle , joka oli tuolloin vakava kilpailija. Aakkosten käyttö on vaikeampaa EBCDIC: ssä, koska siellä se on jaettu kahteen erilliseen koodialueeseen. IBM itse käytti ASCII: tä sisäisiin asiakirjoihin. ASCII: tä tuki presidentti Lyndon B. Johnsonin 1968 järjestely käyttää sitä valtion virastoissa.
Käytä muille kielille
International Alphabet 5: llä (IA5) ASCII-pohjainen 7-bittinen koodaus standardoitiin ISO 646: ksi vuonna 1963. Viiteversio (ISO 646-IRV) vastaa ASCII: ta yhtä paikkaa lukuun ottamatta. Jotta kirjaimia ja erikoismerkkejä voitaisiin näyttää eri kielillä (esimerkiksi saksalaiset umlautit), 12 merkin paikkaa annettiin määritellä uudelleen ( #$@[\]^`{|}~
). Samanaikainen näyttö ei ole mahdollista. Ohjelmiston sopeuttamatta jättäminen näyttöön käytettyyn versioon johti usein tahattomasti hauskoihin tuloksiin, esim. B. Kun Apple II kytkettiin päälle, "APPLE ÜÄ" ilmestyi "APPLE] [": n sijaan.
Koska ohjelmoinnissa käytetään merkkejä, erityisesti z. Esimerkiksi eri hakasulkeet, ohjelmointikielet on päivitetty kansainvälistymistä varten käyttämällä korvaavia yhdistelmiä ( digraphs ). Koodauksessa käytettiin vain merkkejä ISO 646: n muuttumattomasta osasta. Yhdistelmät ovat kielikohtaisia. Esimerkiksi Pascal (*
ja *)
kiharat hakasulkeet vastaavat ( {}
), kun taas C <%
ja %>
tarjoavat sen.
Laajennukset
Jäljellä olevien 128 tavun käyttö tavussa
Voittaakseen ASCII: n kansallisten 7-bittisten varianttien yhteensopimattomuuden eri valmistajat kehittivät aluksi omat ASCII-yhteensopivat 8-bittiset koodinsa (eli ne, jotka vastaavat ASCII: ta 128 ensimmäisessä paikassa). Koodi, jota kutsutaan koodin sivua 437 , oli yleisin pitkään. Se tuli on IBM PC alle Englanti MS-DOS , ja on yhä käytössä DOS ikkunasta Englanti Windows . Saksalaisissa asennuksissa Länsi-Euroopan koodisivu 850 on ollut standardi MS-DOS 3.3: n jälkeen .
Kahdeksan bittiä käytettiin myös myöhemmissä standardeissa, kuten ISO 8859 . On olemassa useita vaihtoehtoja, esimerkiksi ISO 8859-1 Länsi-Euroopan kielille, joka otettiin käyttöön Saksassa nimellä DIN 66303 . Saksankieliset Windows -versiot (paitsi DOS-ikkunat) käyttävät Windows-1252- koodausta, joka perustuu ISO 8859-1 -standardiin- tästä syystä esimerkiksi saksalaiset umlautit näyttävät virheellisiltä, jos tekstitiedostoja luotiin DOS-käyttöjärjestelmässä ja niitä tarkasteltiin Windowsissa.
Yli 8 bittiä
Monet vanhemmat ohjelmat, jotka käyttivät kahdeksatta bittiä omiin tarkoituksiinsa, eivät voineet käsitellä sitä. Niitä on usein mukautettu uusiin vaatimuksiin ajan myötä.
Jopa 8-bittiset koodit, joissa yksi tavu edusti yhtä merkkiä, tarjosivat liian vähän tilaa kaikkien ihmisen kirjoituskulttuurin hahmojen ottamiseksi samanaikaisesti. Tämä edellytti useita erilaisia erikoislaajennuksia. Lisäksi on olemassa joitakin ASCII-yhteensopivia koodeja erityisesti Itä-Aasian alueella, jotka joko vaihtavat eri kooditaulukoiden välillä tai vaativat enemmän kuin yhden tavun kutakin ei-ASCII-merkkiä kohden. Mikään näistä 8-bittisistä laajennuksista ei kuitenkaan ole "ASCII", koska se kuvaa vain yhtenäistä 7-bittistä koodia.
Eri kielten vaatimusten täyttämiseksi kehitettiin Unicode (sen tunnusjoukko on sama kuin ISO 10646 ). Se käyttää jopa 32 bittiä merkkiä kohden ja voi siten erottaa yli neljä miljardia eri merkkiä, mutta se on rajoitettu noin miljoonaan sallittuun koodipisteeseen . Tämä tarkoittaa, että kaikki ihmisten aiemmin käyttämät merkit voidaan näyttää, jos ne on sisällytetty Unicode -standardiin. UTF-8 on 8-bittinen Unicode-koodaus, joka on taaksepäin yhteensopiva ASCII: n kanssa. Yksi merkki voi sisältää yhdestä neljään 8-bittistä sanaa . Seitsemän bitin variantteja ei enää tarvitse käyttää, mutta Unicode voidaan myös koodata seitsemään bittiin UTF-7: n avulla . UTF-8: sta tuli standardi monissa käyttöjärjestelmissä. Esimerkiksi Applen macOS ja jotkut Linux-jakelut käyttävät oletusarvoisesti UTF-8-tekniikkaa, ja yli 90% verkkosivustoista on luotu UTF-8: lla.
Muotoilumerkit verrattuna merkintäkieliin
ASCII sisältää vain muutamia merkkejä, joita yleensä käytetään tekstin muotoiluun tai jäsentämiseen; nämä tulivat esiin etätulostimien ohjauskomennoista . Näitä ovat erityisesti rivinsiirto, vaunun palautus, vaakasuuntainen sarkainmerkki , lomakesyöttö ja pystysuora sarkainmerkki. Tyypillisissä ASCII tekstitiedostoja , lisäksi tulostettavia merkkejä, on yleensä vain rivinvaihtoa tai rivinvaihto merkitä rivin loppuun; DOS- ja Windows-järjestelmissä molempia käytetään yleensä peräkkäin, vanhemmilla Apple- ja Commodore- tietokoneilla (ilman Amigaa ) vain vaunun palautus ja Unixin kaltaisilla ja Amiga-järjestelmillä vain rivinsiirto. Lisämerkkien käyttöä tekstin muotoilussa käsitellään eri tavalla. Merkintäkieliä , kuten HTML, käytetään nykyään yleisemmin tekstin muotoiluun .
Yhteensopivat merkkikoodaukset
Useimmat merkkikoodaukset on suunniteltu siten, että ne käyttävät samaa koodia kuin ASCII -merkkien välillä 0 ... 127 ja alueen yli 127 muille merkeille.
Kiinteän pituiset koodaukset (valinta)
Tässä on kiinteä määrä tavuja yhdelle merkille. Useimmissa koodauksissa tämä on yksi tavu merkkiä kohti - yhden tavun merkkijoukko tai lyhyesti SBCS. Itä-Aasian komentosarjoissa on kaksi tai useampia tavuja merkkiä kohden, mikä tarkoittaa, että nämä koodaukset eivät ole enää ASCII-yhteensopivia. Yhteensopivat SBCS -merkistöt vastaavat edellä käsiteltyjä ASCII -laajennuksia:
- ISO 8859, jossa on 15 eri merkkikoodausta, jotka kattavat kaikki eurooppalaiset kielet, turkki , arabia , heprea ja thai (katso taulukko oikealla)
- MacRoman , MacCyrillic ja muut omistetut merkkisarjat Apple Mac -tietokoneille ennen Mac OS X: ää
- DOS- koodisivut (esim. 437, 850) ja Windows-koodisivut (esim. Windows-1252 )
- KOI8-R venäjäksi ja KOI8-U ukrainaksi
- ARMSCII-8 ja ARMSCII-8a armenialaisille
- GEOSTD varten Georgian
- ISCII kaikille intialaisille kielille
- TSCII varten Tamil
|
|
|
Muuttuvan pituiset koodaukset
Jotta voidaan koodata enemmän merkkejä, merkit 0-127 on koodattu yhteen tavuun, muut merkit koodataan useilla tavuilla, joiden arvot ovat suurempia kuin 127:
- UTF-8 ja GB 18030 ja Unicode
- ISO 6937 eurooppalaisille kielille latinalaisin kirjaimin
- Big5 perinteiselle kiinalaiselle (Kiinan tasavalta (Taiwan) , ulkomaiset kiinalaiset )
- EUC (Extended UNIX Coding) useille Itä -Aasian kielille
- GB (Guojia Biaozhun) yksinkertaistetulle kiinalle ( Kiina )
ASCII -taulukko
Heksadesimaalikoodien lisäksi seuraavassa taulukossa näkyvät myös desimaali- ja oktaalikoodit .
|
|
|
|
Nimimerkit
Vuonna 1936 löydetty asteroidi (3568) ASCII nimettiin vuonna 1988 koodatun merkin mukaan.
Katso myös
menot
- American Standards Association: American Standard Code for Information Interchange. ASA X3.4-1963. American Standards Association, New York 1963 ( PDF 11 sivua ( muistio 26. toukokuuta 2016 Internet -arkistossa ))
- American Standards Association: American Standard Code for Information Interchange. ASA X3.4-1965. American Standards Association, New York 1965 (hyväksytty, mutta ei julkaistu)
- United States of America Standards Institute: USA Standard Code for Information Interchange. USAS X3.4-1967. Yhdysvaltain standardointilaitos, 1967.
- United States of America Standards Institute: USA Standard Code for Information Interchange. USAS X3.4-1968. Yhdysvaltain standardointilaitos, 1968.
- American National Standards Institute: American National Standard for Information Systems. ANSI X3.4-1977. 1977.
- American National Standards Institute: American National Standard for Information Systems. Koodatut merkistöt. 7-bittinen American National Standard Code for Information Interchange (7-bit ASCII). ANSI X3.4-1986. 1986.
- Muita tarkistuksia:
- ANSI X3.4-1986 (R1992)
- ANSI X3.4-1986 (R1997)
- ANSI INCITS 4-1986 (R2002)
- ANSI INCITS 4-1986 (R2007)
- ANSI INCITS 4-1986 (R2012)
kirjallisuus
- Jacques André: Caractères numériques: johdanto. Julkaisussa: Cahiers GUTenberg. Osa 26, toukokuu 1997, ISSN 1257-2217 , s.5-44 , (ranska).
- Yannis Haralambous: Fontit ja koodaukset. Unicodesta edistyneeseen typografiaan ja kaikkeen siltä väliltä. Käännetty P.Scott Horne. O'Reilly, Beijing et ai. 2007, ISBN 978-0-596-10242-5 (englanti).
- Peter Karow: Digitaaliset fontit. Esitys ja muodot. Toinen parannettu painos. Springer, Berliini et ai. 1992, ISBN 3-540-54917-X .
- Mai-Linh Thi Truong, Jürgen Siebert, Erik Spiekermann (toim.): FontBook. Digitaalinen kirjasinkokoelma (= FontBook 4). 4. tarkistettu ja laajennettu painos. FSI FontShop International, Berliini 2006, ISBN 3-930023-04-0 (englanti).
nettilinkit
- RFC 20 . - ASCII -muoto verkkovaihtoa varten . 16. lokakuuta 1969 (ANSI X 3.4-1968 - englanti).
- ITU T.50 (09/1992) Kansainvälinen aakkoset nro 5 (englanti)
- ISO / IEC 646: 1991 (englanti)
- ASA X3.4-1963 (englanti)
- Huomautuksia ohjausmerkeistä (englanti)
- ASCII -taulukko selityksineen (saksa)
- Muuntaminen desimaaleiksi, oktaaleiksi, heksadesimaali- ja binääriasetuksiksi (englanti)
Yksilöllisiä todisteita
- ↑ American Standards Association (toim.): American Standard Code for Information Interchange . 1963 ( skannaa ).
- ^ Fred W. Smith: New American Standard Code for Information Interchange . Julkaisussa: Western Union Technical Review . Huhtikuu 1964, s. 50-58 ( worldpowersystems.com ).
- ↑ United States of America Standards Institute (toim.): USA Standard Code for Information Interchange USAS X3.4-1967 . 1967.
- ↑ American National Standards Institute (toim.): American National Standard for Information Systems-Coded Character Sets-7-Bit American Standard Code for Information Interchange (7-Bit ASCII) ANSI X3.4-1986 . 1986 ( unicode.org [PDF; 1.7 MB ] ANSI INCITS 4-1986 [R2002]).
- ↑ b ASA / USASI / ANSI + ISO ( Memento tammikuusta 16 2010 in Internet Archive )
- ↑ perusteet tietotekniseen tietotekniseen, HAW Hampuri, kohta 3.5.1 ( Memento syyskuusta 28, 2007 Internet Archive ) (PDF)
- ↑ w3techs.com
- ↑ Minor Planet Circ. 12973 (PDF)