Au commencement, chaque caractère était identifié par un code unique qui est un entier naturel et la correspondance entre le caractère et son code était appelée un Charset. Le code n'étant pas utilisable tel quel par un ordinateur qui ne comprend que le binaire, il fallut donc représenter les codes par des octets, et cela fut appelé Encoding. Dans de nombreux grimoires anciens on découvre le code ASCII qui était utilisé pour représenter du texte en informatique. ASCII signifiait American Standart Code for Information Interchange. Il paraît que ce code est toujours en usage...
Les créateurs de ce code limitèrent le nombre de ses caractères à 128 (c'est à dire 2 puissance 7), pour qu'ils puissent être codés avec seulement 7 bits : les ordinateurs utilisaient des cases mémoires de un octet , mais ils réservaient toujours le 8e bit pour le contrôle de parité (c'est une sécurité pour éviter les erreurs, qui étaient très fréquentes dans les premières mémoires électroniques).
Quelle est la taille (en octets) de la phrase : "Enfin ! Je viens de comprendre ce qui s'est produit."
Vérifiez en tapant cette phrase avec un éditeur de texte quelconque comme le bloc-notes de Windows, enregistrez-le en tant que "texte brut" (le plus souvent avec une extension .txt) en ensuite vérifiez la taille en octet du fichier obtenu (cliquer sur l'icone du fichier puis sur "Propriétés").
Faites ensuite la même chose mais en utilisant un logiciel de traitement de texte (LibreOffice Writer ou Microsoft Word).
01000010   01110010   01100001   01110110   01101111   00101100
Retrouver cette exclamation !Il va donc falloir étendre la table ASCII pour pouvoir coder les nouveaux caractères. Les mémoires devenant plus fiables et, de nouvelle méthodes plus sûres que le controle de parité ayant été inventées, le 8ème bit a pu être utilisé pour coder plus de caractères.
On élimine ainsi l'inconvénient très gênant de ne coder que les lettre non accentuées, ce qui peut suffire en anglais, mais pas dans les autres langues (comme le français et l'espagnol par exemple). On a pu aussi rajouter des caractères typographiques utiles comme des tirets de diverses tailles et sortes.
Par exemple, en français les caractères é, è, ç, à, ù, ô, æ,
Le fait d'utiliser un bit supplémentaire a bien entendu ouvert des possibilités mais malheureusement tous les caractères ne pouvaient être pris en charge. La norme ISO 8859-1 appelée aussi Latin-1 ou Europe occidentale est la première partie d'une norme plus complète appelée ISO 8859 (qui comprend 16 parties) et qui permet de coder tous les caractères des langues européennes. Cette norme ISO 8859-1 permet de coder 191 caractères de l'alphabet latin qui avaient à l'époque été jugés essentiels dans l'écriture, mais omet quelques caractères fort utiles (ainsi la ligature n'y figure pas).
Dans les pays occidentaux, cette norme est utilisée par de nombreux systèmes d'exploitation, dont UNIX, Windows. Elle a donné lieu à quelques extensions et adaptations, dont Windows-1252 (appelée ANSI) et ISO 8859-15(qui prend en compte le symbole € créé après la norme ISO 8859-1). C'est source de grande confusion pour les développeurs de programmes informatiques car un même caractère peut être codé différemment suivant la norme utilisée.
On commence par se connecter au site suivant : https://wiki.inria.fr/sciencinfolycee/Convertisseur_texte/binaire/hexa_en_ligne
Voici le code binaire d'un texte : 01000010   01110010   01100001   01110110   01101111   00101100   00100000   01110100   01110101   00100000 01100001   01110011   00100000   01110000   01110010   01100101   01110011   01110001   01110101   01100101 00100000   01110100   01101111   01110101   01110100   00100000   01110100   01110010   01101111   01110101 01110110   11101001   00101110   00101110   00101110Nous avons tous un jour reçu un courriel bizarre ou lu une page web telle que celle-ci :
La globalisation des échanges culturels et économiques a mis l'accent sur le fait que les langues européennes coexistent avec de nombreuses autres langues aux alphabets spécifiques voire sans alphabet. La généralisation de l'utilisation d'Internet dans le monde a nécessité une prise en compte d'un nombre beaucoup plus importants de caractères d'écriture (par exemple le mandarin possède plus de 5000 caractères !). Une autre motivation pour cette évolution résidait dans les possibles confusions dues au trop faible nombre de caractères pris en compte ; ainsi, les symboles monétaires des différents pays n'étaient pas touts représentés dans le système ISO 8859-1, de sorte que les ordres de paiement internationaux transmis par courier électronique risquaient d'être mal compris. La norme Unicode a donc été créée pour permettre le codage de textes écrits quelque soit le système d'écriture utilisé. On attribue à chaque caractère un nom, une position normative et un bref descriptif qui seront les mêmes quelque soit la plate-forme informatique ou le logiciel utilisés. Un consortium composé d'informaticiens, de chercheurs, de linguistes, de personnalités du monde de la politique... s'occupe donc d'unifier toutes les pratiques en un seul et même système : l'Unicode.
L' Unicode est une table de correspondance Caractère-Code (Charset), et l'UTF-8 est l'encodage correspondant (Encoding) le plus répandu. Maintenant, par défaut, les navigateurs Internet utilisent le codage UTF-8 et les concepteurs de sites pensent de plus en plus à créer leurs pages web en prenant en compte cette même norme. Voilà pourquoi il y a de moins en moins de problèmes de compatibilité.
Ouvrez cette page avec Firefox. Dans la barre d'outils on peut voir à « Affichage », « Encodage des caractères » que c'est l'UTF-8 qui est sélectionné par défaut. Changeons ceci et sélectionnons Europe Occidentale (Windows). Les petits caractères désagréables apparaissent. Que s'est-il passé ? En allant dans « Outils », « Informations sur la page », on voit que cette page est encodée en UTF-8. Lorsque le lecteur est lui aussi en UTF-8 tout va bien. Dès qu'on change le paramètre du lecteur (ici, le navigateur), des incompatibilités apparaissent.
Faire apparaître, à présent le code source de cette page. Où se situe l'information relative à l'encodage ?
On peut aussi dans « Affichage », « Codage », sélectionner Grec (ISO) et se rendre compte en lisant le texte, que le « à » a été remplacé par un « L » à l'envers dit Gamma.