American Standard Code for Information Interchange
Un article de Wikipédia, l'encyclopédie libre.
- « ASCII » redirige ici. Pour les autres significations, voir ASCII (homonymie).
La norme ASCII [askiː] (American Standard Code for Information Interchange) est la norme de codage de caractères en informatique la plus connue et la plus largement compatible. C'est également la variante américaine du codage de caractères ISO/CEI 646. ASCII contient les caractères nécessaires pour écrire en anglais. Elle a été inventée par l'américain Bob Bemer en 1961. Elle est à la base de nombreuses autres normes (Unicode, ISO 8859-1, Windows-1252), qui l'étendent.
Sommaire |
[modifier] Principes
L'ASCII définit 128 caractères numérotés de 0 à 127 et codés en binaire de 0000000 à 1111111. Sept bits suffisent donc pour représenter un caractère codé en ASCII. Toutefois, les ordinateurs travaillant presque tous sur huit bits (un octet) depuis les années 1970, chaque caractère d'un texte en ASCII est stocké dans un octet dont le 8e bit est 0.
Les caractères de 0 à 31 ainsi que le 127 ne sont pas affichables et correspondent à des directives de terminal. Le caractère 32 est l'espace blanc. Les autres correspondent aux chiffres arabes, aux lettres latines majuscules et minuscules et à quelques symboles de ponctuation.
[modifier] Extensions
De nombreuses normes de codage de caractère ont repris ASCII pour base, et défini d'autres caractères pour les codes supérieurs à 127. En particulier, beaucoup de pages de codes étendent l'ASCII en utilisant le 8e bit pour définir des caractères numérotés de 128 à 255. La norme ISO/CEI 8859 fournit des extensions pour diverses langues. Par exemple, l'ISO 8859-1, aussi appelée Latin-1, étend l'ASCII avec les caractères accentués utiles aux langues originaires d'Europe occidentale comme le français ou l'allemand.
Par abus de langage, on appelle souvent « ASCII » des normes qui étendent ASCII, mais qui ne sont pas compatibles entre elles. En particulier, les standards Windows-1252 (couramment utilisé sur Microsoft Windows), ISO 8859-1 (couramment utilisé sur Internet et Unix) et la page de code 850 (couramment utilisée sur DOS) ne sont pas le standard ASCII. Cet abus de langage ne va pas sans causer des confusions causant des incompatibilités, souvent rendues visibles par les fait que les caractères non ASCII comme les « lettres accentuées » (éÈç) s'affichent mal. On écrit parfois ASCII de base pour bien identifier ASCII, et pas un standard plus étendu.
Afin d'unifier les différents codages de caractères complétant l'ASCII et y intégrer les codages complètement différents (le JIS pour le japonais par exemple), le standard Unicode a été inventé. Unicode définit des dizaines de milliers de codes, mais les 127 premiers restent compatibles avec ASCII.
[modifier] Table des 128 caractères ASCII
Code en base | Caractère | Signification | |||
---|---|---|---|---|---|
10 | 8 | 16 | 2 | ||
0 | 0 | 00 | 0000000 | NUL | Null (nul) |
1 | 01 | 01 | 0000001 | SOH | Start of Header (début d'entête) |
2 | 02 | 02 | 0000010 | STX | Start of Text (début du texte) |
3 | 03 | 03 | 0000011 | ETX | End of Text (fin du texte) |
4 | 04 | 04 | 0000100 | EOT | End of Transmission (fin de transmission) |
5 | 05 | 05 | 0000101 | ENQ | Enquiry (demande) |
6 | 06 | 06 | 0000110 | ACK | Acknowledge (accusé de reception) |
7 | 07 | 07 | 0000111 | BEL | Bell (caractère d'appel) |
8 | 010 | 08 | 0001000 | BS | Backspace (espacement arrière) |
9 | 011 | 09 | 0001001 | HT | Horizontal Tab (tabulation horizontale) |
10 | 012 | 0A | 0001010 | LF | Line Feed (saut de ligne) |
11 | 013 | 0B | 0001011 | VT | Vertical Tab (tabulation verticale) |
12 | 014 | 0C | 0001100 | FF | Form Feed (saut de page) |
13 | 015 | 0D | 0001101 | CR | Carriage Return (retour chariot) |
14 | 016 | 0E | 0001110 | SO | Shift Out (fin d'extension) |
15 | 017 | 0F | 0001111 | SI | Shift In (démarrage d'extension) |
16 | 020 | 10 | 0010000 | DLE | Data Link Escape |
17 | 021 | 11 | 0010001 | DC1 | Device Control 1 à 4
généralement utilisés pour le XON/XOFF dans les protocoles de connexion |
18 | 022 | 12 | 0010010 | DC2 | |
19 | 023 | 13 | 0010011 | DC3 | |
20 | 024 | 14 | 0010100 | DC4 | |
21 | 025 | 15 | 0010101 | NAK | Negative Acknowledge (accusé de reception négatif) |
22 | 026 | 16 | 0010110 | SYN | Synchronous Idle |
23 | 027 | 17 | 0010111 | ETB | End of Transmission Block (fin du bloc de transmission) |
24 | 030 | 18 | 0011000 | CAN | Cancel (annulation) |
25 | 031 | 19 | 0011001 | EM | End of Medium (fin de support) |
26 | 032 | 1A | 0011010 | SUB | Substitute (substitution) |
27 | 033 | 1B | 0011011 | ESC | Escape (échappement) |
28 | 034 | 1C | 0011100 | FS | File Separator (séparateur de fichier) |
29 | 035 | 1D | 0011101 | GS | Group Separator (séparateur de groupe) |
30 | 036 | 1E | 0011110 | RS | Record Separator (séparateur d'enregistrement) |
31 | 037 | 1F | 0011111 | US | Unit Separator (séparateur d'unité) |
32 | 040 | 20 | 0100000 | SP | Space (espace blanc) |
33 | 041 | 21 | 0100001 | ! | |
34 | 042 | 22 | 0100010 | " | |
35 | 043 | 23 | 0100011 | # | |
36 | 044 | 24 | 0100100 | $ | |
37 | 045 | 25 | 0100101 | % | |
38 | 046 | 26 | 0100110 | & | |
39 | 047 | 27 | 0100111 | ' | |
40 | 050 | 28 | 0101000 | ( | |
41 | 051 | 29 | 0101001 | ) | |
42 | 052 | 2A | 0101010 | * | |
43 | 053 | 2B | 0101011 | + | |
44 | 054 | 2C | 0101100 | , | |
45 | 055 | 2D | 0101101 | - | |
46 | 056 | 2E | 0101110 | . | |
47 | 057 | 2F | 0101111 | / | |
48 | 060 | 30 | 0110000 | 0 | |
49 | 061 | 31 | 0110001 | 1 | |
50 | 062 | 32 | 0110010 | 2 | |
51 | 063 | 33 | 0110011 | 3 | |
52 | 064 | 34 | 0110100 | 4 | |
53 | 065 | 35 | 0110101 | 5 | |
54 | 066 | 36 | 0110110 | 6 | |
55 | 067 | 37 | 0110111 | 7 | |
56 | 070 | 38 | 0111000 | 8 | |
57 | 071 | 39 | 0111001 | 9 | |
58 | 072 | 3A | 0111010 | : | |
59 | 073 | 3B | 0111011 | ; | |
60 | 074 | 3C | 0111100 | < | |
61 | 075 | 3D | 0111101 | = | |
62 | 076 | 3E | 0111110 | > | |
63 | 077 | 3F | 0111111 | ? | |
64 | 0100 | 40 | 1000000 | @ | |
65 | 0101 | 41 | 1000001 | A | |
66 | 0102 | 42 | 1000010 | B | |
67 | 0103 | 43 | 1000011 | C | |
68 | 0104 | 44 | 1000100 | D | |
69 | 0105 | 45 | 1000101 | E | |
70 | 0106 | 46 | 1000110 | F | |
71 | 0107 | 47 | 1000111 | G | |
72 | 0110 | 48 | 1001000 | H | |
73 | 0111 | 49 | 1001001 | I | |
74 | 0112 | 4A | 1001010 | J | |
75 | 0113 | 4B | 1001011 | K | |
76 | 0114 | 4C | 1001100 | L | |
77 | 0115 | 4D | 1001101 | M | |
78 | 0116 | 4E | 1001110 | N | |
79 | 0117 | 4F | 1001111 | O | |
80 | 0120 | 50 | 1010000 | P | |
81 | 0121 | 51 | 1010001 | Q | |
82 | 0122 | 52 | 1010010 | R | |
83 | 0123 | 53 | 1010011 | S | |
84 | 0124 | 54 | 1010100 | T | |
85 | 0125 | 55 | 1010101 | U | |
86 | 0126 | 56 | 1010110 | V | |
87 | 0127 | 57 | 1010111 | W | |
88 | 0130 | 58 | 1011000 | X | |
89 | 0131 | 59 | 1011001 | Y | |
90 | 0132 | 5A | 1011010 | Z | |
91 | 0133 | 5B | 1011011 | [ | |
92 | 0134 | 5C | 1011100 | \ | |
93 | 0135 | 5D | 1011101 | ] | |
94 | 0136 | 5E | 1011110 | ^ | |
95 | 0137 | 5F | 1011111 | _ | |
96 | 0140 | 60 | 1100000 | ` | |
97 | 0141 | 61 | 1100001 | a | |
98 | 0142 | 62 | 1100010 | b | |
99 | 0143 | 63 | 1100011 | c | |
100 | 0144 | 64 | 1100100 | d | |
101 | 0145 | 65 | 1100101 | e | |
102 | 0146 | 66 | 1100110 | f | |
103 | 0147 | 67 | 1100111 | g | |
104 | 0150 | 68 | 1101000 | h | |
105 | 0151 | 69 | 1101001 | i | |
106 | 0152 | 6A | 1101010 | j | |
107 | 0153 | 6B | 1101011 | k | |
108 | 0154 | 6C | 1101100 | l | |
109 | 0155 | 6D | 1101101 | m | |
110 | 0156 | 6E | 1101110 | n | |
111 | 0157 | 6F | 1101111 | o | |
112 | 0160 | 70 | 1110000 | p | |
113 | 0161 | 71 | 1110001 | q | |
114 | 0162 | 72 | 1110010 | r | |
115 | 0163 | 73 | 1110011 | s | |
116 | 0164 | 74 | 1110100 | t | |
117 | 0165 | 75 | 1110101 | u | |
118 | 0166 | 76 | 1110110 | v | |
119 | 0167 | 77 | 1110111 | w | |
120 | 0170 | 78 | 1111000 | x | |
121 | 0171 | 79 | 1111001 | y | |
122 | 0172 | 7A | 1111010 | z | |
123 | 0173 | 7B | 1111011 | { | |
124 | 0174 | 7C | 1111100 | | | |
125 | 0175 | 7D | 1111101 | } | |
126 | 0176 | 7E | 1111110 | ~ | |
127 | 0177 | 7F | 1111111 | DEL | Delete (effacement) |
[modifier] Fin de ligne
- Sous Mac OS, la fin de ligne est indiquée par un retour de chariot (CR).
- Sous DOS et Microsoft Windows, la fin de ligne est indiquée par un retour chariot suivi d'un saut de ligne (CRLF).
- Sous Unix, la fin de ligne est indiquée par un saut de ligne (LF).
Ainsi, lorsque l'on ouvre un fichier ASCII créé par un système sur un autre système, il faut en général faire de la mise en forme (c'est-à-dire refaire les fins de ligne) afin de pouvoir l'afficher et le lire de manière confortable. Toutefois, cela ne perturbe en général pas les programmes utilisant les fichiers ASCII.
[modifier] Articles connexes
|
|