ASCII — tietokoneiden merkkitaulukko: historia, rakenne ja käyttö
Opi ASCII:n historia, rakenne ja käytännön merkitys: 128-merkkinen standardi, ohjausmerkit, bittiesitys ja sen vaikutus tekstinkäsittelyyn ja tiedostoformaatteihin.
ASCII (lausutaan az-kee, amerikkalaisittain ass-key) on tietokoneiden merkkitaulukko. Se on binäärikoodi, jota elektroniikkalaitteet käyttävät tekstin käsittelyyn käyttäen englantilaisia aakkosia, numeroita ja muita yleisiä symboleja. ASCII on lyhenne sanoista American Standard Code for Information Interchange. ASCII kehitettiin 1960-luvulla ja perustui osin aiempiin lennätinjärjestelmien käyttämiin koodeihin. Standardi julkaistiin alun perin 1963 ja sitä päivitettiin myöhemmin; sen kehityksessä vaikuttivat muun muassa American Standards Association (ASA) ja myöhemmin ANSI.
Rakenne ja merkkivalikoima
ASCII-määritelmä kattaa yhteensä 128 koodipistettä (arvot 0–127). Suurin osa näistä on painettavia merkkejä, kuten aakkoset (esim. abc, ABC), numerot (123) ja erilaiset välimerkit (?&!). Lisäksi joukkoon kuuluu 33 ohjausmerkkiä, joita ei voi tulostaa suoraan, vaan ne ohjaavat tekstin käsittelyä (esim. rivinvaihto). Painettavien merkkien yleinen alue on desimaalisti 32–126.
- Tulostettavat merkit: desimaalit 32–126 (välilyönti, numerot, merkit ja kirjaimet).
- Ohjausmerkit: desimaalit 0–31 (esim. NUL, BEL, BS, HT, LF, CR) ja 127 (DEL).
Esimerkkejä tavallisista ohjauskoodeista: NUL (0), BEL (7, soi hälytys), BS (8, taaksepäin), HT (9, vaakataulukointi eli tab), LF (10, line feed, uusi rivi Unix-tyyli), CR (13, carriage return, palaaminen rivin alkuun, käytetään yhdessä LF:n kanssa Windowsissa), ESC (27) ja DEL (127). Monet ohjausmerkeistä ovat nykykäytössä joko harvinaisia tai korvautuneet muilla tavoilla tehtävillä, eikä ASCII sisällä muotoilumerkkejä kuten lihavointia tai kursivointia.
Bittitason esitys ja pariteetti
Alun perin ASCII on määritelty 7-bittisenä koodina, eli koodipisteet käyttävät seitsemää bittiä (arvot 0–127). Useimmissa tietokoneissa ja tiedonsiirtotavoissa merkki kuitenkin tallennetaan 8-bittiseen tavuun (byteen). Tällöin kahdeksas bitti on voitu käyttää esimerkiksi pariteettibitiksi virheenkorjaukseen tai myöhemmin laajennettujen merkkijoukkojen (esim. ISO-8859-1) koodipisteiden lisäämiseen.
Esimerkiksi iso kirjain A on ASCII:ssa desimaaliluku 65, heksadesimaalisti 41 ja 7-bittisenä binäärinä 1000001. Kun se tallennetaan 8-bittiseen tavualueeseen, se kirjoitetaan tyypillisesti muodossa 01000001.
Historialliset ja nykyiset laajennukset
Koska ASCII kattaa vain englanninkielisen aakkoston ja rajoitetun määrän erikoismerkkejä, erilaisia 8-bittisiä laajennuksia laadittiin tarvitsematta muuttaa ASCII:n perusmäärittelyä. Tunnettuja laajennuksia ovat esimerkiksi ISO 8859 -sarjan muodot (esim. ISO-8859-1 eli Latin-1) ja Microsoftin Windows-1252 sekä DOS:n koodisivut (esim. CP437). Nämä käyttävät ylimääräistä (kahdeksatta) bittiä esittämään paikallisia erikoismerkkejä, aksenttimerkkejä ja grafiikkaa.
Myös kansainvälinen standardi Unicode on nykyään yleisimmin käytössä. Unicode on suunniteltu kattamaan kaikki maailman kirjoitusjärjestelmät, mutta sen ensimmäiset 128 koodausta vastaavat täsmälleen ASCII:n koodipisteitä, joten ASCII on Unicode- ja UTF-8-yhteensopiva.
Käyttötarkoitukset ja merkitys
ASCII on ollut ja on yhä keskeinen osa tietotekniikan historiaa ja käytäntöjä. Sitä käytetään muun muassa:
- tekstimuotoisissa tiedostoissa ja lähdekoodissa (plain text, pelkkä teksti),
- verkko- ja sovellusprotokollissa (monet vanhat protokollat kuten SMTP, HTTP:n otsikot ja FTP-komennot käyttävät ASCII-tekstipohjaista syntaksia),
- komentoriveissä ja järjestelmäviesteissä,
- ASCII-taiteessa eli kuvioissa, jotka on rakennettu pelkistä ASCII-merkkejä.
Esitystavat ja muunnokset
ASCII-merkkejä esitellään usein taulukkoina, joissa näkyy sama merkki kolmessa muodossa: desimaali (0–127), heksadesimaali (00–7F) ja binaari (7-bittinen tai 8-bittinen esitys). Tämä helpottaa merkkien käsittelyä ohjelmoinnissa ja tiedonsiirrossa.
Yhteenveto
Vaikka ASCII yksinään on suppea verrattuna moderneihin merkkikoodauksiin, sen yksinkertaisuus ja laaja yhteensopivuus ovat tehneet siitä peruskiven tietokoneiden tekstinkäsittelyssä. ASCII:n 7-bittinen luonne, ohjausmerkit ja laajennusmahdollisuudet ovat muokanneet sitä, miten tekstiä välitetään, tallennetaan ja esitetään yhä nykyaikaisissa järjestelmissä. ASCII:n perusjoukko on edelleen osa Unicodea, mikä takaa sen jatkuvan merkityksen myös tulevaisuudessa.

