ASCII - 7-bitars teckenkod: definition, exempel och historia

Lär dig ASCII: 7-bitars teckenkodens definition, praktiska exempel och historia — från telegrafens rötter till modern textkoding och användning.

Författare: Leandro Alegsa

ASCII (uttalas az-kee, eller "ass-key" i amerikansk uttalstradition) är en standardiserad teckentabell som definierar hur text representeras i datorer och annan elektronisk utrustning. ASCII är en förkortning för American Standard Code for Information Interchange och utvecklades på 1960‑talet, delvis baserad på äldre koder från telegrafsystem. ASCII används för att hantera text som använder det engelska alfabetet, siffror och vanliga skiljetecken och symboler som symboler. I vardagligt språk kan man säga att en fil "är i ASCII" när det rör sig om vanlig text (plain text).

Vad ASCII definierar

ASCII specificerar 128 tecken, med kodvärden från 0 till 127. Dessa inkluderar:

  • Kontrolltecken (kod 0–31 och 127) som inte skrivs ut, utan används för att styra textbehandling och kommunikation.
  • Utskrivbara tecken (kod 32–126) som blanksteg, siffror, versaler och gemener i det engelska alfabetet samt skiljetecken och andra vanliga symboler.

Kodpunkter — binärt, hex och decimalt

Varje ASCII‑tecken tilldelas ett numeriskt kodvärde. Exempelvis representeras den stora bokstaven A av talet 65 i bas‑10, vilket är 0x41 i hexadecimaltal och i 7‑bitars binär form 1000001. På samma sätt följer B och C sekventiellt: 66 (0x42, 1000010), 67 (0x43, 1000011) osv.

Kontrolltecken — vanliga exempel

Kontrolltecken användes ursprungligen för att styra skrivare och terminaler. Många av dem har idag andra eller föråldrade användningsområden, men vissa är fortfarande centrala i dator- och nätverkskommunikation:

  • NUL (0) — null, används för att markera slut eller fyllnad i vissa sammanhang
  • BEL (7) — ringsignal (bell)
  • BS (8) — backspace
  • HT (9) — horisontell tab
  • LF (10) — line feed, ny rad i Unix-liknande system
  • CR (13) — carriage return, ny rad i äldre system och Windows i kombination CR+LF
  • ESC (27) — escape, startar många terminalstyrningssekvenser
  • DEL (127) — delete, ursprungligen avsedd för att radera tecken

7‑bitars kod och 8‑bitars lagring

Formellt är ASCII en 7‑bitars teckenkod (värden 0–127). I praktiken lagras och överförs data ofta i 8‑bitars bytes. När man använde seriella överföringar och modem var det vanligt att lägga till en åttonde bit som en paritetsbit för felkontroll. Därför ser man ibland beskrivningar som nämner 8 bitar — då avser man ett 7‑bitars ASCII‑värde plus en extra paritetsbit i varje byte som sänds. Paritet hjälpte till att upptäcka överföringsfel när anslutningarna var bullriga.

Utvidgningar och efterföljare

Eftersom ASCII bara täcker 128 tecken utvecklades senare 8‑bitars teckenuppsättningar som kunde representera ytterligare tecken (till exempel accenter och tecken för andra språk). Exempel på sådana är ISO‑8859‑1 (Latin‑1) och Windows‑1252. Dessa kallas ibland "extended ASCII" även om det inte finns någon enhetlig standard med det namnet.

Unicode tog över som den moderna standarden för att stödja alla världens skrivsystem. De första 128 tecknen i Unicode är identiska med ASCII, vilket gör ASCII till en underuppsättning av Unicode.

Historik och påverkan

ASCII utarbetades i USA under 1960‑talet av arbetsgrupper som ville standardisera textrepresentationen mellan olika system och maskiner. Det blev snabbt en grundpelare i datakommunikation och nätverksprotokoll — många protokoll och filformat antar fortfarande att text är ASCII eller att dess första 128 tecken överensstämmer med ASCII‑tabellen.

Praktiska exempel

  • Bokstaven A: decimalt 65, hex 0x41, binärt (7 bitar) 1000001.
  • Mellanslag (space): decimalt 32. Det första utskrivbara tecknet i ASCII.
  • Ny rad i Unix: LF (decimalt 10). I Windows används CR+LF (13 och 10).

Sammanfattningsvis är ASCII en enkel, tidig och fortfarande inflytelserik teckenkod: en 7‑bitars standard för engelskspråkig text som lade grunden för senare 8‑bitars encodings och för den globala Unicode‑standarden.

De 95 grafiska ASCII-tecknen, numrerade från 32 till 126 (decimaltal).Zoom
De 95 grafiska ASCII-tecknen, numrerade från 32 till 126 (decimaltal).

Utökad ASCII

ASCII har inga diakritiska tecken (tecken som läggs till en bokstav, som t.ex. prickarna (umlauts) över vokaler på tyska eller tilden (~) över "n" för "ñ" på spanska). Det var endast avsett för engelska och fungerar inte bra för de flesta andra språk. Vissa engelska ord som lånats in från andra språk använder också dessa tecken, till exempel resumé (se bilaga: Engelska ord med diakritiska tecken).

Detta ledde till att vissa system använde 8 bitar (en hel byte) i stället för 7 bitar. Det korrekta namnet för system som använder 8 bitar kallas extended ASCII. Åtta bitar möjliggör 256 tecken. De första 128 tecknen måste vara desamma som för ASCII och resten används vanligtvis för bokstäver med accenter, till exempel É, È, Î och Ü. Detta löser problemet för språk som är baserade på det latinska alfabetet, även om inte alla utökade ASCII-system är likadana. Andra alfabet, som det grekiska alfabetet och det kyrilliska alfabetet, behöver en annan uppsättning tecken. Och vissa system, t.ex. de som använder kinesiska tecken, fungerar fortfarande inte, eftersom de använder tusentals tecken. Därför skapades Unicode för att få ett gemensamt system för alla språk.

Standard ASCII används fortfarande ofta, särskilt i datorprogram och HTML-filer. Fram till 2010 var det standard för webbadresser. Ofta tar en webbplats med fält för inmatning av text endast emot ASCII-text. Eventuella särskilda markeringar för fet eller centrerad text etc. kommer att visas felaktigt.

ASCII-Table-wide

Frågor och svar

F: Vad är ASCII?


S: ASCII är en tabell med tecken för datorer, som använder binär kod för att hantera text som använder det engelska alfabetet, siffror och andra vanliga symboler.

F: Vad står ASCII för?


S: ASCII står för American Standard Code for Information Interchange (amerikansk standardkod för informationsutbyte).

F: När utvecklades ASCII?


S: ASCII utvecklades på 1960-talet.

F: Hur många tecken ingår i koden?


S: Koden innehåller definitioner för 128 tecken, som tilldelas nummer från 0 till 127.

F: Hur många bitar krävs för att representera ett ASCII-tecken?


Svar: Det krävs 7 binära siffror (bitar) för att representera ett ASCII-tecken.

F: Använder en ASCII-datorfil en byte per tecken?


Svar: Ja, en ASCII-datorfil använder en byte per tecken, med 8 bitar per byte.

F: Är standard ASCII fortfarande vanligt förekommande i dag? Svar: Ja, standard ASCI används fortfarande ofta i dag, särskilt i datorprogram och HTML-filer.


Sök
AlegsaOnline.com - 2020 / 2025 - License CC3