ASCII

Amerikas informācijas apmaiņas standartkods jeb ASCII () ir rakstzīmju kopa un kodējums, kas balstīts uz modernajā angļu valodā un citās Rietumeiropas valodās lietoto latīņu alfabētu. Visplašāk to izmanto datoros un citās komunikāciju ierīcēs, lai attēlotu tekstu un kontrolētu ierīces, kas strādā ar tekstu.

ASCII nenodrošina latviešu alfabēta burtus ar diakritiskajām zīmēm (ā,č,ē,ģ,ī,ķ,ļ,ņ,š,ū,ž).

Kopsavilkums 

ASCII tika izveidots, balstoties uz telegrāfa kodu. Pirmoreiz tas komerciāli tika izmantots kā 7 bitu teletaipa kods, ko izplatīja "Bell data services".

ASCII standarta izstrāde tika sākta 1960. gada 6. oktobrī, kad notika Amerikas Standartu asociācijas (tagad – Amerikas Nacionālo standartu institūts) X3.2 apakškomitejas pirmā sanāksme. Pirmā standarta redakcija tika publicēta 1963. gadā. 1986. gadā standarts tika ievērojami pārskatīts un tas pēdējoreiz atjaunināts 1986. gadā. Salīdzinot ar telegrāfa kodu, piedāvātais "Bell" kods un ASCII tika sakārtoti, lai nodrošinātu ērtāku sarakstu atlasi, tostarp tie tika pielāgoti izmantošanai arī citās ierīcēs, ne tikai teletaipā.

ASCII formāta izmantošana datu apmaiņām tīklā tika aprakstīta 1969. gadā. Minētais dokuments oficiāli tika atzīts par interneta standartu 2015. gadā.

ASCII pamatā ir balstīts uz angļu valodas alfabētu. Tajā ietilpst 128 noteiktas rakstzīmes, kas tiek pārvērstas veselos 7 bitu skaitļos, kā tas redzams ASCII tabulā. 95 no šīm rakstzīmēm ir drukājamas, proti, tās ir cipari no 0 līdz 9, mazie burti no a līdz z, lielie burti no A līdz Z un pieturzīmju simboli. Kā arī, sākotnējā ASCII specifikācijā bija iekļautas 33 nedrukājami vadības kodi, kas tika radītas teletaipa vajadzībām, taču šobrīd lielākā daļa šo rakstzīmju ir novecojušas, lai gan dažas vēl aizvien tiek plaši izmantotas, piemēram, rakstatgrieze un rindpadeve.

Piemēram, mazais i, izmantojot ASCII, tiktu parādīts kā 1101001 (binārajos ciparos), kā 69 (heksadecimālciparos) un kā 105 (decimālajos ciparos).

Vēsture 
Amerikas informācijas apmaiņas standartkods (ASCII) tika izstrādāts vienas no Amerikas Standartu asociācijas komitejām, X3 komitejas, aizbildnībā. Sākotnēji par to bija atbildīga X3.2 (vēlāk – X3L3) apakškomiteja, un vēlāk – tās X3.2.4 darba grupa (tagad INCITS). Amerikas Standartu asociācija kļuva par Amerikas Savienoto valstu Standartu institūtu un galu galā par Amerikas Nacionālo standartu institūtu (ANSI).

Pēc citu speciālo rakstzīmju un vadības kodu pievienošanas ASCII tika publicēts kā ASA X3.4-1963, tobrīd tika atstāta vieta, lai vēlāk varētu pievienot vēl 28 rakstzīmes un vienu nedrukājamu rakstzīmi. 1963. gada maijā tika izteikts priekšlikums pievienot maziem burtiem attēlotas rakstzīmes 6. un 7. daļā, Starptautiskā standartizācijas organizācija (ISO) 1963. gada oktobrī nobalsoja par labu minēto rakstzīmju iekļaušanai standarta projektā. X3.2.4. darba grupa balsojot apstiprināja izmaiņas ASCII savā 1963. gada maija sanāksmē. Tā kā maziem burtiem attēlotās rakstzīmes tika iekļautas 6. un 7. daļā, tās no lieliem burtiem attēlotajām rakstzīmēm atšķīrās par vienu bitu, tādējādi atvieglojot reģistrnejutīgu rakstzīmju saskaņošanu, kā arī klaviatūru un printeru konstruēšanu.

X3 komiteja veica arī citas izmaiņas, tostarp iekļāva citas jaunas rakstzīmes (figūriekavas un vertikālo joslu), pārsauca dažas vadības rakstzīmes, savukārt dažas citas – pārvietoja vai aizvāca pavisam. ASCII vēlāk tika atjaunots kā USAS X3.4-1967, tad kā USAS X3.4-1968, ANSI X3.4-1977 un, visbeidzot, kā ANSI X3.4-1986.

