ASCII

**ASCII** [ˈæski] (**''A**merican **S**tandard **C**ode for **I**nformation **I**nterchange*, „Amerikietiškas informacijos mainų koduotės standartas“) – simbolių [[koduotė]], pritaikyta [[Anglų kalbos abėcėlė|anglų kalbos abėcėlei]]. ASCII kodai naudojami tekstui [[kompiuteris|kompiuteriuose]], [[mobilusis telefonas|mobiliuosiuose telefonuose]] ir kituose [[komunikacija|komunikacijos]] įrenginiuose įrašyti, saugoti ir atvaizduoti. Dauguma dabartinių [[koduotė|koduočių]] buvo sukurtos papildant ASCII, rečiau pakeičiant dalį simbolių.

== Istorija ==
Pirmą kartą ASCII standartas buvo publikuotas [[1967]] m., o atnaujintas [[1986]] metais. Šiuo metu ASCII sudėtyje yra 33 nespausdinami simboliai, kurie naudojami teksto atvaizdavimui apibrėžti, ir iliustracijoje pavaizduoti 95 spausdinami simboliai (pirmasis iš jų – tarpas „ “):

== Pagrindinės savybės ==
* Skaitmenims, didžiosioms raidėms ir mažosioms raidėms skirti intervalai yra ištisiniai: vienetu padidinus reikšmę, gaunama sekanti raidė ar skaitmuo.
* Didžiųjų ir mažųjų raidžių dvejetainiai kodai skiriasi tik vienu bitu.
* Paskutiniai keturi skaitmenų kodo bitai yra to skaitmens skaitinė reikšmė dvejetainėje sistemoje: 0x30 = '0' … 0x39 = '9'. Pirmieji keturi bitai yra 0011.
* ASCII simbolių kodai sutampa su pirmaisiais vėliau sukurtos [[Unikodas|Unikodo]] koduotės tų pačių simbolių kodais.
* Visų simbolių kodams pakanka septynių bitų. Aštuntasis bitas gali būti naudojamas įvairiems specialiems tikslams. Pavyzdžiui, jis kai kada nurodo, ar vienetų skaičius likusiuose septyniuose bituose yra nelyginis, taip įsitikinant, ar perduodant nebuvo padaryta klaidų.

== Spausdinami simboliai ==
<pre>
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
`abcdefghijklmnopqrstuvwxyz{|}~
</pre>
Žemiau pateikiamoje lentelėje antraštėse nurodomas skaičiavimo sistemos pagrindas (2 – dvejetainis, 10 – dešimtainis, 16 – šešioliktainis kodas).


== Nespausdinami simboliai ==

=== Eilutės pabaiga ===
Iš nespausdinamų simbolių vieni reikšmingiausių yra naujos eilutės kodai. Jų ASCII standarte yra du: „vežimėlio grąžinimas“ () (0xD) ir popieriaus pratraukimas (). Seno tipo spausdintuvuose, kaip ir paprastose rašomosiose mašinėlėse, tai buvo du atskiri veiksmai: vežimėlio grąžinimas reiškė spausdinimą nuo kairiosios paraštės, tačiau nepatraukus popieriaus (taigi *ant'' anksčiau atspausdinto teksto). Toks spausdinimas buvo naudojamas tekstui pabraukimo ženklu pabraukti. „Popieriaus pratraukimas“ patraukdavo popierių taip, jog būtų spausdinama eilute žemiau (atstumas nuo paraštės iki vietos, kur bus spausdinami simboliai, likdavo toks pats). Todėl net ir dabar naują eilutę MS DOS ir Windows aplinkose neretai žymi du vienas po kito einantys ženklai (0xD 0xA ar 0xA 0xD). Kitos sistemos vėliau atsisakė vieno iš kodų, bet ne visos to paties: Apple sistemoje liko tik 0xD, o GNU/Linux – 0xA.

### Tabuliacija
Kitas ilgiau vartotas simbolis buvo tabuliacijos ženklas (0x9), nurodantis, jog spausdinimo poziciją reikia patraukti pirmyn tiek, jog ženklo atstumas (simboliais nuo kairiosios paraštės) būtų kartotinis sutartam skaičiui (paprastai aštuoniems). Tabuliacija buvo sėkmingai naudojama kol įvairiuose tekstų redaktoriuose neatsirado galimybė šį sutartą skaičių keisti. Tuomet, jei kitas vartotojas ar tekstų redaktorius naudodavo kitokią standartinę tabuliacijos reikšmę, dokumentas būdavo visiškai sudarkomas. To vengiant, tabuliacija šiuo metu vartojama vis rečiau.

Naudojama ir daugiau nespausdinamų simbolių, tačiau kiti yra retesni ir ne visur reiškia tą patį.

## Taikymas
Dėl paprastumo ir palyginus ilgos istorijos ASCII koduotė gerai palaikoma įvairių programų, platformų bei sistemų. Pagrindinis jos trūkumas – įvairioms kalboms specifinių simbolių nebuvimas. Dėl šios priežasties ASCII netinka lietuvių kalba rašytiems dokumentams ar kitiems tekstams. Tačiau net ir dabar neretai patariama failų bei aplankų vardams, kompiuterių programų kintamiesiems, HTML parametrams bei kitais panašiais atvejais naudoti tik ASCII simbolius, taip apsisaugant nuo iškraipymų skaitant duomenis su vien ASCII palaikančia programine įranga.

## Nuorodos
* ASCII generatorius