Système de nombres binaires octaux et hexadécimaux. Représentation des nombres dans différents systèmes numériques

  • 30.09.2019

Pour représenter les nombres dans un microprocesseur, il est utilisé système de numération binaire.
Dans ce cas, tout signal numérique peut avoir deux états stables : « niveau haut » et « niveau bas ». Dans le système de numérotation binaire, deux chiffres sont utilisés pour représenter n'importe quel nombre, respectivement : 0 et 1. Nombre arbitraire x=a n a n-1 ..a 1 a 0 ,a -1 a -2 …a -m sera écrit dans le système de nombres binaires comme

x = a n ·2 n +a n-1 ·2 n-1 +…+a 1 ·2 1 +a 0 ·2 0 +a -1 ·2 -1 +a -2 ·2 -2 +…+a -m ·2 -m

un je— chiffres binaires (0 ou 1).

Système de numérotation octale

Dans le système de numérotation octale, les chiffres de base sont les nombres de 0 à 7. 8 chiffres d'ordre inférieur sont combinés en un chiffre d'ordre élevé.

Système de nombres hexadécimaux

Dans le système numérique hexadécimal, les chiffres de base sont les nombres de 0 à 15 inclus. Pour désigner les chiffres de base supérieurs à 9 avec un symbole, en plus des chiffres arabes 0...9 dans le système numérique hexadécimal, des lettres de l'alphabet latin sont utilisées :

10 10 = A 16 12 10 = C 16 14 10 = E 16
11 10 = B 16 13 10 = D 16 15 10 = F 16.

Par exemple, le nombre 175 10 en système numérique hexadécimal s'écrira AF 16. Vraiment,

10·16 1 +15·16 0 =160+15=175

Le tableau montre les nombres de 0 à 16 dans les systèmes numériques décimaux, binaires, octaux et hexadécimaux.

Décimal Binaire Octal Hexadécimal
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 UN
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10

Conversions binaire-octale et binaire-hexadécimale

Le système de nombres binaires est pratique pour effectuer des opérations arithmétiques à l'aide d'un microprocesseur, mais il est peu pratique pour la perception humaine car il nécessite un grand nombre de chiffres. Par conséquent, en technologie informatique, en plus du système de nombres binaires, les systèmes de nombres octaux et hexadécimaux ont été largement utilisés pour une représentation plus compacte des nombres.

Les trois chiffres du système de numérotation octale implémentent toutes les combinaisons possibles de chiffres octaux dans le système de numérotation binaire : de 0 (000) à 7 (111). Pour convertir un nombre binaire en octal, vous devez combiner les chiffres binaires en groupes de 3 chiffres (triades) dans deux directions, en commençant par le séparateur décimal. Si nécessaire, vous devez ajouter des zéros non significatifs à gauche du numéro d'origine. Si un nombre contient une partie fractionnaire, à sa droite, vous pouvez également ajouter des zéros insignifiants jusqu'à ce que toutes les triades soient remplies. Chaque triade est ensuite remplacée par un chiffre octal.

Exemple : convertissez le nombre 1101110.01 2 en système de nombres octaux.

Nous combinons les chiffres binaires en triades de droite à gauche. On a

001 101 110,010 2 = 156,2 8 .

Pour convertir un nombre octal en binaire, vous devez écrire chaque chiffre octal en code binaire :

156,2 8 = 001 101 110,010 2 .

Les quatre chiffres du système numérique hexadécimal implémentent toutes les combinaisons possibles de chiffres hexadécimaux dans le système numérique binaire : de 0 (0000) à F(1111). Pour convertir un nombre binaire en hexadécimal, vous devez combiner les chiffres binaires en groupes de 4 chiffres (tétrades) dans deux directions, en commençant par le séparateur décimal. Si nécessaire, vous devez ajouter des zéros non significatifs à gauche du numéro d'origine. Si le nombre contient une partie fractionnaire, à sa droite, vous devez également ajouter des zéros insignifiants jusqu'à ce que tous les cahiers soient remplis. Chaque tétrade est ensuite remplacée par un chiffre hexadécimal.

