Traducteur de mots en code binaire. Codes binaires. Caractéristiques du codage vidéo binaire

Profondeur de bits du code binaire, Conversion des informations de la forme continue à la forme discrète, Universalité du codage binaire, Codes uniformes et non uniformes, Informatique 7e année Bosova, Informatique 7e année

1.5.1. Conversion d'informations d'une forme continue à une forme discrète
Pour résoudre ses problèmes, une personne doit souvent transformer des informations existantes d'une forme de représentation à une autre. Par exemple, lors de la lecture à haute voix, les informations sont converties d'une forme discrète (texte) à une forme continue (son). Au contraire, lors d’une dictée dans un cours de langue russe, l’information passe d’une forme continue (la voix du professeur) à une forme discrète (les notes des élèves).
Les informations présentées sous forme discrète sont beaucoup plus faciles à transmettre, à stocker ou à traiter automatiquement. Par conséquent, dans la technologie informatique, une grande attention est accordée aux méthodes de conversion des informations d'une forme continue à une forme discrète.
La discrétisation de l'information est le processus de conversion de l'information d'une forme continue de représentation à une forme discrète.
Examinons l'essence du processus d'échantillonnage d'informations à l'aide d'un exemple.
Les stations météorologiques disposent d'enregistreurs pour l'enregistrement continu de la pression atmosphérique. Le résultat de leur travail sont des barogrammes - des courbes montrant l'évolution de la pression sur de longues périodes de temps. L'une de ces courbes, tracée par l'appareil pendant sept heures d'observation, est représentée sur la Fig. 1.9.

Sur la base des informations reçues, vous pouvez construire un tableau contenant les relevés des instruments au début des mesures et à la fin de chaque heure d'observation (Fig. 1.10).

Le tableau obtenu ne donne pas une image complètement complète de l'évolution de la pression au cours de la période d'observation : par exemple, la valeur de pression la plus élevée survenue au cours de la quatrième heure d'observation n'est pas indiquée. Mais si vous totalisez les valeurs de pression observées toutes les demi-heures ou 15 minutes, le nouveau tableau donnera une image plus complète de l'évolution de la pression.
Ainsi, nous avons converti les informations présentées sous forme continue (barogramme, courbe) en forme discrète (tableau) avec une certaine perte de précision.
À l’avenir, vous vous familiariserez avec les manières de représenter discrètement des informations audio et graphiques.

Des chaînes de trois symboles binaires sont obtenues en complétant les codes binaires à deux chiffres à droite avec le symbole 0 ou 1. En conséquence, les combinaisons de codes de trois symboles binaires sont 8 - deux fois plus que celles de deux symboles binaires :
En conséquence, un binaire à quatre bits vous permet d'obtenir 16 combinaisons de codes, un à cinq bits - 32, un à six bits - 64, etc. La longueur de la chaîne binaire - le nombre de caractères dans le code binaire - est appelé la profondeur de bits du code binaire.
Noter que:
4 = 2 * 2,
8 = 2 * 2 * 2,
16 = 2 * 2 * 2 * 2,
32 = 2 * 2 * 2 * 2 * 2 etc.
Ici, le nombre de combinaisons de codes est le produit d'un certain nombre de facteurs identiques égal à la profondeur de bits du code binaire.
Si le nombre de combinaisons de codes est désigné par la lettre N et la profondeur de bits du code binaire par la lettre i, alors le motif identifié sous forme générale s'écrira comme suit :
N = 2 * 2 * ... * 2.
je facteurs
En mathématiques, ces produits s'écrivent sous la forme :
N = 2 je.
L'entrée 2 i se lit comme suit : « 2 à la i-ième puissance ».

Tâche. Le chef de la tribu Multi a demandé à son ministre de développer un système binaire et d'y traduire toutes les informations importantes. Quelle taille de binaire sera requise si l'alphabet utilisé par la tribu Multi contient 16 caractères ? Notez toutes les combinaisons de codes.
Solution. Étant donné que l'alphabet multi-tribus est composé de 16 caractères, ils ont besoin de 16 combinaisons de codes. Dans ce cas, la longueur (profondeur de bits) du code binaire est déterminée à partir du rapport : 16 = 2 i. Donc i = 4.
Pour écrire toutes les combinaisons de codes de quatre 0 et 1, nous utilisons le diagramme de la Fig. 1.13 : 0000, 0001, 0010, 0011, 0100, 0101, 0110,0111,1000,1001,1010,1011,1100,1101,1110,1111.

1.5.3. La polyvalence du codage binaire
Au début de cette section, vous avez appris que, représenté sous forme continue, il peut être exprimé à l'aide de symboles dans un langage naturel ou formel. À leur tour, les caractères d’un alphabet arbitraire peuvent être convertis en binaire. Ainsi, à l'aide du code binaire, tous les langages naturels et formels, ainsi que les images et les sons, peuvent être représentés (Fig. 1.14). Cela signifie l'universalité du codage binaire.
Les codes binaires sont largement utilisés en technologie informatique, ne nécessitant que deux états d'un circuit électronique - « activé » (cela correspond au chiffre 1) et « off » (cela correspond au chiffre 0).
La simplicité de mise en œuvre technique est le principal avantage du codage binaire. L’inconvénient du codage binaire est la grande longueur du code obtenu.

1.5.4. Codes uniformes et non uniformes
Il existe des codes uniformes et non uniformes. Les codes uniformes dans les combinaisons de codes contiennent le même nombre de symboles, les codes impairs contiennent un nombre différent.
Ci-dessus, nous avons examiné les codes binaires uniformes.
Un exemple de code non uniforme est le code Morse, dans lequel une séquence de signaux courts et longs est définie pour chaque lettre et chiffre. Ainsi, la lettre E correspond à un signal court (« point »), et la lettre Ш correspond à quatre signaux longs (quatre « tirets »). Inégal vous permet d'augmenter la vitesse de transmission des messages car les symboles apparaissant le plus fréquemment dans les informations transmises ont les combinaisons de codes les plus courtes.

L'information que donne ce symbole est égale à l'entropie du système et est maximale dans le cas où les deux états sont également probables ; dans ce cas, le symbole élémentaire véhicule l'information 1 (deux unités). Par conséquent, la base d'un codage optimal sera l'exigence que les caractères élémentaires du texte codé apparaissent en moyenne aussi souvent.

