LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
E-mail
Nom
Nom de famille
Comment voulez-vous lire La cloche
Pas de spam

Profondeur de bits du code binaire, Conversion de l'information de forme continue en forme discrète, L'universalité du codage binaire, Codes uniformes et non uniformes, Informatique niveau 7 Bosov, Informatique niveau 7

1.5.1. Conversion d'informations continues en discrètes
Pour résoudre ses problèmes, une personne doit souvent transformer l'information disponible d'une forme de présentation à une autre. Par exemple, lors de la lecture à haute voix, les informations sont converties d'une forme discrète (texte) à une forme continue (sonore). Pendant la dictée dans la leçon de langue russe, au contraire, l'information est convertie d'une forme continue (la voix de l'enseignant) à une forme discrète (dossiers de l'élève).
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 de l'information 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 en une forme discrète.
Considérons l'essence du processus de discrétisation de l'information à 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 est des barogrammes - des courbes montrant comment la pression a changé sur de longues périodes de temps. Une de ces courbes, tracée par l'appareil pendant sept heures d'observations, est représentée sur la Fig. 1.9.

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

Le tableau résultant ne donne pas une image complètement complète de la façon dont la pression a changé au cours de la période d'observation : par exemple, la plus grande valeur de pression qui a eu lieu au cours de la quatrième heure d'observations n'est pas indiquée. Mais si vous entrez dans le tableau les valeurs de pression observées toutes les demi-heures ou 15 minutes, alors nouveau tableau donnera une image plus complète de la façon dont la pression a changé.
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 méthodes de présentation discrète d'informations sonores et graphiques.

Les chaînes de trois symboles binaires sont obtenues en complétant les codes binaires à deux bits à droite avec le symbole 0 ou 1. En conséquence, les combinaisons de codes de trois symboles binaires sont 8 - deux fois plus que de deux symboles binaires :
En conséquence, un binaire à quatre bits vous permet d'obtenir 16 combinaisons de codes, cinq bits - 32, six bits - 64, etc. La longueur de la chaîne binaire - le nombre de caractères dans le code binaire - est appelée largeur 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 nombre de facteurs identiques égal à la largeur de bit du code binaire.
Si le nombre de combinaisons de codes est indiqué par la lettre N et la largeur de bit du code binaire par la lettre i, alors le motif révélé sous forme générale s'écrira comme suit :
N = 2 * 2 * ... * 2.
je facteurs
En mathématiques, de tels produits s'écrivent sous la forme :
N = 2 je.
L'enregistrement 2 i se lit ainsi : "2 à la puissance i".

Tâche. Le chef de la tribu Multi a demandé à son ministre de développer un binaire et d'y traduire toutes les informations importantes. Quel type de binaire est requis si l'alphabet utilisé par la tribu Multi contient 16 caractères ? Notez toutes les combinaisons de codes.
Solution. Étant donné que l'alphabet de la tribu Multi se compose de 16 caractères, ils ont également besoin de combinaisons de codes 16. Dans ce cas, la longueur (largeur) du code binaire est déterminée à partir du rapport : 16 = 2 i. D'où i = 4.
Pour écrire toutes les combinaisons de codes des quatre 0 et 1, nous utilisons le circuit de la Fig. 1.13 : 0000, 0001, 0010, 0011, 0100, 0101, 0110,0111,1000,1001,1010,1011,1100,1101,1110,1111.

1.5.3. Polyvalence du codage binaire
Au début de cette section, vous avez appris que, présenté sous forme continue, peut être exprimé à l'aide de symboles d'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, tout en langages naturel et formel, ainsi que des images et des sons, peut être représenté (Fig. 1.14). Cela signifie l'universalité du codage binaire.
Les codes binaires sont largement utilisés en informatique, ne nécessitant que deux états du circuit électronique - "on" (cela correspond au numéro 1) et "off" (cela correspond au numéro 0).
La facilité de mise en œuvre technique est le principal avantage du codage binaire. L'inconvénient du codage binaire est la grande longueur du code résultant.

1.5.4. Codes uniformes et non uniformes
Distinguer les codes uniformes des codes non uniformes. Les codes uniformes dans les combinaisons de codes contiennent le même nombre de symboles, impairs - différents.
Ci-dessus, nous avons examiné des codes binaires uniformes.
Un exemple de code impair est le code Morse, qui définit une séquence de bips courts et longs pour chaque lettre et chiffre. Ainsi, la lettre E correspond à un signal court ("point"), et la lettre - quatre signaux longs (quatre "tirets"). Inégal permet d'augmenter la vitesse de transmission des messages du fait que les symboles les plus souvent retrouvés 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 symboles élémentaires dans le texte codé se produisent en moyenne également souvent.

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

Démontrons le principe de construction du code Shannon - Feno sur le matériau de l'alphabet russe (tableau 18.8.1). Comptons les six premières lettres (de "-" à "t"); en additionnant leurs probabilités (fréquences), on obtient 0,498 ; toutes les autres lettres (de "n" à "sp") auront à peu près la même probabilité de 0,502. Les six premières lettres (de "-" à "t") auront en premier le signe binaire 0. Les autres lettres (de "n" à "f") auront 1 en premier lieu. De plus, 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 à la deuxième place, nous mettons zéro et le deuxième sous-groupe "- un. Le processus se poursuivra jusqu'à ce qu'il y ait exactement une lettre dans chaque sous-groupe, qui sera codée par un certain nombre binaire. Le mécanisme pour la construction du code est montrée dans le Tableau 18.8.2, et le code lui-même est montré 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 coder et décoder n'importe quel message.

A titre d'exemple, écrivons en code binaire la phrase : "théorie de l'information"

01110100001101000110110110000

0110100011111111100110100

1100001011111110101100110

Notez qu'il n'est pas nécessaire de séparer les lettres les unes des autres avec un signe spécial, car le décodage est effectué sans ambiguïté même sans cela. Cela peut être vérifié en décodant la phrase suivante à l'aide du tableau 18.8.2 :

10011100110011001001111010000

1011100111001001101010000110101

010110000110110110

("Méthode de codage").

Cependant, il est à noter que toute erreur de codage (confusion accidentelle des signes 0 et 1) avec un tel code est fatale, car le décodage de l'intégralité du texte suivant l'erreur devient impossible. Par conséquent, ce principe de codage ne peut être recommandé que dans le cas où les erreurs lors du codage et de la transmission du message sont pratiquement exclues.

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 l'information maximale possible, qui est égale à un un binaire. Pour ce faire, on trouve d'abord l'information moyenne contenue dans une lettre du texte transmis, c'est-à-dire l'entropie par lettre :

,

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

Du tableau. 18.8.1 nous avons

(deux unités par lettre de texte).

D'après le tableau 18.8.2, on détermine le nombre moyen de caractères élémentaires par lettre

En divisant l'entropie par, nous obtenons des informations par un 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 l'optimal. Rester dans le cadre de la tâche d'orthographe n'est rien de mieux que cela.

Notez que dans le cas de l'encodage uniquement de nombres binaires de lettres, nous aurions l'image de chaque lettre en cinq caractères binaires et les informations par caractère seraient

(deux unités),

c'est-à-dire nettement moins qu'avec un codage optimal des lettres.

Cependant, il convient de noter que le codage orthographique n'est pas du tout économique. Le fait est qu'il y a 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 « ь » ; après les sifflantes, "je" ou "u" ne peut pas tenir debout; après plusieurs consonnes d'affilée, la probabilité d'une voyelle augmente, etc.

Nous savons que lorsque les 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 cohérent est toujours inférieure à un caractère multiplié par le nombre de caractères. Compte tenu de cette circonstance, un code plus économique peut être construit si vous encodez non pas chaque lettre séparément, mais des "blocs" entiers de lettres. Par exemple, dans le texte russe, il est logique de coder en entier certaines combinaisons de lettres fréquentes, telles que "tsya", "aet", "nie", etc. Les blocs codés sont disposés par ordre décroissant de fréquences, comme le lettres dans le tableau. 18.8.1, et le codage binaire se fait de la même manière.

Dans certains cas, il s'avère raisonnable de ne pas coder même des blocs de lettres, mais des morceaux entiers de texte significatifs. Par exemple, pour décharger le télégraphe les jours fériés, il est conseillé d'encoder des textes standards entiers avec des nombres conditionnels, comme :

"Bonne année, je vous souhaite une bonne santé et du succès dans votre travail."

Sans s'attarder spécifiquement sur les méthodes de codage par blocs, nous nous limitons à formuler le théorème de Shannon connexe.

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

On connaît la productivité de la source d'information, c'est-à-dire le nombre moyen d'unités d'information binaire 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). Que l'on sache en plus débit canal, c'est-à-dire la quantité maximale d'informations (par exemple, les caractères binaires 0 ou 1) que le canal peut transmettre dans la même unité de temps. La question se pose : quelle doit être la bande passante du canal pour qu'il « fasse » sa tâche, c'est-à-dire pour que les informations de la source au récepteur arrivent sans délai ?

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