Exemple : Convertissez le nombre 1101110.11 2 en système numérique hexadécimal.

Nous combinons les chiffres binaires en tétrades de droite à gauche. On a

0110 1110.1100 2 = 6E,C 16 .

Pour convertir un nombre hexadécimal en binaire, vous devez écrire chaque chiffre hexadécimal en code binaire.

Système de numérotation octale est utilisé en technologie principalement comme moyen d'enregistrement compact de nombres binaires. Dans le passé, il était très populaire, mais récemment, il a été pratiquement remplacé par le système hexadécimal, car ce dernier correspond mieux à l’architecture des appareils numériques modernes.

La base du système est donc le chiffre huit. 8 ou en système octal 10 8 - cela signifie que huit chiffres sont utilisés pour représenter les nombres (0,1,2,3,4,5,6,7). Ici et ci-dessous, le petit chiffre à droite en dessous de la notation principale du nombre indiquera la base du système numérique. Pour le système décimal nous n'indiquerons pas la base.

Zéro - 0 ;
Un - 1 ;
Deux - 2 ;
...
et ainsi de suite…
...
Six - 6 ;
Sept - 7 ;

Que faire ensuite? Tous les numéros ont disparu. Comment représenter le chiffre huit ? Dans le système décimal, dans une situation similaire (lorsque les nombres étaient épuisés), nous avons introduit le concept de dix, ici nous allons introduire le concept de « huit » et dire que huit est un huit et zéro unité. Et cela peut déjà être écrit - "10 8".

Donc, Huit - 10 8 (un huit, zéro un)
Neuf - 11 8 (un huit, un un)
...
et ainsi de suite…
...
Quinze - 17 8 (un huit, sept uns)
Seize - 20 8 (deux huit, zéro un)
Dix-sept - 21 8 (deux huit, un un)
...
et ainsi de suite…
...
Soixante trois - 77 8 (sept huit, sept un)

Soixante-quatre - 100 8 (un soixante-quatre, zéro huit, zéro un)
Soixante-cinq - 101 8 (un soixante-quatre, zéro huit, un un)
Soixante six - 102 8 (un soixante-quatre, zéro huit, deux un)
...
et ainsi de suite...
...

