# Les ASCII de 0 à 127/La table ASCII

Les caractères des différentes versions de l'ASCII font apparaître une structure particulière, dès qu'ils sont disposés en table.

## Structure de la table
### Liste

Lorsque l'on veut présenter non le glyphe, mais le nom des caractères, il est plutôt fait recours à une liste énumérative des dits noms.

### Présentation intuitive

Toutefois, les caractères des différentes versions de l'ASCII sont généralement présentées dans une table de 8×16.0
Il s'agit sans doute de la manière la plus simple de présenter tout à la fois tous les caractères de la table tout en montrant qu'ils forment grossièrement quatre groupes de seize caractères:
* les caractères de contrôle
* les chiffres et symboles
* les majuscules complétées de quelques caractères
* les minuscules complétées de quelques caractères

### Structure des octets

L'ASCII a inspiré la disposition des caractères de l'ISO 2022, à laquelle l'ASCII est conforme, par construction.
(a) 7 bits :
| fort ＼ faible | 00 | 01 | 04 | 05 |
| 00 | | | | |
| 01 | | | | |
| 02 | | | | |
| 03 | | | | |
| 04 | | | | |
| 05 | | | | |
| 06 | | | | |
| 07 | C0 | C0 | GL | GL |
| 08 | C0 | C0 | GL | GL |
| 09 | | | | |
| 10 | | | | |
| 11 | | | | |
| 12 | | | | |
| 13 | | | | |
| 14 | | | | |
| 15 | | | | |
Créé sur la base du JIS X 0202:1998. :
Notation: La position dans la table de caractère est indiqué par le numéro de colonne puis par le numéro de ligne. 01/11 (E S C A P E) est une valeur hexadécimale correspondant à 1B, par exemple.
$^a$ ESCAPE est toujours un caractère de contrôle. $^b$ Avec un jeu de 94 caractères, c'est un SPACE (espace). $^c$ Avec un jeu de 94 caractères, c'est un caractère de contrôle DELETE. $^d$ dans le code 7-bit, les caractères de contrôle C1 ne s'utilisent pas réellement. Alternative représentés par des séquences d'échappement.

## Descriptif
### Énumération des 128 caractères ASCII

