Le codage ASCII☘
ASCII (American Standard Code for Information Interchange) est une norme informatique de codage des caractères anglais apparue dans les années 1960.
La table ASCII ci-dessous fournit la correspondance entre 128 = 2⁷ caractères et leur représentation binaire :
Les deux premières lignes contiennent des caractères de contrôle qui ne sont
pas forcément visibles à l'écran (comme le retour à la ligne CR
par exemple).
Caractères de contrôle
Exemples
Pour déterminer la représentation binaire d'un caractère dans la table, on lit d'abord le numéro de ligne, puis le numéro de colonne.
- La représentation binaire du caractère
'a'
est0110 0001
. - La représentation binaire du caractère
'T'
est0101 0100
. - La représentation binaire du caractère
'8'
est0011 1000
.
Représentation hexadécimale☘
Comme pour la représentation des entiers, les séquences de 4 bits peuvent être regroupées en une valeur hexadécimale. Cela donne la table ci-dessous :
Python et le codage ASCII☘
Python intègre nativement des méthodes et fonctions permettant de convertir un caractère en représentation ASCII décimale (entre 0 et 127).
Représentation ASCII décimale
Pour déterminer cette représentation, il suffit de convertir en base 10 la représentation binaire (ou la représentation hexadécimale) du caractère recherché. Ainsi :
- les entiers entre 48 et 57 représentent les caractères de '0' à '9' ;
- les entiers entre 65 et 90 représentent les caractères de 'A' à 'Z' ;
- les entiers entre 97 et 122 représentent les caractères de 'a' à 'z'.
- La fonction
ord()
de Python renvoie la valeur décimale ASCII du caractère passé en paramètre. - La fonction
chr()
renvoie le caractère représenté par la valeur décimale ASCII passée en paramètre.
Exemples
>>> ord('b')
98
>>> chr(65)
'A'
La boucle ci-dessous affiche la liste des caractères et leur représentation décimale ASCII :
for i in range(128):
print(f'Valeur ASCII : {i}\t Caractère : {chr(i)}')