ASCII - Ameerika informatsioonivahetuse standardkood: määratlus ja ülevaade
ASCII (inglise keeles hääldatakse vahel "az-ee", "ass-key" või lihtsalt inglise /ˈæski/) on arvutites kasutatav tähestiku ja sümbolite kodeerimise süsteem. ASCII on lühend Ameerika teabevahetuse standardkoodist (American Standard Code for Information Interchange) ja see määratleb, kuidas esitada teksti arvuti- ja elektroonikaseadmetes, kasutades eelkõige inglise tähestikku, numbreid ja muid levinud sümboleid. Selle eesmärk oli pakkuda ühtset binaarkoodi, mida saaksid kasutada erinevad süsteemid ja seadmed.
Mis on ASCII ja milleks seda kasutatakse?
ASCII on tabel, mis seob iga märgi kindla numbrilise väärtusega. Seda kasutatakse teksti salvestamisel ja edastamisel arvutite ja teiste seadmete vahel ning programmeerimises, tekstifailides ja suhtlusprotokollides. Kui keegi ütleb, et fail on ASCII-formaadis, tähendatakse sellega tavaliselt, et fail sisaldab tavalist teksti ilma erilise binaarse vorminguta.
Ajalugu lühidalt
ASCII töötati välja 1960. aastatel ning see põhineb varasematel telegraafisüsteemides ja telefonivõrkudes kasutatud koodidel. Algne eesmärk oli standardiseerida, kuidas tekst edastatakse ja töödeldakse erinevates seadmetes ja võrkudes.
Märgistiku struktuur ja näited
ASCII määratleb kokku 128 märki, indekseerituna vahemikus 0–127. Neist:
- 0–31 ja 127 on juhtmärgid (control characters), mida ei trükita ekraanile, vaid kasutatakse teksti ja seadmete juhtimiseks (näiteks uue rea algus või tab).
- 32–126 on trükitavad märgid: tühik, numbrid 0–9, väike- ja suurtähed (a–z, A–Z) ja sümbolid nagu !, ?, & jms.
Näide: suur täht A on ASCII-koodiga 65 (tavaliselt 0x41 heksades), binaarselt 1000001 kui vaadata 7 bitti. Kui ASCII-sümbol salvestatakse 8-bitisena (tavaline 8-bidine bait), siis sama väärtust võib näha kirjutatuna 01000001.
Juhtmärgid (control characters)
ASCII hõlmab mitmeid juhtmärke, millel oli algselt konkreetne riistvara- või sidefunktsioon. Tuntumad näited:
- NUL (0) — nullmärk
- BEL (7) — helisignaal (bell)
- BS (8) — backspace
- TAB (9) — horisontaalne tab
- LF (10) — line feed (uue rea alustamine Unix- ja Linux-tüüpi süsteemides)
- CR (13) — carriage return (kasutatakse koos LF-iga Windowsis; endise Mac OS Classic puhul eraldi)
- DEL (127) — kustutuse märk
Tänapäeval ei kasutata enamikku juhtmärke nende algsel riistvaralisel otstarbel, kuid mõned (näiteks LF ja CR) on jäänud olulisteks teksti- ja liideseformaatide puhul.
7-bitine vs 8-bitine esitlus ja pariteedibitt
Oluline täpsustus: ASCII on algselt 7-bitine standard — see tähendab, et selles on defineeritud 128 väärtust (0–127). Kuid varajastel andmeühendustel ja serial-liinidel oli sageli vaja lisada veel üks bitt veakontrolli (pariteedibitt) või selleks, et mahutada laiendatud tähestikke. Seetõttu salvestati ja edastati ASCII-märke tihti 8-bitisena (bait), kusjuures ühe bitti kasutati pariteedi või muude laienduste jaoks. See on põhjus, miks mõnikord räägitakse ASCII-st 8-bitisena, kuid formaalselt on ASCII 7-bitine kood.
ASCII-failid ja "tavaline tekst"
Kui öeldakse, et fail on ASCII-formaadis, tähendab see tavaliselt, et fail koosneb loetavast tekstist, mis kasutab ASCII-märke. Selliseid faile saab avada peaaegu igas tekstiredaktoris ilma spetsiaalse dekodeerimiseta. ASCII-faile kasutatakse laialdaselt logifailide, lähtekoodide, konfiguratsioonifailide ja paljude protokollide puhul.
Piirangud ja pärand
ASCII piirangud on selged: see toetab ainult inglise keele põhitähti ja vähest hulka märke, mistõttu ei sobi paljude keelte, erimärkide ja aktsentide jaoks. Selle piirangu tõttu tekkisid 8-bitised laiendatud kodeeringud (nt ISO 8859-seeriad, Windows-1252) ning lõpuks Unicode, mis suudab esitada miljoneid märke ja asendas enamiku varasemaid kodeeringuid tänapäeva tarkvaras.
Vaatamata piirangutele on ASCII mõjutanud tugevalt kaasaegset arvutiteadust ja Interneti protokolle — paljud tekstipõhised protokollid, programmeerimiskeeled ja failiformaadid tuginevad siiani ASCII-sümbolite alamhulgale. ASCII-järgne areng ja ühtsus võimaldasid lihtsa, ühilduva tekstitöötluse laialdase leviku.
Kokkuvõte
ASCII on lihtne ja ajalooliselt tähtis märgitabel, mis määratleb 128 märki — trükitavad sümbolid ja juhtmärgid — ning oli aluseks paljudele hilisematele kodeeringutele. Kuigi tänapäeva rahvusvahelised standardid nagu Unicode on seda osaliselt asendanud, on ASCII endiselt aluseks paljudele süsteemidele ja failitüüpidele ning püsib tähtsana infosüsteemide ühilduvuse seisukohalt.