1er théorème de Shannon

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

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

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


Ariabhata
cyrillique
grec géorgien
éthiopien
juif
Akshara-sankhya Autre babylonien
égyptien
étrusque
romain
Danube Grenier
Kipu
maya
égéen
Symboles KPPU Positionnel , , , , , , , , , , Non-ga-positionnel Symétrique Systèmes mixtes Fibonaccieva Non positionnel Unique (unaire)

Système de numération binaire- système de numération positionnelle avec base 2. En raison de sa mise en œuvre directe dans les circuits électroniques numériques sur les portes logiques, le système binaire est utilisé dans presque tous les ordinateurs modernes et autres appareils électroniques informatiques.

Notation binaire des nombres

Dans le système binaire, les nombres s'écrivent à l'aide de deux caractères ( 0 et 1 ). Afin de ne pas confondre dans quel système de numérotation le numéro est écrit, il est fourni avec un indicateur en bas à droite. Par exemple, le nombre décimal 5 10 , en binaire 101 2 ... Parfois, un nombre binaire est indiqué par le préfixe 0b ou symbole & (esperluette), par exemple 0b101 ou respectivement &101 .

Dans le système de nombres binaires (comme dans d'autres systèmes de nombres autres que décimaux), les caractères sont lus un par un. Par exemple, le nombre 101 2 se prononce « un zéro un ».

Entiers

Un nombre naturel écrit en binaire sous la forme (a n - 1 a n - 2… a 1 a 0) 2 (\ displaystyle (a_ (n-1) a_ (n-2) \ points a_ (1) a_ (0)) _ (2)), a le sens :

(an - 1 an - 2… a 1 a 0) 2 = ∑ k = 0 n - 1 ak 2 k, (\ displaystyle (a_ (n-1) a_ (n-2) \ points a_ (1) a_ ( 0)) _ (2) = \ somme _ (k = 0) ^ (n-1) a_ (k) 2 ^ (k),)

Nombres négatifs

Les nombres binaires négatifs sont notés de la même manière que les nombres décimaux : un signe "-" devant le nombre. A savoir, un entier binaire négatif (- a n - 1 a n - 2… a 1 a 0) 2 (\ displaystyle (-a_ (n-1) a_ (n-2) \ points a_ (1) a_ (0)) _ (2)), a la valeur :

(- un n - 1 un n - 2… un 1 un 0) 2 = - ∑ k = 0 n - 1 un k 2 k. (\ displaystyle (-a_ (n-1) a_ (n-2) \ points a_ (1) a_ (0)) _ (2) = - \ sum _ (k = 0) ^ (n-1) a_ ( k) 2 ^ (k).)

code supplémentaire.

Nombres fractionnaires

Un nombre fractionnaire écrit en binaire comme (an - 1 an - 2… a 1 a 0, a - 1 a - 2… a - (m - 1) a - m) 2 (\ displaystyle (a_ (n-1) a_ (n-2) \ points a_ (1) a_ (0), a _ (- 1) a _ (- 2) \ points a _ (- (m-1)) a _ (- m)) _ (2)), a la valeur :

(an - 1 an - 2… a 1 a 0, a - 1 a - 2… a - (m - 1) a - m) 2 = ∑ k = - mn - 1 ak 2 k, (\ displaystyle (a_ ( n-1) a_ (n-2) \ points a_ (1) a_ (0), a _ (- 1) a _ (- 2) \ points a _ (- (m-1)) a _ (- m )) _ ( 2) = \ somme _ (k = -m) ^ (n-1) a_ (k) 2 ^ (k),)

Addition, soustraction et multiplication de nombres binaires

Tableau d'addition

Exemple d'addition "colonne" (expression décimale 14 10 + 5 10 = 19 10 in binaire ressemble à 1110 2 + 101 2 = 10011 2) :

Un exemple de multiplication "colonne" (expression décimale 14 10 * 5 10 = 70 10 en binaire ressemble à 1110 2 * 101 2 = 1000 110 2) :

En commençant par le chiffre 1, tous les chiffres sont multipliés par deux. Le point après 1 est appelé un point binaire.

Conversion de nombres binaires en décimaux

Disons qu'un nombre binaire est donné 110001 2 ... Pour convertir en décimal, écrivez-le sous forme de somme de chiffres comme suit :

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

La même chose est légèrement différente :

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Vous pouvez l'écrire sous forme de tableau comme suit :

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Déplacez-vous de droite à gauche. Sous chaque unité binaire, écrivez son équivalent sur la ligne ci-dessous. Additionnez les nombres décimaux résultants. Ainsi, le nombre binaire 110001 2 équivaut au nombre décimal 49 10.

Conversion de nombres binaires fractionnaires en nombres décimaux

Besoin de traduire le nombre 1011010,101 2 au système décimal. Écrivons ce nombre comme suit :

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 −3 = 90,625

La même chose est légèrement différente :

1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625

Ou selon le tableau :

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Transformation de Horner

Afin de convertir les nombres du système binaire au système décimal en utilisant cette méthode, il est nécessaire de faire la somme des chiffres de gauche à droite, en multipliant le résultat obtenu précédemment par la base du système (dans ce cas 2). La méthode de Horner est généralement utilisée pour convertir du binaire en décimal. L'opération inverse est difficile, car elle nécessite des compétences en addition et multiplication dans le système des nombres binaires.

Par exemple, le nombre binaire 1011011 2 traduit en système décimal comme ceci :

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

C'est-à-dire que dans le système décimal, ce nombre s'écrira 91.

Traduction de la partie fractionnaire des nombres par la méthode de Horner

Les nombres sont tirés du nombre de droite à gauche et divisés par la base du système de nombres (2).

Par exemple 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Réponse : 0,1101 2 = 0,8125 10

Conversion de nombres décimaux en binaire

Disons que nous devons convertir le nombre 19 en binaire. Vous pouvez utiliser la procédure suivante :

19/2 = 9 avec reste 1
9/2 = 4 avec reste 1
4/2 = 2 sans reste 0
2/2 = 1 sans reste 0
1/2 = 0 avec reste 1

Nous divisons donc chaque quotient par 2 et écrivons le reste à la fin de la notation binaire. Nous continuons à diviser jusqu'à ce que le quotient soit 0. Écrivez le résultat de droite à gauche. C'est-à-dire que le chiffre du bas (1) sera le plus à gauche, et ainsi de suite. En conséquence, nous obtenons le nombre 19 en notation binaire : 10011 .

Convertir des nombres décimaux fractionnaires en binaire

S'il y a une partie entière dans le nombre d'origine, alors il est converti séparément de la partie fractionnaire. La conversion d'un nombre fractionnaire du système de nombres décimaux en binaire s'effectue selon l'algorithme suivant :

  • La fraction est multipliée par la base du système de nombres binaires (2) ;
  • Dans le produit résultant, la partie entière est mise en évidence, qui est considérée comme le bit le plus significatif du nombre dans le système de nombres binaires ;
  • L'algorithme se termine si la partie fractionnaire du produit résultant est égale à zéro ou si la précision de calcul requise est atteinte. Sinon, les calculs se poursuivent sur la partie fractionnaire du produit.

Exemple : vous voulez traduire un nombre décimal fractionnaire 206,116 à une fraction binaire.

La translation de toute la partie donne 206 10 = 11001110 2 selon les algorithmes décrits précédemment. La partie fractionnaire de 0,116 est multipliée par la base 2, en mettant les parties entières du produit dans les chiffres après la virgule du nombre fractionnaire binaire recherché :

0,116 2 = 0 ,232
0,232 2 = 0 ,464
0,464 2 = 0 ,928
0,928 2 = 1 ,856
0,856 2 = 1 ,712
0,712 2 = 1 ,424
0,424 2 = 0 ,848
0,848 2 = 1 ,696
0,696 2 = 1 ,392
0,392 2 = 0 ,784
etc.

Ainsi, 0,116 10 0, 0001110110 2

On obtient : 206.116 10 11001110.0001110110 2

Applications

Dans les appareils numériques

Le système binaire est utilisé dans les appareils numériques, car il est le plus simple et répond aux exigences :

  • Moins il existe de valeurs dans le système, plus il est facile de fabriquer des éléments individuels fonctionnant avec ces valeurs. En particulier, deux chiffres du système de nombres binaires peuvent être facilement représentés par de nombreux phénomènes physiques : il y a un courant (le courant est supérieur à la valeur seuil) - il n'y a pas de courant (le courant est inférieur à la valeur seuil), induction champ magnétique supérieure ou non à la valeur seuil (l'induction du champ magnétique est inférieure à la valeur seuil), etc.
  • Plus le nombre d'états d'un élément est faible, plus l'immunité au bruit est élevée et plus il peut fonctionner rapidement. Par exemple, pour coder trois états via l'amplitude de la tension, du courant ou de l'induction d'un champ magnétique, vous devez saisir deux seuils et deux comparateurs,

