Le codage des caractères

 

retour


(ABCD = 43981)

Bien qu'il ait eu plusieurs types de codage depuis le début de l'informatique, en particulier l'EBCDIC utilisé sur les grosses machines (Main Frames), c'est actuellement le code ASCII (American Standard Code for Information Interchange), et ses dérivés, qui est universellement utilisé pour coder les caractères.

L'ASCII est donc un codage qui attribue une valeur numérique pour les caractères alpahanumériques, les caractères de ponctuation, et aussi pour certains caractéres spéciaux comme : +, -, =, >, <, etc... etc...
Les 32 premiers codes (0 à 31) sont des caractères de commande
(par exemple) :

10 = LF (saut de ligne)
13 = CR (retour chariot - Entrée)
08 = BS (retour en arrière)
etc...

Les 32 caractères suivants sont les symboles #, %, +, - etc... et les chiffres (de 48 a 57)

48 = "0"
49 = "1"
...........
57 = "9"

les 64 derniers caractères sont les lettres (majuscules et minuscules) et quelques symboles...

65 (41 Hexa) = "A"
66 (42 Hexa) = "B"
........
97 (61 Hexa) = "a"
.......
125 (7D h) = "}"

etc....

Vous trouverez facilement le tableau des caractères ASCII dans tous les livres d'informatique.

Le code ASCII standard IEEE, utilise seulement les 7 premiers bits de l'octet. Il est donc possible de coder 128 caractères. Le bit de fort poids étant réservé à des codes spéciaux de contrôle ou de commande.
Les Américains à l'origine de l'ASCII, n'avaient peut être pas prévu que les Européens, et particulièrement les Français, feraient aussi de l'informatique.... et que leur alphabet comportait des lettres accentuées, des "c" cédille, etc...
Ils n'avaient pas non plus pensé qu'un jour nous aurions besoin d'un nouveau caractère : l'...EURO !



IBM a très vite apporté une solution en introduisant l'ASCII étendu à 256 caractères.
C'est ce codage qui est utilisé par MS-DOS sur les PC.
Les caractères standards sont les mêmes en ASCII / IEEE et IBM, et les caractères accentués et spéciaux sont dans la zône étendue, entre 128 et 255.

Par exemple la lettre "e" accent aigu a pour valeur : 130 (82 Hexa)

Le "a" accent grave = 133 (85 Hexa)
Le "c" cedille = 135 (87 Hexa) etc...

Alors nous sommes sauvés ! plus de problème pour écrire des textes avec les caractères français accentués ..!
... Eh bien non ! il y a encore un problème ! Windows n'utilise pas le codage IBM, mais l'ANSI !
Il a toujours 256 caractères, mais le "e" accent aigu n'a plus pour valeur 82h mais E9h

L'ANSI (American National Standards Institute) a été choisi en raison des nombreux problèmes rencontrés dans les messageries qui utilisaient toutes sortes d'OS et en particulier UNIX...
L' ANSI a remplacé tous les codes semi-graphiques d'IBM par des caractères nouveaux (le "?" inversé espagnol, les majuscules accentuées, etc... etc...)
Mais cela pose évidemment le problème des textes écrits avec un éditeur MS-DOS, et lus avec un éditeur Windows, et vice versa !

Dans tous les cas il vaut mieux choisir un terminal ANSI qui sera, en principe, compris par tout le monde !

Sur INTERNET, les éditeurs de texte de courrier (mailers) sont généralement configurés avec les options : text/plain; charset="iso-8859-1"

Nota: Le problème se pose également en Packet-Radio. Un message avec des lettres accentuées écrit avec l'éditeur de TPK (MS-DOS) , donne des signes cabalistiques avec Eudora ou Pegasus, sous Windows!

C'est la raison pour laquelle tous les articles sont écrits dans le réseau BBS-FBB, sans caractères accentués... I'm sorry !

C'est aussi la raison pour laquelle les belles signatures entourées d'un cadre et de petits dessins, sont complètement explosées... quand elles sont lues avec un "mailer" windows.

Dans l'avenir, les logiciels migreront de plus en plus vers des applicatifs Windows...

Evitez de faire des fioritures avec les caractères semi-graphiques d'IBM !