Chaque fois que nous manquons de nombres pour afficher le nombre suivant, nous introduisons des unités de comptage plus grandes (c'est-à-dire compter par huit, soixante-quatre, etc.) et écrivons le nombre prolongé d'un chiffre.

Considérez le nombre 5372 8 écrit en système numérique octal. On peut en dire qu'il contient : cinq x cinq cent douze, trois x soixante-quatre, sept huit et deux uns. Et vous pouvez obtenir sa valeur grâce aux nombres qui y sont inclus comme suit.

5372 8 = 5 *512+3 *64+7 *8+2 *1, ici et en dessous le signe * (astérisque) signifie multiplication.

Mais la série de nombres 512, 64, 8, 1 n'est rien d'autre que des puissances entières du nombre huit (la base du système numérique) et peut donc s'écrire :

5372 8 = 5 *8 3 +3 *8 2 +7 *8 1 +2 *8 0

De même, pour une fraction octale (nombre fractionnaire), par exemple : 0.572 8 (Cent cinquante-sept cinq cent douzièmes), on peut dire d'elle qu'elle contient : cinq huitièmes, sept soixante-quatrièmes et deux cinq cent douzièmes. Et sa valeur peut être calculée comme suit :

0.572 8 = 5 *(1/8) + 7 *(1/64) + 2 *(1/512)

Et voici une série de nombres 1/8 ; 1/64 et 1/512 ne sont que des puissances entières de huit et on peut aussi écrire :

0.572 8 = 5 *8 -1 + 7 *8 -2 + 2 *8 -3

Pour le nombre mixte 752.159 on peut écrire de la même manière :

752.364 = 7 *8 2 +5 *8 1 +2 *8 0 +1 *8 -1 +5 *8 -2 +9 *8 -3

Maintenant, si nous numérotons les chiffres de la partie entière d'un nombre, de droite à gauche, comme 0,1,2...n (la numérotation commence à zéro !). Et les chiffres de la partie fractionnaire, de gauche à droite, comme -1,-2,-3...-m, alors la valeur de tout nombre octal arbitraire peut être calculée à l'aide de la formule :

N = d n 8 n +d n-1 8 n-1 +…+d 1 8 1 +d 0 8 0 +d -1 8 -1 +d -2 8 -2 +…+d -(m-1) 8 -(m-1) +d -m 8 -m

Où: n- le nombre de chiffres dans la partie entière du nombre moins un ;
m- le nombre de chiffres dans la partie fractionnaire du nombre
je- chiffre debout je-ième rang

Cette formule est appelée formule de développement au niveau du bit d'un nombre octal, c'est-à-dire nombre écrit dans le système de numération octal. Mais si dans cette formule le nombre huit est remplacé par un nombre naturel q, alors on obtient une formule de décomposition d'un nombre exprimé dans un système numérique avec une base q:

N = d n q n +d n-1 q n-1 +…+d 1 q 1 +d 0 q 0 +d -1 q -1 +d -2 q -2 +…+d -(m-1) q - (m-1) +d -m q -m

En utilisant cette formule, nous pouvons toujours calculer la valeur d'un nombre écrit non seulement dans le système numérique octal, mais également dans tout autre système positionnel. Vous pouvez en savoir plus sur d'autres systèmes de numérotation sur notre site Web en utilisant les liens suivants.

Fondements arithmétiques du numérique.

SYSTÈMES NUMÉRIQUES.

Représentation des nombres dans différents systèmes numériques.

Pour représenter les nombres et autres informations dans les appareils numériques pendant le processus de programmation, outre le système de nombres décimaux qui nous est familier, d'autres systèmes sont largement utilisés. Examinons les systèmes de numérotation positionnelle les plus couramment utilisés. Les nombres dans de tels systèmes numériques sont représentés par une séquence de chiffres (chiffres de chiffres), séparés par une virgule en deux groupes : un groupe de chiffres représentant la partie entière du nombre et un groupe de chiffres représentant la partie fractionnaire du nombre. :

Ici, , ... désignent les nombres zéro, premier, etc. chiffres de la partie entière du nombre, , ... - chiffres du premier, du deuxième, etc. chiffres de la partie fractionnaire du nombre.

Le chiffre du lieu reçoit un poids , où est la base du système numérique ; – numéro de chiffre, égal à l'index dans la désignation des chiffres. Ainsi, l'entrée ci-dessus signifie la quantité suivante :

Un ensemble de divers symboles est utilisé pour représenter les chiffres. Ainsi, lorsque (c'est-à-dire dans le système de numération décimal habituel) un ensemble de dix symboles est utilisé pour enregistrer les chiffres des chiffres : 0, 1, 2, ..., 9. Dans ce cas, l'entrée (ci-après l'index et avec le nombre indique la base du système numérique, dans laquelle le nombre est présenté) signifie la quantité suivante :

,

Utiliser ce principe de représentation des nombres, mais en choisissant des valeurs de base différentes R, Vous pouvez créer une variété de systèmes numériques.

Dans le système de nombres binaires base R.= 2. Ainsi, pour écrire les chiffres des chiffres, un ensemble de seulement deux caractères est requis, qui sont 0 et 1. Par conséquent, dans le système de numérotation binaire, il est représenté par une séquence de caractères 0 et 1. Dans ce cas , l'entrée 11011,1012 correspond au système de nombre décimal au nombre suivant :

Coefficients de pondération des catégories

Dans le système de nombres octaux base R.= 8. Par conséquent, pour représenter les chiffres des chiffres, huit symboles différents doivent être utilisés, pour lesquels 0, 1, 2, ..., 7 sont sélectionnés (à noter que les symboles 8 et 9 ne sont pas utilisés ici et ne doivent pas apparaître dans l’enregistrement des numéros). Par exemple, le nombre suivant correspond à une entrée dans le système de nombres décimaux :

,

Coefficients de pondération

rangs

ceux. notation désigne un nombre contenant sept fois, trois fois, cinq fois, quatre fois, six fois.

Dans le système de nombres hexadécimaux base R.= 16 et pour enregistrer les chiffres des chiffres, il faut utiliser un ensemble de 16 symboles : 0, 1, 2, ..., 9, A, B, C, D, E, F. Il utilise 10 chiffres arabes, et aux seize requis, ils sont complétés par six lettres initiales de l'alphabet latin. Dans ce cas, le symbole A dans le système de nombres décimaux correspond à 10, B – 11, C – 12, D – 13, E – 14, F – 15.


L'entrée correspond au nombre suivant en notation décimale :

Coefficients de pondération des catégories

Pour le stockage n-numéros de bits dans les équipements numériques, vous pouvez utiliser des appareils contenant néléments dont chacun mémorise le chiffre du chiffre correspondant du nombre. Le moyen le plus simple de stocker des nombres consiste à utiliser le système de nombres binaires. Pour mémoriser les chiffres de chaque chiffre d'un nombre binaire, des appareils à deux états stables (par exemple des bascules) peuvent être utilisés. L’un de ces états stables reçoit le numéro 0, l’autre le numéro 1.

Lors du stockage de nombres décimaux, chaque chiffre du nombre décimal est représenté sous forme binaire. Cette forme de représentation des nombres est appelée système décimal codé binaire. Par exemple, un nombre dans le système décimal codé en binaire est représenté comme suit :

Il convient de noter que malgré la similitude externe d'un nombre décimal codé en binaire, contenant uniquement les chiffres 0 et 1, avec un nombre binaire, le premier n'est pas binaire. C’est facile à vérifier. Par exemple, si la partie entière de la notation ci-dessus était considérée comme un nombre binaire, alors une fois convertie sous forme décimale, cela signifierait qu'elle ne coïncide pas avec la partie entière du nombre original 765.

La méthode considérée de représentation binaire (codage) des chiffres décimaux utilise ce qu'on appelle code 8421(le nom du code est constitué des coefficients de pondération des bits du nombre binaire). Parallèlement à ce code, divers autres codes sont utilisés pour le codage binaire des chiffres décimaux, dont les plus courants sont indiqués dans le tableau. 2.1.

2.3. NOMBRES OCTALS

La notation octale, comme l'hexadécimal, est utilisée pour représenter les nombres binaires. Le système octal contient 8 chiffres de 0 à 7 et est donc un système avec une base de 8. Dans le tableau. 2.7 présente plusieurs nombres décimaux, octaux et binaires.

Convertissons le nombre binaire 11111000100 en son équivalent octal. La procédure dans ce cas est la suivante. En commençant par un Mo de nombre binaire, on le divise en groupes de 3 bits. Ensuite, en utilisant le tableau. 2.7, on convertit chaque triade (groupe de 3 bits) en un chiffre octal équivalent. On va donc remplacer le nombre binaire 11111000100 par son équivalent octal 37048 :

Numéro binaire 011 111 000 100

Numéro octal 3 7 0 4

Convertissons maintenant le nombre octal 6521 en son équivalent binaire. Chaque chiffre octal est remplacé par une triade binaire et il s'avère que 65218 = 110101010001 2".

Écrivons le nombre octal 2357 sous forme décimale. La procédure classique est effectuée selon le tableau. 2.8. Ici, 512, 64, 8 et 1 sont les poids des quatre premières positions octales. Notez que cet exemple contient 7 uns, 5 huit, 4 64 et deux 521. Nous les additionnons et obtenons le résultat : 1024+192+40+7= 1263 10.

Enfin, convertissons le nombre décimal 3336 en son équivalent octal. La procédure est présentée sur la Fig. 2.3. Tout d'abord, 3336 est divisé par 8, ce qui donne le quotient 417 et le reste 0,10, avec 0,10=08, le 0 octal devenant la valeur MP du nombre octal. Le premier quotient (417) devient divisible et est à nouveau divisé par 8 (deuxième ligne), donnant le quotient 52 et le reste 110=18, qui devient le deuxième chiffre du nombre octal. A la troisième ligne, le quotient (52) devient divisible et le diviser par 8 donne le quotient 6 et le reste 4 10=48. Dans la quatrième ligne, le dernier quotient 6 est divisé par 8 avec le quotient 0 et le reste 6 10=68.

Le comptage est maintenant terminé avec le dernier quotient 0. Le chiffre 68 devient la valeur CP du nombre octal et nous pouvons voir sur la Fig. 2.3, que 3336yu=64108.

La plupart des microprocesseurs et micro-ordinateurs traitent des groupes de 4, 8 ou 16 bits. Il s’ensuit que la notation hexadécimale est généralement utilisée plus souvent que la notation octale. Cependant, la notation octale est plus pratique lorsque les groupes de bits sont divisibles par 3 (par exemple, des groupes de 12 bits).

Des exercices

2.18. Pour représenter les nombres binaires, le texte de la documentation du microprocesseur 8 bits utilise _

(hexadécimal, octal).

2.19. Un autre nom pour le système octal est

2.20. Écrivez les nombres octaux suivants en code binaire : a) 3 ; b) 7 ; c) 0 ; d) 7642 ; f) 1036 ; e) 2105.