V l'informatiqueécrire des nombres binaires négatifs en complément à deux est largement utilisé. Par exemple, le nombre -5 10 peut être écrit -101 2 mais sera stocké comme 2 dans un ordinateur 32 bits.

Dans le système de mesures anglais

Lors de la spécification des dimensions linéaires en pouces, traditionnellement, des fractions binaires sont utilisées, et non décimales, par exemple : 5¾ , 7 15/16 , 3 11/32 ″, etc.

Généralisations

Le système de nombres binaires est une combinaison d'un système de codage binaire et d'une fonction de pondération exponentielle avec une base égale à 2. Il convient de noter qu'un nombre peut être écrit en code binaire, et le système de nombres dans ce cas peut ne pas être binaire, mais avec une base différente. Exemple : codage BCD, dans lequel les chiffres décimaux sont écrits sous forme binaire et le système numérique est décimal.

Histoire

  • Un ensemble complet de 8 trigrammes et 64 hexagrammes, un analogue des nombres à 3 et 6 bits, était connu dans la Chine ancienne dans les textes classiques du Livre des Mutations. Ordre des hexagrammes dans Livre des changements, disposés en fonction des valeurs des chiffres binaires correspondants (de 0 à 63), et la méthode pour les obtenir a été développée par le scientifique et philosophe chinois Shao Yun au XIe siècle. Cependant, rien ne prouve que Shao Yong ait compris les règles de l'arithmétique binaire en organisant des tuples à deux caractères dans l'ordre lexicographique.
  • Les ensembles, qui sont des combinaisons de nombres binaires, étaient utilisés par les Africains dans la divination traditionnelle (comme Ifa) ainsi que dans la géomancie médiévale.
  • En 1854, le mathématicien anglais George Boole a publié un ouvrage de référence décrivant les systèmes algébriques appliqués à la logique, qui est maintenant connue sous le nom d'algèbre booléenne ou algèbre de la logique. Son calcul logique était destiné à jouer un rôle important dans le développement des circuits électroniques numériques modernes.
  • En 1937, Claude Shannon a présenté sa thèse de doctorat pour la défense Analyse symbolique des circuits de relais et de commutation dans laquelle l'algèbre booléenne et l'arithmétique binaire ont été utilisées en relation avec des relais et des commutateurs électroniques. Toute la technologie numérique moderne est essentiellement basée sur la thèse de Shannon.
  • En novembre 1937, George Stiebitz, qui a ensuite travaillé chez Bell Labs, a créé un ordinateur Model K basé sur le relais. K itchen », la cuisine où l'assemblage a été fait), qui a effectué l'addition binaire. À la fin de 1938, Bell Labs a lancé un programme de recherche dirigé par Stibitz. L'ordinateur créé sous sa direction, achevé le 8 janvier 1940, était capable d'effectuer des opérations avec des nombres complexes. Lors d'une démonstration à la conférence de l'American Mathematical Society au Dartmouth College le 11 septembre 1940, Stiebitz a démontré la capacité d'envoyer des commandes à un calculateur de nombres complexes à distance en utilisant ligne téléphoniqueà l'aide d'un téléscripteur. Il s'agissait de la première tentative d'utilisation d'un ordinateur distant via une ligne téléphonique. Parmi les participants à la conférence qui ont assisté à la manifestation figuraient John von Neumann, John Mauchly et Norbert Wiener, qui en ont parlé plus tard dans leurs mémoires.