Présentons ici une méthode pour construire un code qui satisfait à la condition énoncée ; Cette méthode est connue sous le nom de code de Shannon-Fano. Son idée est que les symboles codés (lettres ou combinaisons de lettres) sont divisés en deux groupes à peu près également probables : pour le premier groupe de symboles, 0 est placé à la première place de la combinaison (le premier caractère du nombre binaire représentant le symbole); pour le deuxième groupe - 1. Ensuite, chaque groupe est à nouveau divisé en deux sous-groupes à peu près également probables ; pour les symboles du premier sous-groupe, zéro est placé en deuxième place ; pour le deuxième sous-groupe - un, etc.

Démontrons le principe de construction du code de Shannon-Fano en utilisant le matériau de l'alphabet russe (tableau 18.8.1). Comptons les six premières lettres (de « - » à « t ») ; en résumant leurs probabilités (fréquences), nous obtenons 0,498 ; toutes les autres lettres (de « n » à « sf ») auront approximativement la même probabilité de 0,502. Les six premières lettres (de « - » à « t ») auront en premier lieu un 0 binaire. Les lettres restantes (de « n » à « f ») auront en premier lieu un un. Ensuite, nous divisons à nouveau le premier groupe en deux sous-groupes à peu près également probables : de « - » à « o » et de « e » à « t » ; pour toutes les lettres du premier sous-groupe, nous mettrons en deuxième lieu zéro, et du deuxième sous-groupe - un. Nous continuerons le processus jusqu'à ce qu'il reste exactement une lettre dans chaque division, qui sera codée avec un certain nombre binaire. Le mécanisme pour construire le code est présenté dans le tableau 18.8.2, et le code lui-même est donné dans le tableau 18.8.3.

Tableau 18.8.2.

Signes binaires

Tableau 18.8.3

À l'aide du tableau 18.8.3, vous pouvez encoder et décoder n'importe quel message.

À titre d’exemple, écrivons l’expression « théorie de l’information » en code binaire.

01110100001101000110110110000

0110100011111111100110100

1100001011111110101100110

Notez qu'il n'est pas nécessaire de séparer les lettres les unes des autres par un signe spécial, puisque le décodage s'effectue sans ambiguïté même sans cela. Vous pouvez le vérifier en décodant la phrase suivante à l'aide du tableau 18.8.2 :

10011100110011001001111010000

1011100111001001101010000110101

010110000110110110

(« méthode de codage »).

Il faut cependant noter que toute erreur d'encodage (confusion aléatoire des caractères 0 et 1) avec un tel code est désastreuse, puisque décoder tout le texte suivant l'erreur devient impossible. Par conséquent, ce principe de codage ne peut être recommandé que dans les cas où les erreurs de codage et de transmission d'un message sont pratiquement éliminées.

Une question naturelle se pose : le code que nous avons compilé, en l’absence d’erreurs, est-il vraiment optimal ? Pour répondre à cette question, trouvons l'information moyenne par symbole élémentaire (0 ou 1) et comparons-la avec le maximum d'informations possible, qui est égal à une unité binaire. Pour ce faire, on trouve d'abord l'information moyenne contenue dans une lettre du texte transmis, soit l'entropie par lettre :

,

où est la probabilité que la lettre prenne un certain état (« - », o, e, a,..., f).

De la table 18.8.1 nous avons

(deux unités par lettre de texte).

A l'aide du tableau 18.8.2, on détermine le nombre moyen de symboles élémentaires par lettre

En divisant l'entropie par, on obtient l'information par symbole élémentaire

(deux unités).

Ainsi, l'information par caractère est très proche de sa limite supérieure de 1, et le code que nous avons choisi est très proche de celui optimal. En restant dans les limites du codage des lettres, on ne peut pas faire mieux.

Notez que dans le cas d'un codage de nombres de lettres simplement binaires, nous aurions une image de chaque lettre avec cinq caractères binaires et les informations pour un caractère seraient

(deux unités),

c'est-à-dire sensiblement moins qu'avec un codage de lettres optimal.

Il convient toutefois de noter que le codage « par lettre » n’est pas du tout économique. Le fait est qu’il existe toujours une dépendance entre les lettres adjacentes de tout texte significatif. Par exemple, après une voyelle en russe, il ne peut pas y avoir « ъ » ou « ь » ; « Je » ou « yu » ne peuvent pas apparaître après les sifflements ; après plusieurs consonnes d'affilée, la probabilité d'une voyelle augmente, etc.

Nous savons que lorsque des systèmes dépendants sont combinés, l’entropie totale est inférieure à la somme des entropies des systèmes individuels ; par conséquent, l'information véhiculée par un morceau de texte connecté est toujours inférieure à l'information par caractère multipliée par le nombre de caractères. Compte tenu de cette circonstance, un code plus économique peut être construit si vous ne codez pas chaque lettre individuellement, mais des « blocs » entiers de lettres. Par exemple, dans un texte russe, il est logique d'encoder entièrement certaines combinaisons de lettres fréquentes, telles que « tsya », « ayet », « nie », etc. Les blocs codés sont classés par ordre décroissant de fréquence, comme les lettres dans la table. 18.8.1, et le codage binaire s'effectue selon le même principe.

Dans certains cas, il s'avère raisonnable de coder non même des blocs de lettres, mais des morceaux de texte entiers et significatifs. Par exemple, pour soulager le télégraphe pendant les vacances, il convient d'encoder des textes standards entiers avec des nombres conventionnels, tels que :

"Félicitations pour la nouvelle année, je vous souhaite une bonne santé et du succès dans votre travail."

Sans nous attarder spécifiquement sur les méthodes de codage par blocs, nous nous limiterons à formuler le théorème de Shannon évoqué ici.

Soit une source d'information et un récepteur connectés par un canal de communication (Fig. 18.8.1).