2.21. Écrivez les nombres binaires suivants en code octal : a) 101 ; b) 110 ; c) 010 ; d) 111000101010 ; e) 1011000111 ; e) 100110100101.

2.22. 67248=_____10.

2.23. 2648 10=____8.

2.18. Hexadécimal, dans lequel il convient de représenter un nombre binaire en deux groupes de 4 bits. 2.19. Système avec base 8. 2.20. a) 38=0112 ; b) 78=1112 ; c) 08 = 0002 ; d) 76428 = 1111101000102 ;

e) 10368 = 10000111102 ; f) 21058= 100010001012. 2.21. a) 1012=58 ; b) 1102=68 ; c) 0102=28; d) 1110001010102 = 70528 ; e) 10110001112 = 13078 ;

f) 1001101001012 = 46458. 2.22. Selon le tableau de procédure. 2.8 : 67248= = (512X6) + (64x7) + (8x2) + (1X4)=3540 10. 2.23. Selon la procédure fig. 2.3 :

2648 10 : 8 = 331, reste 0 (MP) ; 331 : 8= 41, reste 3 ; 41 : 8= 5, reste 1 ; 5 : 8= 0, reste 5 (CP) ; 2648 10=51308.

Système de numérotation octale

Un système de nombres entiers positionnels en base 8. Il utilise les chiffres de 0 à 7 pour représenter les nombres.