voir également

Remarques (modifier)

  1. Popova Olga Vladimirovna. Tutoriel d'informatique (non spécifié) .

Le code binaire est du texte, des instructions de processeur informatique ou d'autres données utilisant n'importe quel système à deux caractères. Le plus souvent, il s'agit d'un système de 0 et 1. attribue un modèle de chiffres binaires (bits) à chaque caractère et instruction. Par exemple, une chaîne binaire de huit bits peut représenter n'importe laquelle des 256 valeurs possibles et peut donc générer de nombreux éléments différents. Les examens du code binaire de la communauté professionnelle mondiale des programmeurs indiquent qu'il s'agit de la base de la profession et de la principale loi de fonctionnement systèmes informatiques et appareils électroniques.

Décoder le code binaire

En informatique et en télécommunications, les codes binaires sont utilisés pour diverses méthodes de codage des caractères de données en chaînes de bits. Ces méthodes peuvent utiliser des chaînes de largeur fixe ou variable. Il existe de nombreux jeux de caractères et encodages pour la traduction en binaire. Dans le code à largeur fixe, chaque lettre, chiffre ou autre caractère est représenté par une chaîne de bits de même longueur. Cette chaîne de bits, interprétée comme un nombre binaire, est généralement affichée dans les tables de codes en notation octale, décimale ou hexadécimale.

