ASCII (udtales aski) (eller US-ASCII i internetsammenhænge[1]) er et tegnkodetabel og et akronym for American Standard Code for Information Interchange (amerikansk standardkode til udveksling af information). Internet Assigned Numbers Authority (IANA) foretrækker navnet US-ASCII for tegnsættet.[1]
ASCII er en standard,[2] der definerer en transformation mellem grafiske tegn (ASCII-tegn) og binære værdier i IETFRFC20. ASCII finder dermed anvendelse når tekst på grafisk form, der er læsbar af mennesker, ønskes repræsenteret på elektronisk maskinlæsbar form.
Digital repræsentation af tekst på ASCII-form er meget anvendt i computer- og telekommunikations-branchen, hvor stort set alle digitale enheder anvender ASCII, eller en repræsentation afledt af denne (Unicode, ISO 8859-1 o.l).
Udover grafiktegn indeholder ASCII også en række kontroltegn, der vidner om at ASCII oprindeligt også blev udviklet til at styre de enheder der gjorde brug af de grafiske tegn (for eksempel linefeed, formfeed og carriage return for linieorienterede printere).
ASCII definerer 33 kontroltegn og 95 grafiktegn, i alt 128 tegn, og kan dermed repæsenteres binært vha. syv bit. Dette giver et interval for ASCII-værdierne på [0;127] (decimal talbase), eller [00;7F] (hexadecimal talbase). (Hvis en tekstfil indeholder tegn større end hex 7F, er tekstfilformatet ikke ASCII.)
Historie
ASCII blev offentliggjort i 1963 af American Standards Association (ASA) som senere blev til ANSI.
ASCII bliver af mange (i USA) betragtet som den mest succesrige softwarestandard, der nogensinde er offentliggjort.
RFC20 (ASCII) fra 1969 blev gjort til standard af IETF IESG i 2015.[2]
Bell laboratorierne (AT&T Corporation) udviklede i 1930'erne et telex-system, kaldet TWX (Teletype Wide-area eXchange). ASCII-koden, der bruges i computere i dag, er en variant af koden fra TWX-systemet. AT&T begyndte at anvende TWX den 21. november 1931.[3][4]
Kontroltegn
Nedenfor ses ASCII transformationen for kontroltegnene i tabelform. Kontroltegnene repræsenteres med værdier i intervallet [0;31] eller værdien 127 (begge i decimal talbase).
Device Control 1 – anvendt til transmissionskontrolkoden XON
00010010
18
12
DC2
Device Control 2
00010011
19
13
DC3
Device Control 3 – anvendt til transmissionskontrolkoden XOFF
00010100
20
14
DC4
Device Control 4
00011000
24
18
CAN
Cancel
00011001
25
19
EM
End of Medium
00011010
26
1A
SUB
Substitute
00011011
27
1B
ESC
Escape
01111111
127
7F
DEL
Delete
US-ASCII grafiktegn
Nedenfor ses ASCII transformationen for de grafiske tegn i tabelform. Grafiktegn repræsenteres af værdier i intervallet [32;126] (decimal talbase).
Alfabetiske tegn
Binær
Decimal
Hex
Tegn
01000001
65
41
A
01000010
66
42
B
01000011
67
43
C
01000100
68
44
D
01000101
69
45
E
01000110
70
46
F
01000111
71
47
G
01001000
72
48
H
01001001
73
49
I
01001010
74
4A
J
01001011
75
4B
K
01001100
76
4C
L
01001101
77
4D
M
01001110
78
4E
N
01001111
79
4F
O
01010000
80
50
P
01010001
81
51
Q
01010010
82
52
R
01010011
83
53
S
01010100
84
54
T
01010101
85
55
U
01010110
86
56
V
01010111
87
57
W
01011000
88
58
X
01011001
89
59
Y
01011010
90
5A
Z
Binær
Decimal
Hex
Tegn
01100001
97
61
a
01100010
98
62
b
01100011
99
63
c
01100100
100
64
d
01100101
101
65
e
01100110
102
66
f
01100111
103
67
g
01101000
104
68
h
01101001
105
69
i
01101010
106
6A
j
01101011
107
6B
k
01101100
108
6C
l
01101101
109
6D
m
01101110
110
6E
n
01101111
111
6F
o
01110000
112
70
p
01110001
113
71
q
01110010
114
72
r
01110011
115
73
s
01110100
116
74
t
01110101
117
75
u
01110110
118
76
v
01110111
119
77
w
01111000
120
78
x
01111001
121
79
y
01111010
122
7A
z
Numeriske tegn
Binær
Decimal
Hex
Tegn
00110000
48
30
0
00110001
49
31
1
00110010
50
32
2
00110011
51
33
3
00110100
52
34
4
00110101
53
35
5
00110110
54
36
6
00110111
55
37
7
00111000
56
38
8
00111001
57
39
9
Punktuationstegn
Binær
Decimal
Hex
Tegn
00100000
32
20
(mellemrum)
00100001
33
21
!
00100010
34
22
"
00100011
35
23
#
00100100
36
24
$
00100101
37
25
%
00100110
38
26
&
00100111
39
27
'
00101000
40
28
(
00101001
41
29
)
00101010
42
2A
*
Binær
Decimal
Hex
Tegn
00101011
43
2B
+
00101100
44
2C
,
00101101
45
2D
-
00101110
46
2E
.
00101111
47
2F
/
00111010
58
3A
:
00111011
59
3B
;
00111100
60
3C
<
00111101
61
3D
=
00111110
62
3E
>
00111111
63
3F
?
Binær
Decimal
Hex
Tegn
01000000
64
40
@
01011011
91
5B
[
01011100
92
5C
\
01011101
93
5D
]
01011110
94
5E
^
01011111
95
5F
_
01100000
96
60
`
01111011
123
7B
{
01111100
124
7C
|
01111101
125
7D
}
01111110
126
7E
~
Dansk/Norsk version (non-US-ASCII)
Der har eksisteret en dansk/norsk version af ASCII, med følgende forskelligheder:
Binær
Decimal
Hex
ASCII
Dansk
01011011
91
5B
[
Æ
01011100
92
5C
\
Ø
01011101
93
5D
]
Å
01111011
123
7B
{
æ
01111100
124
7C
|
ø
01111101
125
7D
}
å
Kilder/referencer
1 2 "Character Sets". Internet Assigned Numbers Authority (IANA). 14. maj 2007. Hentet 2019-08-25. Citat: "...The use of the name US-ASCII is also encouraged..."
Ascii TableArkiveret 4. december 2004 hos Wayback Machine – komplet oversigt over ASCII-tegntabellen og den udvidede (ikke-standardiserede) ASCII-tegntabel.