Le système octal est souvent utilisé dans les domaines liés aux appareils numériques. Il se caractérise par une conversion facile des nombres octaux en nombres binaires et vice versa, en remplaçant les nombres octaux par des triplets binaires. Auparavant, il était largement utilisé dans la programmation et dans la documentation informatique en général, mais il a maintenant été presque entièrement remplacé par l'hexadécimal.

Système de nombres hexadécimaux

(nombres hexadécimaux) - un système de numérotation positionnelle basé sur la base entière 16. Généralement, les chiffres décimaux de 0 à 9 sont utilisés comme chiffres hexadécimaux et les lettres latines de A à F pour désigner les nombres de 10 10 à 15 10, c'est-à-dire (0 , 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).

Règles de conversion de nombres décimaux vers et depuis ceux-ci

·

Pour convertir du binaire en décimal, utilisez le tableau de puissances de base 2 suivant :

De même, en partant du point binaire, 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 est équivalent au nombre décimal 49.

Transformation par la méthode de Horner

Afin de convertir des nombres binaires en décimaux à l'aide de cette méthode, vous devez additionner les nombres de gauche à droite, en multipliant le résultat précédemment obtenu par la base du système (dans ce cas, 2). Par exemple, le nombre binaire 1011011 est converti au système décimal comme suit : 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 Autrement dit, dans le système décimal, ce nombre s'écrira 91. Ou le nombre 101111 est traduit en système décimal comme celui-ci : 0*2+1=1 >> 1*2+0=2 >> 2*2+1=5 >> 5*2+1=11 >> 11*2+1=23 >> 23*2+1=47 Autrement dit, dans le système décimal, ce nombre s'écrira 47.