Décodage de code binaire : une chaîne de bits interprétée comme un nombre binaire peut être convertie en un nombre décimal. Par exemple, la lettre minuscule a, si elle est représentée par la chaîne de bits 01100001 (comme dans le code ASCII standard), peut également être représentée sous la forme décimale 97. La traduction d'un code binaire en texte est la même procédure, mais dans l'ordre inverse.

Comment ça fonctionne

En quoi consiste un code binaire ? Le code utilisé dans les ordinateurs numériques est basé sur lequel il n'y a que deux états possibles : activé. et off, généralement désigné par zéro et un. Si dans le système décimal, qui utilise 10 chiffres, chaque position est un multiple de 10 (100, 1000, etc.), alors dans le système binaire, chaque position numérique est un multiple de 2 (4, 8, 16, etc. ). Un signal de code binaire est une série d'impulsions électriques qui représentent des nombres, des symboles et des opérations qui doivent être effectuées.

Un appareil appelé horloge envoie des impulsions régulières et des composants tels que des transistors s'allument (1) ou s'éteignent (0) pour transmettre ou bloquer les impulsions. En binaire, chaque nombre décimal (0-9) est représenté par un ensemble de quatre chiffres ou bits binaires. Les quatre opérations arithmétiques de base (addition, soustraction, multiplication et division) peuvent être réduites à des combinaisons d'opérations algébriques booléennes fondamentales sur des nombres binaires.

Un peu en théorie de la communication et de l'information est une unité de données équivalente au choix entre deux alternatives possibles dans le système de nombres binaires couramment utilisé dans les ordinateurs numériques.

Revues de code binaire

La nature du code et des données est une partie fondamentale du monde fondamental de l'informatique. Cet outil est utilisé par des spécialistes du monde informatique «en coulisses» - des programmeurs dont la spécialisation est cachée à l'attention d'un utilisateur ordinaire. Les commentaires des développeurs sur le code binaire suggèrent que ce domaine nécessite un apprentissage approfondi. fondements mathématiques et une pratique étendue dans le domaine de l'analyse mathématique et de la programmation.