95 graafista ASCII-merkkiä numeroilla 32-126 (desimaaliluku).
Laajennettu ASCII
ASCII:ssä ei ole diakriittisiä merkkejä (kirjaimeen lisättäviä merkkejä, kuten saksan kielessä vokaalien yläpuolella olevat pisteet (umlautit) tai espanjan kielessä "ñ":n yläpuolella oleva tilde (~)). Se on tarkoitettu vain englantia varten, eikä se toimi hyvin useimmissa muissa kielissä. Myös joissakin muista kielistä lainatuissa englanninkielisissä sanoissa käytetään näitä merkkejä, kuten resumé (ks. liite:English words with diacritics).
Tämä johti siihen, että joissakin järjestelmissä käytettiin 8 bittiä (kokonainen tavu) 7 bitin sijasta. Oikea nimitys 8-bittisille järjestelmille on laajennettu ASCII. Kahdeksan bittiä mahdollistaa 256 merkkiä. Ensimmäisten 128 merkin on oltava samoja kuin ASCII:ssä, ja loput merkit käytetään yleensä aakkosiin, joissa on aksentti, esimerkiksi É, È, Î ja Ü. Tämä ratkaisee ongelman kielissä, jotka perustuvat latinalaisiin aakkosiin, vaikka kaikki laajennetut ASCII-järjestelmät eivät olekaan samanlaisia. Muut aakkoset, kuten kreikkalaiset aakkoset ja kyrilliset aakkoset, tarvitsevat erilaisen merkkijoukon. Jotkin järjestelmät, kuten kiinalaisia merkkejä käyttävät järjestelmät, eivät vieläkään toimi, koska niissä käytetään tuhansia merkkejä. Unicode luotiin, jotta kaikilla kielillä olisi yksi yhteinen järjestelmä.
ASCII-standardia käytetään edelleen yleisesti, erityisesti tietokoneohjelmissa ja HTML-tiedostoissa. Vuoteen 2010 asti se oli URL-osoitteiden standardi. Usein verkkosivut, joilla on kenttiä tekstin syöttämistä varten, ottavat vastaan vain ASCII-tekstiä. Kaikki erikoismerkinnät, kuten lihavoitu tai keskitetty teksti, näkyvät virheellisesti.

Kysymyksiä ja vastauksia
K: Mikä on ASCII?
V: ASCII on tietokoneiden merkkitaulukko, joka käyttää binäärikoodia tekstin käsittelyyn käyttäen englantilaisia aakkosia, numeroita ja muita yleisiä symboleja.
K: Mitä ASCII tarkoittaa?
V: ASCII on lyhenne sanoista American Standard Code for Information Interchange.
K: Milloin ASCII kehitettiin?
V: ASCII kehitettiin 1960-luvulla.
K: Kuinka monta merkkiä koodissa on?
V: Koodi sisältää määritelmät 128 merkille, joille annetaan numerot 0-127.
K: Kuinka monta bittiä tarvitaan ASCII-merkin esittämiseen?
V: ASCII-merkin esittämiseen tarvitaan 7 binäärinumeroa (bittiä).
K: Käytetäänkö ASCII-tietokonetiedostossa yhtä tavua merkkiä kohti?
V: Kyllä, ASCII-tietokonetiedosto käyttää yhtä tavua merkkiä kohti, ja tavua kohti on 8 bittiä.
K: Käytetäänkö ASCII-standardia vielä nykyäänkin yleisesti? V: Kyllä, standardi ASCI on edelleen yleisesti käytössä, erityisesti tietokoneohjelmissa ja HTML-tiedostoissa.
Etsiä