Conversion de nombres décimaux en binaires

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 avec reste 0
  • 2 /2 = 1 avec reste 0
  • 1 /2 = 0 avec reste 1

On divise donc chaque quotient par 2 et on écrit le reste à la fin de la notation binaire. Nous continuons la division jusqu'à ce qu'il n'y ait plus de 0 dans le dividende. Nous obtenons ainsi le nombre 19 en notation binaire : 10011.

Conversion de nombres binaires fractionnaires en nombres décimaux

Nous devons convertir le nombre 1011010.101 au système décimal. Écrivons ce nombre comme suit :

Conversion de nombres décimaux fractionnaires en nombres binaires

La conversion d'un nombre fractionnaire du système de nombres décimal vers le système binaire s'effectue à l'aide de l'algorithme suivant :

  • · Premièrement, toute la partie de la fraction décimale est convertie en système de nombres binaires ;
  • ·La partie fractionnaire de la décimale est ensuite multipliée par la base du système de nombres binaires ;
  • · Dans le produit résultant, la partie entière est sélectionnée, qui est prise comme valeur de la première décimale 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 continuent à partir de l'étape précédente.

Exemple : Vous devez convertir le nombre décimal fractionnaire 206,116 en un nombre binaire fractionnaire.

La traduction de la partie entière donne 206 10 = 11001110 2 selon les algorithmes décrits précédemment ; Nous multiplions la partie fractionnaire par la base 2, en entrant les parties entières du produit aux décimales du nombre binaire fractionnaire souhaité :

  • 116 * 2 = 0.232
  • 232 * 2 = 0.464
  • 464 * 2 = 0.928
  • 928 * 2 = 1.856
  • 856 * 2 = 1.712
  • 712 * 2 = 1.424
  • 424 * 2 = 0.848
  • 848 * 2 = 1.696
  • 696 * 2 = 1.392
  • 392 * 2 = 0.784

On obtient : 206,116 10 =11001110,0001110110 2

· Convertissez les nombres octaux en décimaux.

L'algorithme de conversion des nombres du système de nombres octal en système décimal est similaire à ce dont j'ai déjà parlé dans la section : Convertissez des nombres binaires en décimaux.

Pour convertir un nombre octal en binaire, vous devez remplacer chaque chiffre du nombre octal par un triplet de chiffres binaires.

Exemple : 2541 8 = 010 101 100 001 = 010101100001 2

Il existe un tableau pour convertir les nombres octaux en binaires

· Conversion hexadécimale nombres en décimales.

Pour convertir un nombre hexadécimal en nombre décimal il faut présenter ce nombre comme la somme des produits des puissances de la base du système numérique hexadécimal par les chiffres correspondants dans les chiffres du nombre hexadécimal.

Par exemple, vous souhaitez convertir le nombre hexadécimal 5A3 en décimal. Ce numéro comporte 3 chiffres. Conformément à la règle ci-dessus, nous la présentons comme une somme de puissances en base 16 :

5A3 16 = 3·16 0 +10·16 1 +5·16І= 3·1+10·16+5·256= 3+160+1280= 1443 10

Pour convertir un nombre binaire à plusieurs chiffres en hexadécimal, vous devez le diviser en tétrades de droite à gauche et remplacer chaque tétrade par le chiffre hexadécimal correspondant.

Par exemple:

010110100011 2 = 0101 1010 0011 = 5A3 16

Table de conversion des nombres