La productivité de la source d'information est connue, c'est-à-dire le nombre moyen d'unités d'information binaires provenant de la source par unité de temps (numériquement elle est égale à l'entropie moyenne du message produit par les sources par unité de temps). Connaître en outre la capacité du canal, c'est-à-dire la quantité maximale d'informations (par exemple, les caractères binaires 0 ou 1) que le canal est capable de transmettre dans la même unité de temps. La question se pose : quelle doit être la capacité du canal pour qu'il « fasse face » à sa tâche, c'est-à-dire pour que l'information arrive sans délai de la source au récepteur ?

La réponse à cette question est donnée par le premier théorème de Shannon. Formulons-le ici sans preuve.

1er théorème de Shannon

Si la capacité du canal de communication est supérieure à l'entropie de la source d'information par unité de temps

alors il est toujours possible de coder un message suffisamment long pour qu'il soit transmis par un canal de communication sans délai. Si au contraire

alors le transfert d'informations sans délai est impossible.

La signification du terme « binaire » est qu’il se compose de deux parties ou composants. Ainsi, les codes binaires sont des codes constitués de seulement deux états symboliques, tels que noir ou blanc, clair ou foncé, conducteur ou isolant. Un code binaire en technologie numérique est une manière de représenter des données (nombres, mots et autres) comme une combinaison de deux caractères, qui peuvent être désignés par 0 et 1. Les caractères ou unités de BC sont appelés bits. L'une des justifications de l'utilisation du BC est la simplicité et la fiabilité du stockage d'informations sur n'importe quel support sous la forme d'une combinaison de seulement deux de ses états physiques, par exemple sous la forme d'un changement ou d'une constance du flux lumineux lorsque lecture à partir d'un disque à code optique.
Il existe différentes possibilités de codage des informations.

Code binaire

En technologie numérique, méthode de représentation de données (nombres, mots et autres) sous la forme d'une combinaison de deux caractères, qui peuvent être désignés par 0 et 1. Les signes ou unités du DC sont appelés bits.

L'une des justifications de l'utilisation du DC est la simplicité et la fiabilité du stockage d'informations sur n'importe quel support sous la forme d'une combinaison de seulement deux de ses états physiques, par exemple sous la forme d'un changement ou d'une constance du flux magnétique dans une cellule donnée du support d'enregistrement magnétique.

Le plus grand nombre pouvant être exprimé en binaire dépend du nombre de chiffres utilisés, c'est-à-dire sur le nombre de bits dans la combinaison exprimant le nombre. Par exemple, pour exprimer les valeurs numériques de 0 à 7, il suffit d'avoir un code à 3 chiffres ou 3 bits :

valeur numérique code binaire
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

De là, nous pouvons voir que pour un nombre supérieur à 7 avec un code à 3 chiffres, il n'y a plus de combinaisons de codes 0 et 1.

Passant des nombres aux grandeurs physiques, formulons l'énoncé ci-dessus sous une forme plus générale : le plus grand nombre de valeurs m de toute grandeur (température, tension, courant, etc.), qui peut être exprimée en code binaire, dépend sur le nombre de bits utilisés n comme m= 2n. Si n=3, comme dans l’exemple considéré, alors on obtient 8 valeurs, dont 0 en tête.
Le code binaire est un code à plusieurs étapes. Cela signifie que lors du passage d'une position (valeur) à une autre, plusieurs bits peuvent changer simultanément. Par exemple, le chiffre 3 en code binaire = 011. Le chiffre 4 en code binaire = 100. Ainsi, lors du passage de 3 à 4, les 3 bits changent simultanément d'état à l'opposé. La lecture d'un tel code à partir d'un disque codé conduirait au fait qu'en raison d'inévitables écarts (tolérances) lors de la production d'un disque codé, un changement d'information de chacune des pistes séparément ne se produira jamais simultanément. Cela conduirait à son tour au fait que lors du passage d'un numéro à un autre, des informations incorrectes seraient brièvement fournies. Ainsi, lors de la transition mentionnée ci-dessus du chiffre 3 au chiffre 4, une sortie à court terme du chiffre 7 est très probable lorsque, par exemple, le bit le plus significatif lors de la transition a changé de valeur un peu plus tôt que le reste. . Pour éviter cela, un code dit en une étape est utilisé, par exemple le code Gray.

Code gris

Le code Gray est ce qu'on appelle un code en une étape, c'est-à-dire Lorsque vous passez d’un numéro à un autre, un seul élément d’information change toujours. Une erreur lors de la lecture des informations d'un disque à code mécanique lors du passage d'un numéro à un autre ne conduira qu'au fait que le passage d'une position à une autre ne sera que légèrement décalée dans le temps, mais à l'émission d'une valeur de position angulaire complètement incorrecte lorsque le passage d'une position à une autre est complètement éliminé.
Un autre avantage du Gray Code est sa capacité à refléter les informations. Ainsi, en inversant le bit le plus significatif, vous pouvez simplement changer le sens de comptage et ainsi faire correspondre le sens de rotation réel (physique) de l'axe. Changer le sens de comptage de cette manière peut être facilement modifié en contrôlant l'entrée dite « Complément ». La valeur de sortie peut ainsi être croissante ou décroissante pour un même sens physique de rotation de l'axe.
Étant donné que les informations exprimées dans le code Gray sont de nature purement codée et ne contiennent pas d'informations numériques réelles, elles doivent d'abord être converties en un code binaire standard avant un traitement ultérieur. Cela se fait à l'aide d'un convertisseur de code (décodeur Gray-Binar), qui, heureusement, est facilement implémenté à l'aide d'un circuit d'éléments logiques ou exclusifs (XOR), à la fois logiciels et matériels.

Nombres décimaux correspondants compris entre 0 et 15 jusqu'aux codes binaires et Gray

Codage binaire Codage gris
Code décimal
Valeur binaire Seize signification Code décimal Valeur binaire Seize signification
0 0000 0h 0 0000 0h
1 0001 1h 1 0001 1h
2 0010 2h 3 0011 3h
3 0011 3h 2 0010 2h
4 0100 4h 6 0110 6h
5 0101 5h 7 0111 7h
6 0110 6h 5 0101 5h
7 0111 7h 4 0100 4h
8 1000 8h 12 1100 Ch.
9 1001 9h 13 1101 DH
10 1010 Ah 15 1111 Fh
11 1011 Bh 14 1110 Eh
12 1100 Ch. 10 1010 Ah
13 1101 DH 11 1011 Bh
14 1110 Eh 9 1001 9h
15 1111 Fh 8 1000 8h

La conversion du code Gray en code binaire habituel peut être effectuée à l'aide d'un circuit simple avec des inverseurs et des portes ou exclusif, comme indiqué ci-dessous :

Code Gray-Excès

Le code Gray habituel en une étape convient aux résolutions qui peuvent être représentées par un nombre élevé à la puissance 2. Dans les cas où il est nécessaire de mettre en œuvre d'autres autorisations, la section centrale est découpée dans le code Gray normal et utilisée. De cette façon, le code reste « en une seule étape ». Cependant, la plage numérique ne commence pas à zéro, mais est décalée d'une certaine valeur. Lors du traitement des informations, la moitié de la différence entre la résolution originale et la résolution réduite est soustraite du signal généré. Des résolutions telles que 360 ? pour exprimer un angle sont souvent mis en œuvre par cette méthode. Ainsi un code Gray de 9 bits égal à 512 pas, tronqué des deux côtés de 76 pas, sera égal à 360°.

Tout le monde sait que les ordinateurs peuvent effectuer des calculs sur de grands groupes de données à une vitesse énorme. Mais tout le monde ne sait pas que ces actions ne dépendent que de deux conditions : s'il y a du courant ou non et quelle tension.

Comment un ordinateur parvient-il à traiter une telle variété d’informations ?
Le secret réside dans le système de nombres binaires. Toutes les données entrent dans l'ordinateur, présentées sous forme de uns et de zéros, chacun correspondant à un état du fil électrique : des uns - haute tension, des zéros - faible, ou des uns - présence de tension, des zéros - son absence. La conversion des données en zéros et en uns est appelée conversion binaire, et sa désignation finale est appelée code binaire.
En notation décimale, basée sur le système de nombres décimaux utilisé dans la vie quotidienne, une valeur numérique est représentée par dix chiffres de 0 à 9, et chaque place du nombre a une valeur dix fois supérieure à la place à sa droite. Pour représenter un nombre supérieur à neuf dans le système décimal, un zéro est placé à sa place et un un est placé à l'emplacement suivant, le plus précieux, à gauche. De même, dans le système binaire, qui utilise seulement deux chiffres – 0 et 1, chaque place a deux fois plus de valeur que la place située à sa droite. Ainsi, dans le code binaire, seuls zéro et un peuvent être représentés comme des nombres simples, et tout nombre supérieur à un nécessite deux places. Après zéro et un, les trois nombres binaires suivants sont 10 (lire un-zéro) et 11 (lire un-un) et 100 (lire un-zéro-zéro). 100 binaire équivaut à 4 décimal. Le tableau supérieur à droite montre d'autres équivalents BCD.
N'importe quel nombre peut être exprimé en binaire, il prend simplement plus de place qu'en décimal. L'alphabet peut également être écrit dans le système binaire si un certain nombre binaire est attribué à chaque lettre.

Deux chiffres pour quatre places
16 combinaisons peuvent être réalisées à l'aide de boules sombres et claires, en les combinant par séries de 4. Si les boules sombres sont considérées comme des zéros et les boules claires comme des 1, alors 16 séries se révéleront être un code binaire de 16 unités, la valeur numérique de qui va de zéro à cinq (voir le tableau du haut à la page 27). Même avec deux types de boules dans le système binaire, un nombre infini de combinaisons peut être construit simplement en augmentant le nombre de boules dans chaque groupe – ou le nombre de places dans les nombres.

Bits et octets

Plus petite unité de traitement informatique, un bit est une unité de données qui peut avoir l'une des deux conditions possibles. Par exemple, chacun des uns et des zéros (à droite) représente 1 bit. Un bit peut être représenté d'autres manières : la présence ou l'absence de courant électrique, un trou ou son absence, le sens de l'aimantation vers la droite ou la gauche. Huit bits constituent un octet. 256 octets possibles peuvent représenter 256 caractères et symboles. De nombreux ordinateurs traitent un octet de données à la fois.

Conversion binaire. Un code binaire à quatre chiffres peut représenter des nombres décimaux de 0 à 15.

Tableaux de codes

Lorsque le code binaire est utilisé pour représenter des lettres de l'alphabet ou des signes de ponctuation, des tables de codes sont nécessaires pour indiquer quel code correspond à quel caractère. Plusieurs de ces codes ont été compilés. La plupart des PC sont configurés avec un code à sept chiffres appelé ASCII, ou American Standard Code for Information Interchange. Le tableau de droite montre les codes ASCII de l'alphabet anglais. D'autres codes concernent des milliers de caractères et d'alphabets d'autres langues du monde.

Partie d'une table de codes ASCII

L'ensemble de caractères avec lequel le texte est écrit est appelé alphabet.

Le nombre de caractères de l'alphabet est son pouvoir.

Formule pour déterminer la quantité d'informations : N=2b,

où N est la puissance de l'alphabet (nombre de caractères),

b – nombre de bits (poids informationnel du symbole).

L'alphabet d'une capacité de 256 caractères peut accueillir presque tous les caractères nécessaires. Cet alphabet s'appelle suffisant.

Parce que 256 = 2 8, alors le poids de 1 caractère est de 8 bits.

L'unité de mesure 8 bits a reçu le nom 1 octet :

1 octet = 8 bits.

Le code binaire de chaque caractère du texte informatique occupe 1 octet de mémoire.

Comment les informations textuelles sont-elles représentées dans la mémoire de l’ordinateur ?

La commodité du codage de caractères octet par octet est évidente car un octet est la plus petite partie adressable de la mémoire et, par conséquent, le processeur peut accéder à chaque caractère séparément lors du traitement du texte. En revanche, 256 caractères sont un nombre tout à fait suffisant pour représenter une grande variété d’informations symboliques.

La question se pose maintenant de savoir quel code binaire de huit bits attribuer à chaque caractère.

Il est clair qu'il s'agit d'une question conditionnelle, vous pouvez proposer de nombreuses méthodes de codage.

Tous les caractères de l'alphabet informatique sont numérotés de 0 à 255. Chaque numéro correspond à un code binaire de huit bits allant de 00000000 à 11111111. Ce code est simplement le numéro de série du caractère dans le système de numérotation binaire.

Une table dans laquelle tous les caractères de l'alphabet informatique se voient attribuer des numéros de série est appelée table de codage.

Différents types d'ordinateurs utilisent différentes tables de codage.

La table est devenue la norme internationale pour les PC ASCII(lire aski) (American Standard Code for Information Interchange).

La table des codes ASCII est divisée en deux parties.

Seule la première moitié du tableau constitue la norme internationale, c'est-à-dire symboles avec des chiffres de 0 (00000000), jusqu'à 127 (01111111).

Structure de la table de codage ASCII

Numéro de série

Code

Symbole

0 - 31

00000000 - 00011111

Les symboles comportant des nombres de 0 à 31 sont généralement appelés symboles de contrôle.
Leur fonction est de contrôler le processus d'affichage du texte à l'écran ou d'impression, d'émettre un signal sonore, de baliser le texte, etc.

32 - 127

00100000 - 01111111

Partie standard du tableau (anglais). Cela inclut les lettres minuscules et majuscules de l’alphabet latin, les nombres décimaux, les signes de ponctuation, toutes sortes de parenthèses, les symboles commerciaux et autres.
Le caractère 32 est un espace, c'est-à-dire position vide dans le texte.
Tous les autres se traduisent par certains signes.

128 - 255

10000000 - 11111111

Partie alternative du tableau (russe).
La seconde moitié de la table de codes ASCII, appelée page de codes (128 codes, commençant par 1 000 000 et se terminant par 1 111 1111), peut avoir différentes options, chaque option ayant son propre numéro.
La page de codes est principalement utilisée pour prendre en charge les alphabets nationaux autres que le latin. Dans les codages nationaux russes, les caractères de l'alphabet russe sont placés dans cette partie du tableau.

Première moitié de la table de codes ASCII


Veuillez noter que dans le tableau d'encodage, les lettres (majuscules et minuscules) sont classées par ordre alphabétique et les chiffres sont classés par ordre croissant. Ce respect de l'ordre lexicographique dans la disposition des symboles est appelé principe du codage séquentiel de l'alphabet.

Pour les lettres de l'alphabet russe, le principe du codage séquentiel est également respecté.

Deuxième moitié de la table de codes ASCII


Malheureusement, il existe actuellement cinq encodages cyrilliques différents (KOI8-R, Windows. MS-DOS, Macintosh et ISO). Pour cette raison, des problèmes surviennent souvent lors du transfert de texte russe d'un ordinateur à un autre, d'un système logiciel à un autre.

Chronologiquement, l'une des premières normes de codage des lettres russes sur les ordinateurs était KOI8 (« Information Exchange Code, 8-bit »). Ce codage a été utilisé dans les années 70 sur les ordinateurs de la série ES et, à partir du milieu des années 80, il a commencé à être utilisé dans les premières versions russifiées du système d'exploitation UNIX.

Depuis le début des années 90, époque de domination du système d'exploitation MS DOS, l'encodage CP866 demeure (« CP » signifie « Code Page », « code page »).

Les ordinateurs Apple exécutant le système d'exploitation Mac OS utilisent leur propre encodage Mac.

En outre, l'Organisation internationale de normalisation (ISO) a approuvé un autre codage appelé ISO 8859-5 comme norme pour la langue russe.

Le codage le plus couramment utilisé actuellement est Microsoft Windows, en abrégé CP1251.

Depuis la fin des années 90, le problème de la normalisation du codage des caractères a été résolu par l'introduction d'une nouvelle norme internationale appelée Unicode. Il s'agit d'un encodage 16 bits, c'est-à-dire il alloue 2 octets de mémoire pour chaque caractère. Bien entendu, cela multiplie par 2 la quantité de mémoire occupée. Mais une telle table de codes permet d'inclure jusqu'à 65 536 caractères. La spécification complète de la norme Unicode comprend tous les alphabets du monde existants, disparus et créés artificiellement, ainsi que de nombreux symboles mathématiques, musicaux, chimiques et autres.

Essayons d'utiliser un tableau ASCII pour imaginer à quoi ressembleront les mots dans la mémoire de l'ordinateur.

Représentation interne des mots dans la mémoire de l'ordinateur

Parfois, il arrive qu'un texte composé de lettres de l'alphabet russe reçu d'un autre ordinateur ne puisse pas être lu - une sorte d'« abracadabra » est visible sur l'écran du moniteur. Cela se produit parce que les ordinateurs utilisent des codages de caractères différents pour la langue russe.

Tous les caractères et lettres peuvent être codés à l’aide de huit bits binaires. Les tables de caractères binaires les plus courantes sont ASCII et ANSI, qui peuvent être utilisées pour écrire du texte dans des microprocesseurs. Dans les tableaux ASCII et ANSI, les 128 premiers caractères sont identiques. Cette partie du tableau contient des codes pour les chiffres, les signes de ponctuation, les lettres latines majuscules et minuscules et les caractères de contrôle. Les extensions nationales des tables de symboles et des symboles pseudographiques sont contenues dans les 128 derniers codes de ces tables, c'est pourquoi les textes russes dans les systèmes d'exploitation DOS et WINDOWS ne correspondent pas.

Lorsque l'on se familiarise pour la première fois avec les ordinateurs et les microprocesseurs, la question peut se poser : « comment convertir du texte en code binaire ? Pourtant, cette transformation est l’action la plus simple ! Pour ce faire, vous devez utiliser n'importe quel éditeur de texte. Le programme Notepad le plus simple, inclus avec le système d'exploitation Windows, convient également. Des éditeurs similaires sont présents dans tous les environnements de programmation pour des langages tels que SI, Pascal ou Java. Il convient de noter que l'éditeur de texte le plus courant, Word, n'est pas adapté à une simple conversion de texte en binaire. Cet éditeur de test saisit une énorme quantité d'informations supplémentaires, telles que la couleur des lettres, l'italique, le soulignement, la langue dans laquelle une phrase particulière est écrite et la police.

Il convient de noter qu'en fait, la combinaison de zéros et de uns avec laquelle les informations textuelles sont codées n'est pas un code binaire, car les bits de ce code n'obéissent pas aux lois. Cependant, sur Internet, l'expression de recherche « représentation binaire des lettres » est la plus courante. Le tableau 1 montre la correspondance des codes binaires avec les lettres de l'alphabet latin. Par souci de concision, la séquence de zéros et de uns dans ce tableau est présentée en codes décimaux et hexadécimaux.

Tableau 1 Tableau de représentation des lettres latines en code binaire (ASCII)

Code décimal Code hexadécimal Symbole d'affichage Signification
0 00 NUL
1 01 (afficher le mot de contrôle)
2 02 (Premier mot transmis)
3 03 ETX (Dernier mot de transmission)
4 04 EOT (fin de transmission)
5 05 ENQ (initialisation)
6 06 ACK (accusé de réception)
7 07 BEL
8 08 BS.
9 09 HT (onglet horizontal)
10 0A LF (saut de ligne)
11 0B VT (onglet vertical)
12 0C FF (page suivante)
13 0D CR (retour chariot)
14 0E SO (double largeur)
15 0F SI (joint solide)
16 10 DLE
17 11 DC1
18 12 DC2 (annulation de l'impression compacte)
19 13 DC3 (prêt)
20 14 DC4 (annulation double largeur)
21 15 § NAC (non-accusé de réception)
22 16 SYN
23 17 ETB
24 18 PEUT
25 19 E.M.
26 1A SOUS
27 1B ESC (début de la séquence de contrôle)
28 1C FS
29 1D G.S.
30 1E R.S.
31 1F NOUS
32 20 Espace
33 21 ! Point d'exclamation
34 22 « Support d'angle
35 23 # Signe numérique
36 24 $ Signe monétaire (dollar)
37 25 % Signe de pourcentage
38 26 & Esperluette
39 27 " Apostrophe
40 28 ( Support d'ouverture
41 29 ) Parenthèse fermante
42 2A * Étoile
43 2B + Signe plus
44 2C , Virgule
45 2D - Signe moins
46 2E . Point
47 2F / Barre fractionnaire
48 30 0 Chiffre zéro
49 31 1 Numéro un
50 32 2 Numéro deux
51 33 3 Numéro trois
52 34 4 Numéro quatre
53 35 5 Numéro cinq
54 36 6 Numéro six
55 37 7 Numéro sept
56 38 8 Numéro huit
57 39 9 Numéro neuf
58 3A : Côlon
59 3B ; Point-virgule
60 3C < Moins que le signe
61 3D = Signe égal
62 3E > Plus de signe
63 3F ? Point d'interrogation
64 40 @ Sol commercial
65 41 UN Lettre majuscule latine A
66 42 B Lettre majuscule latine B
67 43 C Lettre majuscule latine C
68 44 D Lettre majuscule latine D
69 45 E Lettre majuscule latine E
70 46 F Lettre majuscule latine F
71 47 g Lettre majuscule latine G
72 48 H Lettre majuscule latine H
73 49 je Lettre majuscule latine I
74 4A J. Lettre majuscule latine J
75 4B K Lettre majuscule latine K
76 4C L Lettre majuscule latine L
77 4D M Lettre latine majuscule
78 4E N Lettre majuscule latine N
79 4F Ô Lettre majuscule latine O
80 50 P. Lettre majuscule latine P
81 51 Q Lettre latine majuscule
82 52 R. Lettre majuscule latine R
83 53 S Lettre majuscule latine S
84 54 T Lettre majuscule latine T
85 55 U Lettre majuscule latine U
86 56 V Lettre majuscule latine V
87 57 W Lettre majuscule latine W
88 58 X Lettre majuscule latine X
89 59 Oui Lettre majuscule latine Y
90 5A Z Lettre majuscule latine Z
91 5B [ Crochet ouvrant
92 5C \ Barre oblique inverse
93 5D ] Crochet fermant
94 5E ^ "Couvercle"
95 5 _ Caractère de soulignement
96 60 ` Apostrophe
97 61 un Lettre minuscule latine a
98 62 b Lettre minuscule latine b
99 63 c Lettre minuscule latine c
100 64 d Lettre minuscule latine d
101 65 e Lettre minuscule latine e
102 66 F Lettre minuscule latine f
103 67 g Lettre minuscule latine g
104 68 h Lettre minuscule latine h
105 69 je Lettre minuscule latine i
106 6A j Lettre minuscule latine j
107 6B k Lettre minuscule latine k
108 6C je Lettre minuscule latine l
109 6D m Lettre minuscule latine m
110 6E n Lettre minuscule latine n
111 6F o Lettre minuscule latine o
112 70 p Lettre minuscule latine p
113 71 q Lettre minuscule latine q
114 72 r Lettre minuscule latine r
115 73 s Lettre minuscule latine s
116 74 t Lettre minuscule latine t
117 75 toi Lettre minuscule latine u
118 76 v Lettre minuscule latine v
119 77 w Lettre minuscule latine w
120 78 X Lettre minuscule latine x
121 79 oui Lettre minuscule latine y
122 7A z Lettre minuscule latine z
123 7B { Orthèse d'ouverture
124 7C | Barre verticale
125 7D } Accolade de fermeture
126 7E ~ Tilde
127 7F

Dans la version classique de la table de caractères ASCII, il n'y a pas de lettres russes et elle est composée de 7 bits. Cependant, plus tard, ce tableau a été étendu à 8 bits et des lettres russes en code binaire et des symboles pseudographiques sont apparus dans les 128 lignes supérieures. En général, la deuxième partie contient les alphabets nationaux des différents pays et les lettres russes ne sont qu'un des ensembles possibles (855) ; il peut y avoir un tableau français (863), allemand (1141) ou grec (737). Le tableau 2 montre un exemple de représentation des lettres russes en code binaire.

Tableau 2. Tableau de représentation des lettres russes en code binaire (ASCII)

Code décimal Code hexadécimal Symbole d'affichage Signification
128 80 UN Lettre majuscule russe A
129 81 B Lettre majuscule russe B
130 82 DANS Lettre majuscule russe B
131 83 g Lettre majuscule russe G
132 84 D Lettre majuscule russe D
133 85 E Lettre majuscule russe E
134 86 ET Lettre majuscule russe Zh
135 87 Z Lettre majuscule russe Z
136 88 ET Lettre majuscule russe I
137 89 Oui Lettre majuscule russe Y
138 8A À Lettre majuscule russe K
139 8B L Lettre majuscule russe L
140 8C M Lettre majuscule russe M
141 8D N Lettre majuscule russe N
142 8E À PROPOS Lettre majuscule russe O
143 8F P. Lettre majuscule russe P
144 90 R. Lettre majuscule russe R
145 91 AVEC Lettre majuscule russe S
146 92 T Lettre majuscule russe T
147 93 U Lettre majuscule russe U
148 94 F Lettre majuscule russe F
149 95 X Lettre majuscule russe X
150 96 C Lettre majuscule russe T
151 97 H Lettre majuscule russe CH
152 98 Ch Lettre majuscule russe Ш
153 99 SCH Lettre majuscule russe Ш
154 9A Kommersant Lettre majuscule russe Ъ
155 9B Oui Lettre majuscule russe Y
156 9C b Lettre majuscule russe b
157 9D E Lettre majuscule russe E
158 9E YU Lettre majuscule russe Yu
159 9F je Lettre majuscule russe I
160 A0 UN Petite lettre russe a
161 A1 b Petite lettre russe b
162 A2 V Lettre minuscule russe v
163 A3 g Petite lettre russe g
164 A4 d Petite lettre russe d
165 A5 e Petite lettre russe e
166 A6 et Petite lettre russe z
167 A7 h Petite lettre russe z
168 A8 Et Petite lettre russe et
169 A9 ème Petite lettre russe th
170 Les AA À Lettre minuscule russe k
171 UN B je Petite lettre russe l
172 A.C. m Petite lettre russe m
173 ANNONCE n Petite lettre russe n
174 A.E. Ô Lettre minuscule russe o
175 UN F. P. Petite lettre russe p
176 B0
177 B1
178 B2
179 B3 Symbole pseudographique
180 B4 Symbole pseudographique
181 B5 Symbole pseudographique
182 B6 Symbole pseudographique
183 B7 Symbole pseudographique
184 B8 Symbole pseudographique
185 B9 Symbole pseudographique
186 B.A. Symbole pseudographique
187 BB Symbole pseudographique
188 AVANT JC. Symbole pseudographique
189 BD Symbole pseudographique
190 ÊTRE Symbole pseudographique
191 B.F. Symbole pseudographique
192 C0 Symbole pseudographique
193 C1 Symbole pseudographique
194 C2 Symbole pseudographique
195 C3 Symbole pseudographique
196 C4 Symbole pseudographique
197 C5 Symbole pseudographique
198 C6 Symbole pseudographique
199 C7 Symbole pseudographique
200 C8 Symbole pseudographique
201 C9 Symbole pseudographique
202 CALIFORNIE. Symbole pseudographique
203 C.B. Symbole pseudographique
204 CC Symbole pseudographique
205 CD Symbole pseudographique
206 C.E. Symbole pseudographique
207 FC Symbole pseudographique
208 D0 Symbole pseudographique
209 D1 Symbole pseudographique
210 D2 Symbole pseudographique
211 D3 Symbole pseudographique
212 D4 Symbole pseudographique
213 J5 Symbole pseudographique
214 D6 Symbole pseudographique
215 J7 Symbole pseudographique
216 D8 Symbole pseudographique
217 D9 Symbole pseudographique
218 D.A. Symbole pseudographique
219 D.B.
220 CC
221 DD
222 DE
223 DF
224 E0 R. Petite lettre russe r
225 E1 Avec Lettre minuscule russe s
226 E2 T Petite lettre russe t
227 E3 à Lettre minuscule russe u
228 E4 F Petite lettre russe f
229 E5 X Lettre minuscule russe x
230 E6 ts Petite lettre russe c
231 E7 h Petite lettre russe h
232 E8 w Petite lettre russe sh
233 E9 sch Lettre minuscule russe ch
234 E.A. ъ Petite lettre russe ъ
235 E.B. s Petite lettre russe ы
236 C.E. b Petite lettre russe ь
237 ED euh Petite lettre russe e
238 E.E. Yu Petite lettre russe yu
239 E.F. je Petite lettre russe i
240 F0 Yo Lettre majuscule russe Yo
241 F1 e Petite lettre russe ё
242 F2 Є
243 F3 є
244 F4 Ї
245 F5 Ї
246 F6 Ў
247 F7 ў
248 F8 ° Signe de diplôme
249 F9 Signe de multiplication (point)
250 FA. ·
251 Facebook Radical (prendre la racine)
252 F.C. Signe numérique
253 FD ¤ Signe monétaire (rouble)
254 F.E.
255 FR

Lors de l'écriture de textes, en plus des codes binaires qui affichent directement des lettres, on utilise des codes qui indiquent le passage à une nouvelle ligne et le retour du curseur (retour chariot) à la position zéro de la ligne. Ces symboles sont généralement utilisés ensemble. Leurs codes binaires correspondent aux nombres décimaux - 10 (0A) et 13 (0D). A titre d'exemple, vous trouverez ci-dessous une section du texte de cette page (vidage mémoire). Son premier paragraphe est écrit dans cette section. Le format suivant est utilisé pour afficher les informations dans un vidage mémoire :

  • la première colonne contient l'adresse binaire du premier octet de la ligne
  • Les seize colonnes suivantes contiennent les octets contenus dans le fichier texte. Pour déterminer plus facilement le numéro d'octet, une ligne verticale est tracée après la huitième colonne. Par souci de concision, les octets sont représentés en code hexadécimal.
  • dans la dernière colonne, ces mêmes octets sont représentés sous forme de caractères alphabétiques affichables
00000000 : 82 E1 A5 20 E1 A8 AC A2 ¦ AE AB EB 20 A8 20 A1 E3 Tous les symboles et 00000010 : AA A2 EB 20 AC AE A3 E3 ¦ E2 20 A1 EB E2 EC 20 A7 les coefficients peuvent être 3 00000020 : A0 AA AE A4 A8 E0 AE A2 ¦ A0 AD EB 20 AF E0 A8 20 codé à 00000030 : AF AE AC AE E9 A8 20 A2 ¦ AE E1 EC AC A8 20 A4 A2 assistance huit portes 00000040 : AE A8 E7 AD EB E5 20 E1 ¦ A8 AC A2 AE AB AE A2 2E caractères principaux. 00000050 : 0D 0A 8D A0 A8 A1 AE AB ¦ A5 A5 20 E0 A0 E1 AF E0 ♪◙Le plus courant 00000060 : AE E1 E2 E0 A0 AD A5 AD ¦ AD EB AC A8 20 E2 A0 A1 onglet étrange 00000070 : AB A8 E6 A0 AC A8 20 EF ¦ A2 AB EF EE E2 E1 EF 20 personnes sont 00000080 : E2 A0 A1 AB A8 E6 EB 20 ¦ 41 53 43 49 49 20 E1 20 Tables ASCII avec 00000090 : AD A0 E6 A8 AE AD A0 AB ¦ EC AD EB AC A8 0D 0A E0 national♪◙р 000000A0 : A0 E1 E8 A8 E0 A5 AD A8 ¦ EF AC A8 2C 20 AF E0 A8 extensions, à 000000B0 : AC A5 AD EF EE E9 A8 A5 ¦ E1 EF 20 A2 20 44 4F 53 changeant en DOS 000000C0 : 20 28 A8 20 AA AE E2 AE ¦ E0 EB A5 20 AC AE A6 AD (et qui peut être utilisé 000000D0 : AE 20 A8 E1 AF AE AB EC ¦ A7 AE A2 A0 E2 EC 20 A4 o use d 000000E0 : AB EF 20 A7 A0 AF A8 E1 ¦ A8 0D 0A E2 A5 AA E1 E2 pour l'enregistrement♪◙texte 000000F0 : AE A2 20 A2 20 AC A8 AA ¦ E0 AE AF E0 AE E6 A5 E1 ov dans le microprocessus 00000100 : E1 AE E0 A0 E5 29 2C 20 ¦ A8 20 E2 A0 A1 AB A8 E6 sorah), et tableaux 00000110 : EB 20 41 4E 53 49 2C 20 ¦ AF E0 A8 AC A5 AD EF EE s ANSI, j'utilise 00000120 : E9 A8 A5 E1 EF 20 A2 20 ¦ 57 49 4E 44 4F 57 53 2E disponible sous WINDOWS. 00000130 : 20 82 20 E2 A0 A1 AB A8 ¦ E6 A0 E5 0D 0A 41 53 43 Dans les tableaux♪◙ASC 00000140 : 49 49 20 A8 20 41 4E 53 ¦ 49 20 AF A5 E0 A2 EB A5 II et ANSI premier 0 0 000150 : 20 31 32 38 20 E1 A8 AC ¦ A2 AE AB AE A2 20 E1 AE 128 caractères avec 00000160 : A2 AF A0 A4 A0 EE E2 2E ¦ 20 82 20 ED E2 AE A9 20 fall. Dans ce 00000170 : E7 A0 E1 E2 A8 20 E2 A0 ¦ A1 AB A8 E6 EB 20 E1 AE, une partie du tableau avec 00000180 : A4 A5 E0 A6 A0 E2 E1 EF ¦ 0D 0A E1 A8 AC A2 AE AB est conservée♪◙caractère 00000190 : EB 20 E6 A8 E4 E0 2C 20 ¦ A7 AD A0 AA AE A2 20 AF chiffres, signes p 000001A0 : E0 A5 AF A8 AD A0 AD A8 ¦ EF 2C 20 AB A0 E2 A8 AD repining, latin 000001B0 : E1 AA A8 A5 20 A1 E3 AA A2 EB 20 A2 A5 E0 E5 AD 0A E3 AF E0 A0 A2 maîtres et ♪◙contrôleurs 000001E0 : AB EF EE E9 A8 A5 20 E1 ¦ A8 AC A2 AE AB EB 2E 20 caractères de casting. 000001F0 : 8D A0 E6 A8 AE AD A0 AB ¦ EC AD EB A5 20 E0 A0 E1 Courses nationales 00000200 : E8 A8 E0 A5 AD A8 EF 20 ¦ E1 A8 AC A2 AE AB EC AD caractère d'extension 00000210 : EB E5 20 E2 A0 A1 AB A8 ¦ E6 20 A8 20 E1 A8 AC A2 tableaux et symboles 00000220 : AE AB EB 0D 0A AF E1 A5 ¦ A2 A4 AE A3 E0 A0 E4 A8 pseudographes 00000230 : AA A8 20 E1 AE A4 A5 E0 ¦ A6 A 0 E2 E1 EF 20 A2 20 ki sont contenus dans 00000240 : AF AE E1 AB A5 A4 AD A8 ¦ E5 20 31 32 38 20 AA AE derniers 128 kos 00000250 : A4 A0 E5 20 ED E2 A8 E5 ¦ 20 E2 A0 A1 AB A8 E6 2C DAX de ces tableaux, 00000260 : 20 AF AE E2 AE AC E3 ¦ 20 E0 E1 E1 AA A8 Donc Russes 00000270 : 0A E2 AA E1 EB ¦ 20 A2 20 AE AF A5 E0 ♪ ◙ Textes dans Opera 00000280 : E6 A8 AE AD AD EB E5 20 ¦ E1 A8 E1 E2 A5 AC A0 E5 systèmes d'exploitation 00000290 : 20 44 4F 53 20 A8 20 57 ¦ 49 4E 44 4F 57 53 20 AD DOS et WINDOWS n 000002A0 : A5 20 E1 AE A2 AF A0 A4 ¦ A0 EE E2 2E 0D 0A e coïncident. ♪◙

Dans l'exemple ci-dessus, vous pouvez voir que la première ligne de texte occupe 80 octets. Le premier octet 82 correspond à la lettre « B ». Le deuxième octet E1 correspond à la lettre « c ». Le troisième octet A5 correspond à la lettre "e". L'octet suivant 20 affiche l'espace vide entre les mots (espace) " ". Les octets 81 et 82 contiennent des caractères de retour chariot et de saut de ligne 0D 0A. On retrouve ces caractères à l'adresse binaire 00000050 : La ligne suivante du texte source n'est pas un multiple de 16 (sa longueur est de 76 lettres), donc pour trouver sa fin il faudra d'abord trouver la ligne 000000E0 : et compter neuf colonnes de celui-ci. Les octets de retour chariot et de saut de ligne 0D 0A y sont à nouveau écrits. Le reste du texte est analysé exactement de la même manière.

Date de dernière mise à jour du fichier : 12/04/2018

Littérature:

En complément de l'article « Écrire des textes en code binaire », lire :

Représentation de nombres binaires dans la mémoire d'un ordinateur ou d'un microcontrôleur
http://site/proc/IntCod.php

Parfois, il est pratique de stocker les nombres dans la mémoire du processeur sous forme décimale.
http://site/proc/DecCod.php

Formats de nombres à virgule flottante standard pour ordinateurs et microcontrôleurs
http://site/proc/float/

Actuellement, les systèmes numériques positionnels et non positionnels sont largement utilisés à la fois dans la technologie et dans la vie quotidienne.
.php