Dans la liste suivante, les 33 caractères de contrôle (codes 0 à 31 et 127) sont présentés avec leur nom en anglais suivi d'une traduction entre parenthèses.
| Code en base | Code en base | Code en base | Code en base | Caractère | Signification |
| 10 | 8 | 16 | 2 | Caractère | Signification |
| 0 | 0 | 00 | 0000000 | NUL | Null (nul) |
| 1 | 01 | 01 | 0000001 | SOH | Start of Header (début d'en-tê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 (End of Line) (demande, fin de ligne) |
| 6 | 06 | 06 | 0000110 | ACK | Acknowledge (accusé de réception) |
| 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 (DC1 et DC3 sont généralement utilisés pour coder XON et XOFF dans un canal de communication duplex) |
| 18 | 022 | 12 | 0010010 | DC2 | Device Control 1 à 4 (DC1 et DC3 sont généralement utilisés pour coder XON et XOFF dans un canal de communication duplex) |
| 19 | 023 | 13 | 0010011 | DC3 | Device Control 1 à 4 (DC1 et DC3 sont généralement utilisés pour coder XON et XOFF dans un canal de communication duplex) |
| 20 | 024 | 14 | 0010100 | DC4 | Device Control 1 à 4 (DC1 et DC3 sont généralement utilisés pour coder XON et XOFF dans un canal de communication duplex) |
| 21 | 025 | 15 | 0010101 | NAK | Negative Acknowledge (accusé de réception 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) |
| 33 | 041 | 21 | 0100001 | ! | Point d'exclamation |
| 34 | 042 | 22 | 0100010 | " | Guillemet droit |
| 35 | 043 | 23 | 0100011 | # | Croisillon et parfois Dièse ou (aussi dénommé signe numéro) |
| 36 | 044 | 24 | 0100100 | $ | Dollar |
| 37 | 045 | 25 | 0100101 | % | Pourcent |
| 38 | 046 | 26 | 0100110 | & | Esperluette (aussi dénommé Perluète) |
| 39 | 047 | 27 | 0100111 | ' | Apostrophe (guillemet fermant simple ou accent aigu) |
| 40 | 050 | 28 | 0101000 | ( | Parenthèse ouvrante |
| 41 | 051 | 29 | 0101001 | ) | Parenthèse fermante |
| 42 | 052 | 2A | 0101010 | * | Astérisque |
| 43 | 053 | 2B | 0101011 | + | Plus |
| 44 | 054 | 2C | 0101100 | , | Virgule |
| 45 | 055 | 2D | 0101101 | - | Moins (aussi dénommé tiret ou trait d'union) |
| 46 | 056 | 2E | 0101110 | . | Point |
| 47 | 057 | 2F | 0101111 | / | Barre oblique (Slash en anglais) |
| 48 | 060 | 30 | 0110000 | 0 | Le chiffre zéro |
| 49 | 061 | 31 | 0110001 | 1 | Le chiffre un |
| 50 | 062 | 32 | 0110010 | 2 | Le chiffre deux |
| 51 | 063 | 33 | 0110011 | 3 | Le chiffre trois |
| 52 | 064 | 34 | 0110100 | 4 | Le chiffre quatre |
| 53 | 065 | 35 | 0110101 | 5 | Le chiffre cinq |
| 54 | 066 | 36 | 0110110 | 6 | Le chiffre six |
| 55 | 067 | 37 | 0110111 | 7 | Le chiffre sept |
| 56 | 070 | 38 | 0111000 | 8 | Le chiffre huit |
| 57 | 071 | 39 | 0111001 | 9 | Le chiffre neuf |
| 58 | 072 | 3A | 0111010 | : | Deux-points |
| 59 | 073 | 3B | 0111011 | ; | Point-virgule |
| 60 | 074 | 3C | 0111100 | < | Inférieur |
| 61 | 075 | 3D | 0111101 | = | Égal |
| 62 | 076 | 3E | 0111110 | > | Supérieur |
| 63 | 077 | 3F | 0111111 | ? | Point d'interrogation |
| 64 | 0100 | 40 | 1000000 | @ | Arobase (aussi dénommé Arrobe ou A commercial) |
| 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 | [ | Crochet ouvrant |
| 92 | 0134 | 5C | 1011100 | \ | Barre oblique inversée (backslash en anglais) ; également nommée Antislash |
| 93 | 0135 | 5D | 1011101 | ] | Crochet fermant |
| 94 | 0136 | 5E | 1011110 | ^ | Accent circonflexe (avec chasse) |
| 95 | 0137 | 5F | 1011111 | _ | trait basaussi dénommé, ou souligné (underscore en anglais) |
| 96 | 0140 | 60 | 1100000 | ` | Accent grave (avec chasse) |
| 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 | { | Accolade ouvrante |
| 124 | 0174 | 7C | 1111100 | | | Barre verticale |
| 125 | 0175 | 7D | 1111101 | } | Accolade fermante |
| 126 | 0176 | 7E | 1111110 | ~ | Tilde |
| 127 | 0177 | 7F | 1111111 | DEL | Delete (effacement) |
On peut aussi présenter la table des caractères ASCII sous cette forme plus condensée qui met en évidence une organisation fondée sur la base 16.

### Caractères de contrôle

On peut considérer que l'ASCII dispose entre trente-deux et trente-quatre caractères de contrôle. Voir Caractères de contrôle

#### NUL

Originellement une NOP, un caractère à ignorer. Lui donner le code 0 permettait de prévoir des réserves sur les bandes perforées en laissant des zones sans perforation pour insérer de nouveaux caractères a posteriori. Avec le développement du langage C il a pris une importance particulière quand il a été utilisé comme indicateur de fin de chaîne de caractères.

#### SOH

Start of heading : début d'en-tête. Il est aujourd'hui souvent utilisé dans les communications séries pour permettre la synchronisation après erreur.

#### DEL

Delete : effacement. Lui donner le code 127 (1111111 en binaire) permettait de supprimer a posteriori un caractère sur les bandes perforées qui codaient les informations sur 7 bits. N'importe quel caractère pouvait être transformé en DEL en complétant la perforation des 7 bits qui le composaient.

#### LF, CR, fin de ligne

Dans un fichier texte, la fin d'une ligne est représentée par un ou deux caractères de contrôle. Plusieurs conventions existent :
* sur les systèmes Multics, Unix, Type Unix (Linux, AIX, Xenix, Mac OS X, etc.), BeOS, AmigaOS, RISC OS entre autres, la fin de ligne est indiquée par un saut de ligne (LF) ;
* sur les machines Apple II et Mac OS jusqu'à la version 9, la fin de ligne est indiquée par un retour chariot (CR) ;
* sur les systèmes DEC, RT-11 et généralement tous les premiers systèmes non-Unix et non-IBM, CP/M, MP/M, MS-DOS, OS/2 ou Microsoft Windows, la fin de ligne est indiquée par un retour chariot suivi d'un saut de ligne (CR suivi de LF).
Ainsi, lorsqu'on transfère un fichier ASCII entre des systèmes ayant des conventions de fin de ligne différentes, il faut convertir les fins de ligne pour pouvoir le manipuler confortablement sur le système cible. Autrement, il faut utiliser un éditeur de texte capable de gérer les diverses conventions de fin de ligne, ce qui n'est par exemple pas le cas du classique Bloc-notes de Microsoft Windows. Les programmes utilisant les fichiers ASCII ne sont en général pas perturbés par un changement de type de fin de ligne.

#### SUB

Il est souvent associé à la combinaison de touche Contrôle + z, et est utilisé dans les communications séries pour permettre l'envoi des données en lieu et place de la touche entrée.

## Références

* 1 2 3 4 5 Alphabet International de référence : ANCIEN ALPHABET INTERNATIONAL n$^o$ 5 ou AI5, RECOMMANDATION T50, Union international des télécommunications, 1992 (lire en ligne)
* ↑ La norme ANSI X3.4 définit le caractère 39 par « apostrophe (closing single quotation mark, acute accent) » et les anciennes tables de caractères le représentaient souvent incliné. Les encodages plus récents restreignent ce code à la représentation de l'apostrophe verticale (ni penchée à droite, ni à gauche, mais neutre). Voir anglais Latin-1's apostrophe, grave accent, acute accent.
* ↑ name=Tiret bas
* ↑ Le code 96 est également employé comme guillemet ouvrant simple en ASCII. En Unicode, il existe un code plus approprié.
* ↑ anglais ASCII character set