Le code binaire est la forme la plus simple de code informatique ou de données de programmation. Il est entièrement représenté par le système binaire de nombres. Selon les critiques du code binaire, il est souvent associé au code machine, car les ensembles binaires peuvent être combinés pour former code source qui est interprété par un ordinateur ou un autre matériel. C'est en partie vrai. utilise des ensembles de chiffres binaires pour former des instructions.

En plus de la forme de code la plus basique, un binaire est également la plus petite quantité de données qui circule dans tous les systèmes matériels et logiciels complexes et complexes qui gèrent les ressources de données et les actifs d'aujourd'hui. La plus petite quantité de données s'appelle un bit. Les chaînes de bits actuelles deviennent du code ou des données qui sont interprétées par l'ordinateur.

Nombre binaire

En mathématiques et en électronique numérique, un nombre binaire est un nombre exprimé en base 2 ou binaire système numérique qui n'utilise que deux caractères : 0 (zéro) et 1 (un).

Le système de numération en base 2 est une notation positionnelle avec un rayon de 2. Chaque chiffre est appelé un bit. En raison de sa mise en œuvre simple en numérique circuits électroniques en utilisant des règles logiques, le système binaire est utilisé par presque tous les ordinateurs et appareils électroniques modernes.

Histoire

Le système binaire moderne de nombres comme base du code binaire a été inventé par Gottfried Leibniz en 1679 et présenté dans son article "Explaining Binary Arithmetic". Les nombres binaires étaient au cœur de la théologie de Leibniz. Il croyait que les nombres binaires symbolisaient l'idée chrétienne de la créativité ex nihilo, ou la création à partir de rien. Leibniz a essayé de trouver un système qui transforme les énoncés verbaux de la logique en données purement mathématiques.

Des systèmes binaires antérieurs à Leibniz existaient également dans le monde antique. Un exemple est le système binaire chinois I Ching, où le texte de prédiction est basé sur la dualité du yin et du yang. En Asie et en Afrique, des tambours à fente avec des tons binaires ont été utilisés pour coder les messages. Le savant indien Pingala (vers le 5ème siècle avant JC) a développé un système binaire pour décrire la prosodie dans son Chandashutrem.

Les habitants de l'île de Mangareva en Polynésie française utilisaient un système hybride binaire-décimal jusqu'en 1450. Au XIe siècle, le scientifique et philosophe Shao Yong a développé une méthode d'organisation des hexagrammes qui correspond à la séquence de 0 à 63, représentée sous forme binaire, avec yin égal à 0, yang égal à 1. L'ordre est aussi un ordre lexicographique. en blocs d'éléments sélectionnés dans un ensemble de deux éléments.

Nouvelle heure

En 1605, il a discuté d'un système dans lequel les lettres de l'alphabet pourraient être réduites à des séquences de chiffres binaires, qui pourraient ensuite être codées comme de subtiles variations de la police dans n'importe quel texte aléatoire... Il est important de noter que c'est Francis Bacon qui a ajouté théorie générale observation de codage binaire que cette méthode peut être utilisée avec n'importe quel objet.

Un autre mathématicien et philosophe du nom de George Boole a publié en 1847 un article intitulé « Analyse mathématique de la logique », qui décrit le système algébrique de la logique connu aujourd'hui sous le nom d'algèbre booléenne. Le système était basé sur une approche binaire, qui consistait en trois opérations principales : ET, OU et NON. Ce système n'a pas été mis en service jusqu'à ce qu'un étudiant diplômé du MIT nommé Claude Shannon ait remarqué que l'algèbre booléenne qu'il étudiait ressemblait à un circuit électrique.

Shannon a écrit une thèse en 1937 qui a tiré des conclusions importantes. La thèse de Shannon est devenue le point de départ de l'utilisation du code binaire dans des applications pratiques telles que les ordinateurs et les circuits électriques.

Autres formes de code binaire

Une chaîne de bits n'est pas le seul type de code binaire. Un système binaire dans son ensemble est un système qui n'autorise que deux options, comme un système électronique ou un simple test vrai ou faux.

Le braille est un type de code binaire couramment utilisé par les personnes aveugles pour lire et écrire au toucher, du nom de son créateur Louis Braille. Ce système se compose de grilles de six points chacune, trois par colonne, dans lesquelles chaque point a deux états : relevé ou approfondi. Diverses combinaisons de points sont capables de représenter toutes les lettres, chiffres et signes de ponctuation.

américain code standard for Information Interchange (ASCII) utilise un code binaire à 7 bits pour représenter du texte et d'autres caractères dans les ordinateurs, les équipements de communication et d'autres appareils. Chaque lettre ou symbole se voit attribuer un numéro de 0 à 127.

La valeur décimale codée binaire ou BCD est une représentation codée binaire de valeurs entières qui utilise un graphique à 4 bits pour coder les chiffres décimaux. Les quatre bits binaires peuvent coder jusqu'à 16 valeurs différentes.

