Outil pour convertir le code ASCII (binaire, octal, décimal, hexadécimal), une norme de codage de caractères qui sont numérotés de 0 à 127 et codés en binaire sur 7 bits de 0000000 à 1111111.
Code ASCII - dCode
Catégorie(s) : Codage de Caractères
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
La norme de codage des caractères ASCII (American Standard Code for Information Interchange) est un système de codage attribue un code numérique unique à chaque caractère (lettres, chiffres, symboles) sur un ordinateur ce qui facilite l'échange de données entre différents systèmes informatiques.
Cette norme a été définie en 1975 et contient 128 codes à 7 bits dont 95 caractères imprimables (soit la grande majorité des caractères permettant d'écrire en anglais, mais pas totalement en Français, il n'y a pas les accents par exemple).
Aujourd'hui cette norme est dépassée et supplantée par Unicode, qui est rétrocompatible avec l'ASCII.
La conversion ASCII consiste à remplacer/traduire chaque caractère par sa valeur dans la table ASCII (voir ci-après). Cette valeur peut être écrite dans plusieurs formats, selon les besoins, comme en décimal, binaire, hexadécimal ou encore octal.
Exemple : Convertir la chaine dCode en ASCII c'est l'écrire 1100100 1000011 1101111 1100100 1100101 en binaire (7-bit) ou 100 67 111 100 101 en décimal.
Les caractères n'existant pas dans la table d'encodage ne peuvent pas être codés (pas d'accent, pas de caractères spéciaux).
La conversion/décodage de l'ASCII consiste à remplacer/traduire chaque valeur par le caractère correspondant dans la table ASCII. Sa représentation peut être formatée indépendamment en base binaire (0-1), octale (0-7), décimale (0-9) ou hexadécimale (0-9a-f).
Exemple :
Valeurs ASCII (Format) | Texte clair |
---|---|
65 77 69 82 73 67 65 78 (Décimal) | AMERICAN |
83 116 97 110 100 97 114 100 (Décimal) | Standard |
1000011 1001111 1000100 1000101 (Binaire 7 bits) | CODE |
01100011 01101111 01100100 01100101 (Binaire 8 bits) | code |
49 4E 46 4F 52 4D 41 54 49 4F 4E (Hexadécimal) | INFORMATION |
111 116 124 105 122 103 110 101 116 107 105 (Octal) | INTERCHANGE |
Le message est généralement écrit soit en binaire, soit en décimal, soit en hexadécimal (ou plus rarement en octal).
Les valeurs sont comprises entre 0 et 127 (décimal), les plus courantes/fréquentes, correspondant aux caractères habituels tels que les lettres majuscules ou minuscules sont comprises entre 65 et 122 (décimal).
Toute référence au ski (ASCII ≈ à ski) est un indice.
Les langages informatiques utilisent généralement des fonctions comme fromCharCode(), CharCode(), Chr()
La table ASCII attribue un code numérique unique à chaque caractère, mais ce code (entre 0 et 127) peut s'écrire de multiple façon en fonction des besoins.
— BIN : écriture en base 2 binaire (de 0 à 1111111)
— BIN /7 : découpage tous les 7 bits (de 0000000 à 1111111)
— BIN /8 : découpage tous les 8 bits (de 00000000 à 01111111)
— BIN /1-7 : découpage adaptatif entre 1 et 7 bits
— BIN /1-8 : découpage adaptatif entre 1 et 8 bits
— BIN /N : découpage adaptatif de 1 à N bits
— OCT : écriture en base 8 octale de (0 à 177)
— OCT /3 : découpage tous les 3 chiffres (de 000 à 177)
— OCT /1-3 : découpage adaptatif de 1 à 3 chiffres octal
— OCT /N : découpage adaptatif de 1 à N chiffres octal
— DEC : écriture en base 10 décimale de (0 à 127)
— DEC /2 : découpage tous les 2 chiffres (de 0 à 99, message sans minuscule)
— DEC /3 : découpage tous les 3 chiffres (de 000 à 127)
— DEC /1-3 : découpage adaptatif de 1 à 3 chiffres
— DEC /N : découpage adaptatif de 1 à N chiffres
— HEX : écriture en base 16 hexadécimale (de 0 à 7F)
— HEX /2 : découpage tous les 2 caractères (de 00 à 7F)
— HEX /N : découpage adaptatif de 1 à N chiffres hexadécimaux
Les chiffres ou caractères qui ne serait pas valides dans les bases 2,8,10,16 sont ignorés.
Parfois le symboles ⥅0 ou ⥆0 sont affichés, ils signifient que des 0 initiaux ou finaux ont été rajoutés afin de permettre le décodage.
Un code ASCII est représenté sur 7 bits, ce qui permet de représenter 128 caractères différents.
En pratique, le code ASCII est quasi systématiquement représenté sur 1 octet (8bits) même s'il n'occupe que 7bits.
En binaire, utiliser soit 7 bits, soit 8 bits (en ajoutant un 0 au début) pour représenter un caractère ASCII.
En octal, c'est 3 caractères (de 000 à 177).
En décimal, le nombre est compris entre 1 et 128 (de 1 à 3 caractères).
En hexadécimal, c'est 2 caractères (de 00 à 7f).
Dans le code ASCII, il y a une différence de 32 entre une lettre majuscule et une lettre minuscule. Ajouter 32 au code ASCII d'une majuscule pour obtenir une minuscule et soustraire 32 au code ASCII d'une minuscule pour avoir une majuscule. L'opération binaire correspondante consiste à mettre le 5ème bit (en partant de la droite) à 0 (majuscule) ou 1(minuscule).
Exemple : A=01000001 (65) et a=01100001 (65+32=97)
Cette astuce ne fonctionne pas pour les lettres accentuées, qui ne sont pas dans la table ASCII
Table ASCII 7 bits complète
Décimal | Octal | Hex | Binaire | Caractère | Info |
---|---|---|---|---|---|
000 | 000 | 00 | 0000000 | NUL | (Null char.) |
001 | 001 | 01 | 0000001 | SOH | (Start of Header) |
002 | 002 | 02 | 0000010 | STX | (Start of Text) |
003 | 003 | 03 | 0000011 | ETX | (End of Text) |
004 | 004 | 04 | 0000100 | EOT | (End of Transmission) |
005 | 005 | 05 | 0000101 | ENQ | (Enquiry) |
006 | 006 | 06 | 0000110 | ACK | (Acknowledgment) |
007 | 007 | 07 | 0000111 | BEL | (Bell) |
008 | 010 | 08 | 0001000 | BS | (Backspace) |
009 | 011 | 09 | 0001001 | HT | (Horizontal Tab) |
010 | 012 | 0A | 0001010 | LF | (Line Feed) |
011 | 013 | 0B | 0001011 | VT | (Vertical Tab) |
012 | 014 | 0C | 0001100 | FF | (Form Feed) |
013 | 015 | 0D | 0001101 | CR | (Carriage Return) |
014 | 016 | 0E | 0001110 | SO | (Shift Out) |
015 | 017 | 0F | 0001111 | SI | (Shift In) |
016 | 020 | 10 | 0010000 | DLE | (Data Link Escape) |
017 | 021 | 11 | 0010001 | DC1 | (XON)(Device Control 1) |
018 | 022 | 12 | 0010010 | DC2 | (Device Control 2) |
019 | 023 | 13 | 0010011 | DC3 | (XOFF)(Device Control 3) |
020 | 024 | 14 | 0010100 | DC4 | (Device Control 4) |
021 | 025 | 15 | 0010101 | NAK | (Negative Acknowledgement) |
022 | 026 | 16 | 0010110 | SYN | (Synchronous Idle) |
023 | 027 | 17 | 0010111 | ETB | (End of Trans. Block) |
024 | 030 | 18 | 0011000 | CAN | (Cancel) |
025 | 031 | 19 | 0011001 | EM | (End of Medium) |
026 | 032 | 1A | 0011010 | SUB | (Substitute) |
027 | 033 | 1B | 0011011 | ESC | (Escape) |
028 | 034 | 1C | 0011100 | FS | (File Separator) |
029 | 035 | 1D | 0011101 | GS | (Group Separator) |
030 | 036 | 1E | 0011110 | RS | (Request to Send)(Record Separator) |
031 | 037 | 1F | 0011111 | US | (Unit Separator) |
032 | 040 | 20 | 0100000 | SP | (Space) |
033 | 041 | 21 | 0100001 | ! | |
034 | 042 | 22 | 0100010 | " | |
035 | 043 | 23 | 0100011 | # | |
036 | 044 | 24 | 0100100 | $ | |
037 | 045 | 25 | 0100101 | % | |
038 | 046 | 26 | 0100110 | & | |
039 | 047 | 27 | 0100111 | ' | |
040 | 050 | 28 | 0101000 | ( | |
041 | 051 | 29 | 0101001 | ) | |
042 | 052 | 2A | 0101010 | * | |
043 | 053 | 2B | 0101011 | + | |
044 | 054 | 2C | 0101100 | , | |
045 | 055 | 2D | 0101101 | - | |
046 | 056 | 2E | 0101110 | . | |
047 | 057 | 2F | 0101111 | / | |
048 | 060 | 30 | 0110000 | 0 | |
049 | 061 | 31 | 0110001 | 1 | |
050 | 062 | 32 | 0110010 | 2 | |
051 | 063 | 33 | 0110011 | 3 | |
052 | 064 | 34 | 0110100 | 4 | |
053 | 065 | 35 | 0110101 | 5 | |
054 | 066 | 36 | 0110110 | 6 | |
055 | 067 | 37 | 0110111 | 7 | |
056 | 070 | 38 | 0111000 | 8 | |
057 | 071 | 39 | 0111001 | 9 | |
058 | 072 | 3A | 0111010 | : | |
059 | 073 | 3B | 0111011 | ; | |
060 | 074 | 3C | 0111100 | < | |
061 | 075 | 3D | 0111101 | = | |
062 | 076 | 3E | 0111110 | > | |
063 | 077 | 3F | 0111111 | ? | |
064 | 100 | 40 | 1000000 | @ | |
065 | 101 | 41 | 1000001 | A | |
066 | 102 | 42 | 1000010 | B | |
067 | 103 | 43 | 1000011 | C | |
068 | 104 | 44 | 1000100 | D | |
069 | 105 | 45 | 1000101 | E | |
070 | 106 | 46 | 1000110 | F | |
071 | 107 | 47 | 1000111 | G | |
072 | 110 | 48 | 1001000 | H | |
073 | 111 | 49 | 1001001 | I | |
074 | 112 | 4A | 1001010 | J | |
075 | 113 | 4B | 1001011 | K | |
076 | 114 | 4C | 1001100 | L | |
077 | 115 | 4D | 1001101 | M | |
078 | 116 | 4E | 1001110 | N | |
079 | 117 | 4F | 1001111 | O | |
080 | 120 | 50 | 1010000 | P | |
081 | 121 | 51 | 1010001 | Q | |
082 | 122 | 52 | 1010010 | R | |
083 | 123 | 53 | 1010011 | S | |
084 | 124 | 54 | 1010100 | T | |
085 | 125 | 55 | 1010101 | U | |
086 | 126 | 56 | 1010110 | V | |
087 | 127 | 57 | 1010111 | W | |
088 | 130 | 58 | 1011000 | X | |
089 | 131 | 59 | 1011001 | Y | |
090 | 132 | 5A | 1011010 | Z | |
091 | 133 | 5B | 1011011 | [ | |
092 | 134 | 5C | 1011100 | \ | |
093 | 135 | 5D | 1011101 | ] | |
094 | 136 | 5E | 1011110 | ^ | |
095 | 137 | 5F | 1011111 | _ | |
096 | 140 | 60 | 1100000 | ` | |
097 | 141 | 61 | 1100001 | a | |
098 | 142 | 62 | 1100010 | b | |
099 | 143 | 63 | 1100011 | c | |
100 | 144 | 64 | 1100100 | d | |
101 | 145 | 65 | 1100101 | e | |
102 | 146 | 66 | 1100110 | f | |
103 | 147 | 67 | 1100111 | g | |
104 | 150 | 68 | 1101000 | h | |
105 | 151 | 69 | 1101001 | i | |
106 | 152 | 6A | 1101010 | j | |
107 | 153 | 6B | 1101011 | k | |
108 | 154 | 6C | 1101100 | l | |
109 | 155 | 6D | 1101101 | m | |
110 | 156 | 6E | 1101110 | n | |
111 | 157 | 6F | 1101111 | o | |
112 | 160 | 70 | 1110000 | p | |
113 | 161 | 71 | 1110001 | q | |
114 | 162 | 72 | 1110010 | r | |
115 | 163 | 73 | 1110011 | s | |
116 | 164 | 74 | 1110100 | t | |
117 | 165 | 75 | 1110101 | u | |
118 | 166 | 76 | 1110110 | v | |
119 | 167 | 77 | 1110111 | w | |
120 | 170 | 78 | 1111000 | x | |
121 | 171 | 79 | 1111001 | y | |
122 | 172 | 7A | 1111010 | z | |
123 | 173 | 7B | 1111011 | { | |
124 | 174 | 7C | 1111100 | | | |
125 | 175 | 7D | 1111101 | } | |
126 | 176 | 7E | 1111110 | ~ | |
127 | 177 | 7F | 1111111 | DEL | (Delete) |
Les valeurs de 128 à 255 n'existent pas dans la table ASCII. Il existent d'autres tables souvent appelées ASCII étendu qui complètent le code ASCII mais ce ne sont pas de l'ASCII.
Utiliser une autre table de codage comme l'Unicode ou en Europe la norme ISO/CEI 8859-1 Latin qui reprend la table ASCII dans sa première partie (de 0 à 127) puis des caractères spécifiques pour les numéros suivants (128-255).
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ | ||||||||||||||||
1_ | ||||||||||||||||
2_ | ␣ | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
3_ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4_ | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
5_ | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
6_ | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
7_ | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | |
8_ | ||||||||||||||||
9_ | ||||||||||||||||
A_ | ⌴ | ¡ | ¢ | £ | ¤ | ¥ | ¦ | § | ¨ | © | ª | « | ¬ | - | ® | ¯ |
B_ | ° | ± | ² | ³ | ´ | µ | ¶ | · | ¸ | ¹ | º | » | ¼ | ½ | ¾ | ¿ |
C_ | À | Á | Â | Ã | Ä | Å | Æ | Ç | È | É | Ê | Ë | Ì | Í | Î | Ï |
D_ | Ð | Ñ | Ò | Ó | Ô | Õ | Ö | × | Ø | Ù | Ú | Û | Ü | Ý | Þ | ß |
E_ | à | á | â | ã | ä | å | æ | ç | è | é | ê | ë | ì | í | î | ï |
F_ | ð | ñ | ò | ó | ô | õ | ö | ÷ | ø | ù | ú | û | ü | ý | þ | ÿ |
Tous les caractères non visibles sont des caractères de controle (voir la table ASCII de 1 à 31)
La principale différence entre ASCII et Unicode réside dans l'étendue des caractères qu'ils peuvent représenter. ASCII utilise une table de caractères de 128 codes, ce qui convient pour représenter les caractères anglais de base. En revanche, Unicode est une norme plus récente qui utilise une table de caractères beaucoup plus étendue, permettant de représenter des milliers de caractères utilisés dans différentes langues et scripts à travers le monde.
dCode se réserve la propriété du code source pour "Code ASCII". Sauf code licence open source explicite (indiqué Creative Commons / gratuit), l'algorithme pour "Code ASCII", l'applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou les fonctions liées à "Code ASCII" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou les données, en téléchargement, script, ou les accès API à "Code ASCII" ne sont pas publics, idem pour un usage hors ligne, PC, mobile, tablette, appli iPhone ou Android !
Rappel : dCode est gratuit.
Le copier-coller de la page "Code ASCII" ou de ses résultats est autorisée (même pour un usage commercial) tant que vous créditez dCode !
L'exportation des résultats sous forme de fichier .csv ou .txt est gratuite en cliquant sur l'icone export
Citer comme source bibliographique :
Code ASCII sur dCode.fr [site web en ligne], consulté le 21/12/2024,