Aller au contenu

Table ASCII

L'ASCII attribue un numéro à 128 caractères — les chiffres, les lettres latines non accentuées, la ponctuation courante et 33 codes de contrôle qui n'ont jamais été destinés à être imprimés. Chacun d'eux est répertorié ci-dessous en décimal, hexadécimal, octal et binaire, avec son numéro d'entité HTML.

Les 32 premiers codes et le dernier sont des codes de contrôle. La plupart sont historiques, issus d'une époque de téléscripteurs et de bande papier, mais une poignée fait encore fonctionner tout ce que vous tapez : 9 est la tabulation, 10 le saut de ligne Unix, 13 le retour chariot que Windows lui associe, et 27 démarre chaque séquence d'échappement ANSI que votre terminal utilise pour la couleur.

L'ASCII constitue les 128 premiers points de code d'Unicode, inchangés, ce qui explique pourquoi il reste le dénominateur commun de presque tous les encodages en usage. UTF-8 a été conçu pour que tout fichier purement ASCII soit déjà un UTF-8 valide, octet pour octet.

Codes de contrôle

0–31, 127
DécHexOctBinaireCar.HTMLNom
00000000000000NUL�NulTerminateur de chaîne en C. Caractère non imprimable.
10100100000001SOHDébut d'en-têteHistorique ; encadrait l'en-tête d'un bloc de transmission.
20200200000010STXDébut de texteHistorique ; marquait le début du corps du message.
30300300000011ETXFin de texteEnvoyé par Ctrl+C, d'où l'interruption d'un programme par cette touche.
40400400000100EOTFin de transmissionEnvoyé par Ctrl+D ; ferme stdin dans un shell Unix.
50500500000101ENQDemandeHistorique ; demandait au correspondant de s'identifier.
60600600000110ACKAccusé de réceptionRéponse positive dans les anciens protocoles série.
70700700000111BELSonnerieFait sonner la cloche du terminal. Noté \a en C.
80801000001000BSRetour arrièreRecule le curseur d'une colonne. Noté \b.
90901100001001HT	Tabulation horizontaleLa touche Tab. Noté \t.
100A01200001010LF
Saut de ligneLe saut de ligne Unix. Noté \n.
110B01300001011VTTabulation verticaleRare ; avance jusqu'au prochain taquet de tabulation verticale. Noté \v.
120C01400001100FFSaut de pageSaut de page pour les imprimantes. Noté \f.
130D01500001101CR
Retour chariotRevient à la première colonne. Associé à LF sous Windows. Noté \r.
140E01600001110SOHors codeHistorique ; basculait vers un jeu de caractères alternatif.
150F01700001111SIEn codeHistorique ; revenait au jeu standard.
161002000010000DLEÉchappement de liaison de donnéesHistorique ; transformait les octets suivants en données de contrôle.
171102100010001DC1Commande d'appareil 1XON — reprend une transmission en pause. Envoyé par Ctrl+Q.
181202200010010DC2Commande d'appareil 2Commande d'appareil historique.
191302300010011DC3Commande d'appareil 3XOFF — met la transmission en pause. Envoyé par Ctrl+S.
201402400010100DC4Commande d'appareil 4Commande d'appareil historique.
211502500010101NAKAccusé de réception négatifRéponse négative dans les anciens protocoles série.
221602600010110SYNAttente synchroneComblait les silences sur les liaisons synchrones.
231702700010111ETBFin de bloc de transmissionHistorique ; terminait un bloc d'un message plus long.
241803000011000CANAnnulationRejette les données envoyées avant lui.
251903100011001EMFin de supportMarquait la fin physique d'une bande ou d'un paquet de cartes.
261A03200011010SUBSubstitutionMarqueur de fin de fichier sous DOS et CP/M. Envoyé par Ctrl+Z.
271B03300011011ESCÉchappementDémarre une séquence d'échappement ANSI — couleurs du terminal et déplacements du curseur.
281C03400011100FSSéparateur de fichiersLe plus grossier des quatre séparateurs de données.
291D03500011101GSSéparateur de groupesSépare les groupes au sein d'un fichier.
301E03600011110RSSéparateur d'enregistrementsSépare les enregistrements au sein d'un groupe.
311F03700011111USSéparateur d'unitésLe séparateur le plus fin ; parfois utilisé comme délimiteur de champ.
1277F17701111111DELSuppressionTous les bits perforés sur bande papier, d'où sa place tout en haut.

Espace

32
DécHexOctBinaireCar.HTMLNom
322004000100000  Espace

Ponctuation et symboles