Dans les nombres codés en BCD, seules les dix premières valeurs de chaque quartet sont correctes et codent les chiffres décimaux avec un zéro à neuf. Les six autres valeurs ne sont pas valides et peuvent provoquer une exception machine ou un comportement non spécifié, selon l'implémentation de l'arithmétique BCD par l'ordinateur.

L'arithmétique BCD est parfois préférée aux formats de nombres à virgule flottante dans les applications commerciales et financières où un comportement complexe d'arrondi des nombres n'est pas souhaitable.

Application

Majorité ordinateurs modernes utiliser un programme de code binaire pour les instructions et les données. Les CD, DVD et disques Blu-ray représentent l'audio et la vidéo sous forme binaire. Appels téléphoniques transférés numériquement dans les réseaux longue distance et mobiles connexion téléphonique utilisant la modulation par impulsions codées et les réseaux de voix sur IP.

Voyons comment tout de même traduire des textes en code numérique? Soit dit en passant, sur notre site, vous pouvez traduire n'importe quel texte en code décimal, hexadécimal ou binaire à l'aide du calculateur de code en ligne.

Encodage de texte.

Selon la théorie informatique, tout texte se compose de caractères individuels. Ces symboles comprennent : des lettres, des chiffres, des signes de ponctuation minuscules, des caractères spéciaux ("", No., (), etc.), ils incluent également des espaces entre les mots.

Base de connaissances nécessaire. L'ensemble de symboles avec lesquels j'écris le texte s'appelle ALPHABET.

Le nombre de caractères de l'alphabet représente sa cardinalité.

La quantité d'informations peut être déterminée par la formule : N = 2b

  • N - la même cardinalité (ensemble de symboles),
  • b - Bit (poids du caractère pris).

L'alphabet, qui sera de 256, peut contenir presque tous les caractères nécessaires. De tels alphabets sont appelés SUFFISANTS.

Si nous prenons un alphabet d'une capacité de 256, et gardons à l'esprit que 256 = 28

  • 8 bits sont toujours appelés 1 octet :
  • 1 octet = 8 bits.

Si vous traduisez chaque caractère en code binaire, ce code texte informatique prendra 1 octet.

À quoi peuvent ressembler les informations textuelles dans la mémoire de l'ordinateur ?

Tout texte est tapé au clavier, sur les touches du clavier, on voit les caractères qui nous sont familiers (chiffres, lettres, etc.). Ils n'entrent dans la RAM de l'ordinateur que sous la forme d'un code binaire. Le code binaire de chaque caractère ressemble à un nombre à huit chiffres, par exemple 00111111.

Étant donné qu'un octet est la plus petite particule de mémoire adressable et que la mémoire est adressée à chaque caractère séparément, la commodité d'un tel codage est évidente. Cependant, 256 caractères est un nombre très pratique pour toute information de caractère.

Naturellement, la question s'est posée : qu'est-ce que code à huit bits appartient à chaque personnage ? Et comment traduire du texte en code numérique ?

Ce processus est conditionnel et nous avons le droit de proposer diverses façons d'encoder des caractères... Chaque caractère de l'alphabet a son propre numéro de 0 à 255. Et chaque numéro se voit attribuer un code de 00000000 à 11111111.

La table de codage est une « aide-mémoire » dans laquelle les caractères de l'alphabet sont indiqués en fonction du numéro ordinal. Pour différents types Les ordinateurs utilisent différentes tables pour l'encodage.

ASCII (ou Aski) est devenu la norme internationale pour les ordinateurs personnels. Le tableau comporte deux parties.