95 graafilist ASCII-märki numbritega 32-126 (kümnendmärgina).
Laiendatud ASCII
ASCII-s ei ole diakriitilisi tähiseid (tähe juurde lisatavad märgid, nagu saksa keeles vokaalide kohal olevad punktid (umlaudid) või hispaania keeles kasutatav tilde (~) "n" kohal "ñ" jaoks). See oli mõeldud ainult inglise keele jaoks ja ei toimi hästi enamiku teiste keelte puhul. Ka mõned teistest keeltest laenatud ingliskeelsed sõnad kasutavad neid märke, näiteks resumé (vt lisa: Inglise sõnad diakriitikaga).
See viis selleni, et mõnedes süsteemides kasutati 7 biti asemel 8 bitti (täisbaid). 8 bitti kasutavate süsteemide õige nimetus on laiendatud ASCII. Kaheksa bitti võimaldab 256 märki. Esimesed 128 märki peavad olema samad, mis ASCII puhul, ja ülejäänud kasutatakse tavaliselt tähestiku tähtede jaoks koos aktsentidega, näiteks É, È, Î ja Ü. See lahendab probleemi keelte puhul, mis põhinevad ladina tähestikul, kuigi kõik laiendatud ASCII süsteemid ei ole samad. Teised tähestikud, nagu kreeka tähestik, kirillitsa tähestik, vajavad teistsugust tähemärkide kogumit. Ja mõned süsteemid, näiteks need, mis kasutavad hiina tähemärke, ei tööta ikka veel, sest neis kasutatakse tuhandeid tähemärke. Seega loodi unicode, et oleks üks ühine süsteem kõigi keelte jaoks.
Standardset ASCII-t kasutatakse endiselt laialdaselt, eriti arvutitarkvaras ja HTML-failides. Kuni 2010. aastani oli see URL-ide standard. Sageli võtavad veebilehed, millel on teksti sisestamiseks mõeldud väljad, vastu ainult ASCII-teksti. Kõik erimärgistused paksus kirjas või keskendatud tekstis jne kuvatakse valesti.
Küsimused ja vastused
K: Mis on askeetlus?
V: ASCII on arvutite tähemärkide tabel, mis kasutab binaarkoodi, et käsitleda teksti, kasutades inglise tähestikku, numbreid ja muid levinud sümboleid.
K: Mida tähendab ASCII?
V: ASCII on Ameerika standardkood infovahetuseks (American Standard Code for Information Interchange).
K: Millal töötati välja ASCII?
V: ASCII töötati välja 1960. aastatel.
K: Mitu märki on koodis?
V: Kood sisaldab 128 tähemärgi määratlusi, millele on määratud numbrid 0-st 127-ni.
K: Mitu bitti kulub ühe ASCII-märgi kujutamiseks?
V: Ühe ASCII-märgi kujutamiseks on vaja 7 binaarkoodi (bitti).
K: Kas ASCII arvutifailis kasutatakse ühte baiti iga tähemärgi kohta?
V: Jah, ASCII arvutifail kasutab ühte baiti iga tähemärgi kohta, kusjuures iga baidi kohta on 8 bitti.
K: Kas standardset ASCII-d kasutatakse tänapäevalgi? V: Jah, standard-ASCI on tänapäeval ikka veel üldkasutatav, eriti arvutitarkvaras ja HTML-failides.