Pārskatītās ASCII standarta redakcijas:

 ASA X3.4-1963
 ASA X3.4-1965 (apstiprināta, bet nepublicēta)
 USAS X3.4-1967
 USAS X3.4-1968
 ANSI X3.4-1977
 ANSI X3.4-1986
 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]
 (ANSI) INCITS 4-1986[R2017]

X3.15 standartā X3 komiteja pievērsās arī tam, kā ASCII būtu jāpārsūta (sākot ar vismazāk nozīmīgo bitu) un kā tas būtu jāreģistrē perfolentē. Komiteja piedāvāja 9 celiņu standartu magnētiskajām lentēm un mēģināja pievērsties arī daļai perfokaršu formātu.

Dizaina apsvērumi 
Bitu platums

X3.2 apakškomiteja izstrādāja ASCII, balstoties uz teletaipu kodēšanas sistēmām. Līdzīgi kā citas rakstzīmju kodēšanas sistēmas, ASCII precizē atbilsmes starp digitālām bitu shēmām un rakstzīmju simboliem (t. i., grafiskajiem simboliem un vadības rakstzīmēm). Šīs atbilsmes ļauj digitālajām ierīcēm savstarpēji sazināties, kā arī apstrādāt, uzglabāt un paziņot rakstzīmēs balstītu informāciju, piemēram, rakstu valodu. Pirms ASCII izstrādes, kodējot tika izmantoti 26 burti, 10 cipari un no 11 līdz 25 grafiskajiem simboliem. Lai iekļautu visas minētās un arī vadības rakstzīmes, kas ir saderīgas ar Comité Consultatif International Téléphonique et Télégraphique (CCITT) "International Telegraph Alphabet No. 2" (ITA2) standartu (1924), FIELDATA (1956) un EBCDIC (1963), ASCII bija nepieciešams vairāk par 64 kodiem.

Savukārt ITA2 pamatā ir 5 bitu telegrāfa kods, ko 1870. gadā izgudroja un 1874. gadā patentēja Emils Bodo (Émile Baudot).

Komiteja apsprieda iespēju izmantot maiņas funkciju (tāpat kā ITA2), kas ļautu ar 6 bitu kodu attēlot vairāk par 64 kodiem. Izmantojot maiņas funkciju, atsevišķi rakstzīmju kodi nosaka turpmāk sekojošo rakstzīmju kodu. Tādējādi kods ir kompaktāks, taču tad tas ir mazāk uzticams datu pārsūtīšanā, jo kļūda datu pārsūtīšanā parasti lielu daļu pārsūtāmā koda padara nelasāmu. Standarta komiteja nolēma neizmantot maiņas funkciju, tāpēc ASCII bija nepieciešams vismaz 7 bitu kods.

Komiteja apsvēra 8 bitu koda izmantošanu, jo 8 biti (okteti) ļautu izmantot divas četru bitu shēmas, lai efektīvi kodētu divus ciparus ar bināri kodētu decimālciparu. Tomēr tas nozīmētu, ka vienmēr būtu jāsūta 8 biti, pat ja pietiktu ar 7. Komiteja balsoja par labu 7 bitu koda izmantošanai, lai samazinātu ar datu pārsūtīšanu saistītās izmaksas. Tā kā perfolentes tolaik ļāva vienā pozīcijā reģistrēt 8 bitus, šāda izvēle ļāva izmantot pārības bitus, lai pārbaudītu kļūdas. 8 bitu mašīnas, kas pārības bitus neizmantoja, parasti kā 8 bitu norādīja 0. Dažos printeros šis bits tika izmantos, lai iespējotu druku kursīvā.

Rakstzīmju secība

ASCII koda secību mēdz saukt arī par ASCII alfabēta secību. Šajā secībā dažviet tiek veikta datu komplektēšana, kas atšķiras no "standarta" alfabēta secības (secība šķirošanai komplektos). Galvenās atkāpes ASCII secībā ir šādas:

 lieliem burtiem attēlotās rakstzīme ir pirms maziem burtiem attēlotajām rakstzīmēm, piemēram, "Z" ir pirms "a";
 cipari un daudzas pieturzīmes ir pirms burtiem.

Starpsecība pārvērš lielos burtus mazajos pirms ASCII vērtību salīdzināšanas.

ASCII nedrukājamās rakstzīmes 

ASCII nedrukājamo rakstzīmju tabulas skaitļi 0 līdz 31 ir piešķirti vadības rakstzīmēm, kas tiek lietotas perifērijas ierīču kontrolei – printeru vadībai u. c. Piemēram, skaitlis 12 nozīmē formas padevi/jaunu lappusi. Šī komanda liek printerim "pārlēkt" uz nākamās lappuses sākumu.

Atsauces

Ārējās saites 
 ASCII kodu tabula

Rakstzīmju kodējums