La première moitié est pour la table ASCII. (C'est la première mi-temps qui est devenue la norme.)

Le respect de l'ordre lexicographique, c'est-à-dire que dans le tableau les lettres (minuscules et majuscules) sont indiquées par ordre alphabétique strict et les nombres par ordre croissant, est appelé principe de codage séquentiel de l'alphabet.

Pour l'alphabet russe, ils observent également principe de codage séquentiel.

Maintenant, à notre époque, ils utilisent l'ensemble cinq systèmes de codage Alphabet russe (KOI8-R, Windows. MS-DOS, Macintosh et ISO). En raison du nombre de systèmes de codage et de l'absence d'une norme, des malentendus surviennent souvent lors du transfert du texte russe sous sa forme informatique.

L'un des premiers normes de codage de l'alphabet russe et sur Ordinateur personnel considérez KOI8 ("Information Interchange Code, 8-bit"). Ce codage a été utilisé au milieu des années 70 sur une série d'ordinateurs ES, et à partir du milieu des années 80, il a commencé à être utilisé dans les premiers systèmes d'exploitation UNIX traduits en russe.

Depuis le début des années 90, époque dite où le système d'exploitation MS DOS dominait, le système de codage CP866 est apparu ("CP" signifie "Page de code").

Les entreprises informatiques géantes APPLE, avec leur système innovant sous lequel elles opéraient (Mac OS), commencent à utiliser leur propre système pour coder l'alphabet MAC.

L'Organisation internationale de normalisation (Organisation internationale de normalisation, ISO) nomme une autre norme pour la langue russe système de codage de l'alphabet appelé ISO 8859-5.

Et le système de codage de l'alphabet le plus courant, de nos jours, a été inventé en Microsoft Windows, et s'appelle CP1251.

Depuis la seconde moitié des années 90, le problème de la norme de traduction de texte en code numérique pour la langue russe et pas seulement a été résolu en introduisant une norme de système appelée Unicode. Il est représenté par un codage sur seize bits, ce qui signifie qu'exactement deux octets sont alloués à chaque caractère. mémoire vive... Bien entendu, avec cet encodage, les coûts de mémoire sont doublés. Cependant, un tel système de codage permet de traduire en code électronique jusqu'à 65536 caractères.

La spécificité du système Unicode standard est l'inclusion d'absolument n'importe quel alphabet, qu'il soit existant, éteint, inventé. En fin de compte, absolument n'importe quel alphabet, en plus du système Unicode, comprend de nombreux symboles mathématiques, chimiques, musicaux et généraux.

Utilisons un tableau ASCII pour voir à quoi pourrait ressembler un mot dans la mémoire de votre ordinateur.

Il arrive souvent que votre texte, qui est écrit en lettres de l'alphabet russe, ne soit pas lisible, cela est dû à la différence des systèmes de codage alphabétique sur les ordinateurs. C'est un problème très courant que l'on retrouve assez souvent.

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

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

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

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

b est le nombre de bits (poids informationnel du caractère).

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é 8 bits a été nommée 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 par octet des caractères 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, effectuant un traitement de texte. D'un autre côté, 256 caractères est un nombre tout à fait suffisant pour représenter une grande variété d'informations sur les caractères.

Maintenant, la question se pose de savoir quel type de code binaire à huit bits attribuer à chaque caractère.

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

Tous les caractères de l'alphabet informatique sont numérotés de 0 à 255. Chaque nombre correspond à un code binaire à huit chiffres de 00000000 à 11111111. Ce code est simplement le nombre ordinal d'un caractère du système binaire.

La table dans laquelle tous les caractères de l'alphabet informatique sont affectés de numéros de série est appelée table de codage.

Pour différents types Les ordinateurs utilisent diverses tables de codage.

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

Le tableau ASCII est divisé en deux parties.

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

Structure de table ASCII

Numéro de série

Code

symbole

0 - 31

00000000 - 00011111

Les symboles avec des nombres de 0 à 31 sont généralement appelés caractères de contrôle.
Leur fonction est de contrôler le processus d'affichage du texte à l'écran ou d'impression, d'alimentation signal sonore, balisage de texte, etc.

32 - 127

00100000 - 01111111

Partie standard de la table (anglais). Cela comprend les lettres minuscules et majuscules de l'alphabet latin, les chiffres 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 reflètent dans certains signes.

128 - 255

10000000 - 11111111

Partie alternative du tableau (russe).
La seconde moitié de la table des codes ASCII, appelée page de codes (128 codes, commençant à 10000000 et se terminant par 11111111), peut avoir différentes variantes, chaque variante a son propre numéro.
La page de codes est principalement utilisée pour accueillir des alphabets nationaux autres que le latin. Dans les codages nationaux russes, cette partie du tableau contient des symboles de l'alphabet russe.

La première moitié du tableau ASCII


J'attire votre attention sur le fait que dans la table d'encodage, les lettres (majuscules et minuscules) sont classées par ordre alphabétique, et les nombres sont classés par ordre croissant de valeurs. Ce respect de l'ordre lexicographique dans la disposition des caractères s'appelle le principe du codage séquentiel de l'alphabet.

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

La seconde moitié du tableau ASCII


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

Chronologiquement, l'une des premières normes d'encodage des lettres russes sur les ordinateurs était KOI8 ("Code d'échange d'informations, 8 bits"). Ce codage a été utilisé dans les années 70 sur les ordinateurs de la série d'ordinateurs ES, et à partir du milieu des années 80, il a commencé à être utilisé dans les premières versions russifiées. système opérateur UNIX.

Depuis le début des années 90, époque de la domination du système d'exploitation MS DOS, l'encodage CP866 subsiste ("CP" signifie "Code Page").

Ordinateurs Apple exécutant une salle d'opération Systèmes 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.

Actuellement, l'encodage le plus courant est Microsoft Windows, abrégé en 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 sûr, cela double la quantité de mémoire utilisée. Mais d'un autre côté, une telle table de codes permet d'inclure jusqu'à 65536 caractères. La spécification complète de la norme Unicode comprend tous les alphabets existants, éteints et créés artificiellement du monde, 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 de "charabia" est visible sur l'écran du moniteur. Cela est dû au fait que les ordinateurs utilisent un codage différent des caractères de la langue russe.

LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir les derniers articles.
E-mail
Nom
Nom de famille
Comment voulez-vous lire La cloche
Pas de spam