33–47, 58–64, 91–96, 123–126
DécHexOctBinaireCar.HTMLNom
332104100100001!!Point d'exclamation
342204200100010""Guillemet
352304300100011##Croisillon
362404400100100$$Signe dollar
372504500100101%%Signe pourcentage
382604600100110&&Esperluette
392704700100111''Apostrophe
402805000101000((Parenthèse gauche
412905100101001))Parenthèse droite
422A05200101010**Astérisque
432B05300101011++Signe plus
442C05400101100,,Virgule
452D05500101101--Trait d'union-moins
462E05600101110..Point
472F05700101111//Barre oblique
583A07200111010::Deux-points
593B07300111011;&#59;Point-virgule
603C07400111100<&#60;Signe inférieur à
613D07500111101=&#61;Signe égal
623E07600111110>&#62;Signe supérieur à
633F07700111111?&#63;Point d'interrogation
644010001000000@&#64;Arobase
915B13301011011[&#91;Crochet gauche
925C13401011100\&#92;Barre oblique inverse
935D13501011101]&#93;Crochet droit
945E13601011110^&#94;Accent circonflexe
955F13701011111_&#95;Tiret bas
966014001100000`&#96;Accent grave
1237B17301111011{&#123;Accolade gauche
1247C17401111100|&#124;Barre verticale
1257D17501111101}&#125;Accolade droite
1267E17601111110~&#126;Tilde

Chiffres

48–57
DécHexOctBinaireCar.HTMLNom
4830060001100000&#48;Chiffre 0
4931061001100011&#49;Chiffre 1
5032062001100102&#50;Chiffre 2
5133063001100113&#51;Chiffre 3
5234064001101004&#52;Chiffre 4
5335065001101015&#53;Chiffre 5
5436066001101106&#54;Chiffre 6
5537067001101117&#55;Chiffre 7
5638070001110008&#56;Chiffre 8
5739071001110019&#57;Chiffre 9

Lettres

65–90, 97–122
DécHexOctBinaireCar.HTMLNom
654110101000001A&#65;Lettre majuscule A
664210201000010B&#66;Lettre majuscule B
674310301000011C&#67;Lettre majuscule C
684410401000100D&#68;Lettre majuscule D
694510501000101E&#69;Lettre majuscule E
704610601000110F&#70;Lettre majuscule F
714710701000111G&#71;Lettre majuscule G
724811001001000H&#72;Lettre majuscule H
734911101001001I&#73;Lettre majuscule I
744A11201001010J&#74;Lettre majuscule J
754B11301001011K&#75;Lettre majuscule K
764C11401001100L&#76;Lettre majuscule L
774D11501001101M&#77;Lettre majuscule M
784E11601001110N&#78;Lettre majuscule N
794F11701001111O&#79;Lettre majuscule O
805012001010000P&#80;Lettre majuscule P
815112101010001Q&#81;Lettre majuscule Q
825212201010010R&#82;Lettre majuscule R
835312301010011S&#83;Lettre majuscule S
845412401010100T&#84;Lettre majuscule T
855512501010101U&#85;Lettre majuscule U
865612601010110V&#86;Lettre majuscule V
875712701010111W&#87;Lettre majuscule W
885813001011000X&#88;Lettre majuscule X
895913101011001Y&#89;Lettre majuscule Y
905A13201011010Z&#90;Lettre majuscule Z
976114101100001a&#97;Lettre minuscule a
986214201100010b&#98;Lettre minuscule b
996314301100011c&#99;Lettre minuscule c
1006414401100100d&#100;Lettre minuscule d
1016514501100101e&#101;Lettre minuscule e
1026614601100110f&#102;Lettre minuscule f
1036714701100111g&#103;Lettre minuscule g
1046815001101000h&#104;Lettre minuscule h
1056915101101001i&#105;Lettre minuscule i
1066A15201101010j&#106;Lettre minuscule j
1076B15301101011k&#107;Lettre minuscule k
1086C15401101100l&#108;Lettre minuscule l
1096D15501101101m&#109;Lettre minuscule m
1106E15601101110n&#110;Lettre minuscule n
1116F15701101111o&#111;Lettre minuscule o
1127016001110000p&#112;Lettre minuscule p
1137116101110001q&#113;Lettre minuscule q
1147216201110010r&#114;Lettre minuscule r
1157316301110011s&#115;Lettre minuscule s
1167416401110100t&#116;Lettre minuscule t
1177516501110101u&#117;Lettre minuscule u
1187616601110110v&#118;Lettre minuscule v
1197716701110111w&#119;Lettre minuscule w
1207817001111000x&#120;Lettre minuscule x
1217917101111001y&#121;Lettre minuscule y
1227A17201111010z&#122;Lettre minuscule z

FAQ

Quelle est la différence entre ASCII et UTF-8 ?
L'ASCII définit 128 caractères, numérotés de 0 à 127. UTF-8 est un encodage de l'intégralité d'Unicode — plus de 150 000 caractères — et il encode ces 128 premiers sous forme d'octets uniques ayant exactement les valeurs ASCII. Ainsi, tout fichier ASCII est un fichier UTF-8 valide, mais l'inverse n'est vrai que si le texte reste dans ces 128 caractères.
Pourquoi la table s'arrête-t-elle à 127 ?
L'ASCII est une norme sur 7 bits, et 2⁷ vaut 128. Les codes 128–255 ne sont pas de l'ASCII : ils appartiennent à l'extension 8 bits en vigueur — Windows-1252, ISO-8859-1 et d'autres — ce qui est précisément la raison pour laquelle elles se contredisent et pourquoi le texte accentué arrive si souvent déformé.
Quel est le code ASCII de l'espace ?
Décimal 32, hex 20. C'est un caractère imprimable bien qu'il n'ait l'air de rien, ce qui explique pourquoi il se situe en dehors de la plage de contrôle qui se termine à 31.
Pourquoi DEL est-il à 127 et non à 0 ?
La bande papier. Supprimer un caractère revenait à perforer tous les trous de sa position, et les sept bits perforés font 127. Un caractère supprimé ne pouvait pas être restauré, ce qui est aussi l'origine du sens moderne.
Quelle est la différence entre CR et LF ?
CR (13) ramène la tête d'impression à la première colonne ; LF (10) avance d'une ligne. Unix et macOS terminent les lignes par LF seul, Windows utilise CR suivi de LF, et ce désaccord est la raison pour laquelle un fichier peut apparaître comme une seule longue ligne ou avec des caractères ^M parasites.