ASCII

ASCII [ˈæski] (American Standard Code for Information Interchange, „Amerikietiškas informacijos mainų koduotės standartas“) – simbolių koduotė, pritaikyta anglų kalbos abėcėlei. ASCII kodai naudojami tekstui kompiuteriuose, mobiliuosiuose telefonuose ir kituose komunikacijos įrenginiuose įrašyti, saugoti ir atvaizduoti. Dauguma dabartinių koduočių buvo sukurtos papildant ASCII, rečiau pakeičiant dalį simbolių.

ASCII yra 95 spausdinami simboliai, kurie sunumeruoti nuo 32 iki 126.

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 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

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

Žemiau pateikiamoje lentelėje antraštėse nurodomas skaičiavimo sistemos pagrindas (2 – dvejetainis, 10 – dešimtainis, 16 – šešioliktainis kodas).

21016Ženklas
0010 00003220tarpas
0010 00013321!
0010 00103422"
0010 00113523#
0010 01003624$
0010 01013725%
0010 01103826&
0010 01113927'
0010 10004028(
0010 10014129)
0010 1010422A*
0010 1011432B+
0010 1100442C,
0010 1101452D-
0010 1110462E.
0010 1111472F/
0011 000048300
0011 000149311
0011 001050322
0011 001151333
0011 010052344
0011 010153355
0011 011054366
0011 011155377
0011 100056388
0011 100157399
0011 1010583A:
0011 1011593B;
0011 1100603C<
0011 1101613D=
0011 1110623E>
0011 1111633F?
 
21016Ženklas
0100 00006440@
0100 00016541A
0100 00106642B
0100 00116743C
0100 01006844D
0100 01016945E
0100 01107046F
0100 01117147G
0100 10007248H
0100 10017349I
0100 1010744AJ
0100 1011754BK
0100 1100764CL
0100 1101774DM
0100 1110784EN
0100 1111794FO
0101 00008050P
0101 00018151Q
0101 00108252R
0101 00118353S
0101 01008454T
0101 01018555U
0101 01108656V
0101 01118757W
0101 10008858X
0101 10018959Y
0101 1010905AZ
0101 1011915B[
0101 1100925C\
0101 1101935D]
0101 1110945E^
0101 1111955F_
 
21016Ženklas
0110 00009660`
0110 00019761a
0110 00109862b
0110 00119963c
0110 010010064d
0110 010110165e
0110 011010266f
0110 011110367g
0110 100010468h
0110 100110569i
0110 10101066Aj
0110 10111076Bk
0110 11001086Cl
0110 11011096Dm
0110 11101106En
0110 11111116Fo
0111 000011270p
0111 000111371q
0111 001011472r
0111 001111573s
0111 010011674t
0111 010111775u
0111 011011876v
0111 011111977w
0111 100012078x
0111 100112179y
0111 10101227Az
0111 10111237B{
0111 11001247C|
0111 11011257D}
0111 11101267E~

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“ (angl. carriage return) (0xD) ir popieriaus pratraukimas (angl. line feed). 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