En électronique numérique les données manipulées sont des niveaux de tension ou souvent des seuils de tension, symbolisant des états logiques représentés par 0 ou 1. On parle de logique positive lorsqu'on associe l'état logique 1 au seuil de tension le plus élevé et de logique négative lorsque l'état logique 0 est associe au seuil de tension le plus bas. Les données, c'est-à-dire des nombres sont représentés dans une base dont les seuls chiffres sont 0 et 1. On parle de base binaire ou base 2. Un nombre N pourra donc s'écrire en base 2 ainsi:
N=an-1 2 n-1+an-22n-2+...+a020 .
Les coefficients ai (i=0—>n-1) pouvant prendre les valeurs 0 ou 1. an-1an-2...a0 représente le code binaire du nombre N.
Exemple: (10111)2=1x24+0x23+1x22+1x21+1x20=(23)10.
Le code hexadécimal utilise la base 16. Il est utile lorsqu'on travaille avec des nombres de grandes valeurs. Les chiffres de cette base vont de 0 à 9 et de A à F. Il convient particulièrement au niveau des microprocesseurs.
Exemple: (9635)10=(25A3)16.
Le code Gray ou code binaire réfléchi est tel que pour passer d'un nombre à son suivant, on change seulement 1 bit (voir tableau de correspondance). Il est très utilisé pour la synthèse de codeurs angulaires et au niveau du tableau de karnaugh pour la simplification de fonctions logiques.
Decimal |
Gray |
Decimal |
Gray |
|
0 |
0000 |
8 |
1100 |
|
1 |
0001 |
9 |
1101 |
|
2 |
0011 |
10 |
1111 |
|
3 |
0010 |
11 |
1110 |
|
4 |
0110 |
12 |
1010 |
|
5 |
0111 |
13 |
1011 |
|
6 |
0101 |
14 |
1001 |
|
7 |
0100 |
15 |
1000 |
Il ne convient cependant pas pour des opérations arithmétiques à moins d'associer un transcodeur. Pour convertir un nombre binaire en binaire réfléchi, on additionne, sans prendre en compte les retenus, ce nombre à un autre nombre obtenu en le décalant d'une position vers la gauche, puis on abandonne le chiffre du plus petit poids.
Exemple: convertir en binaire réfléchi le nombre binaire 0110
0 | 1 | 1 | 0 | ||
+ | 0 | 1 | 1 | 0 | |
= | 0 | 1 | 0 | 1 | 0 |
Code BCD
Le code BCD (Binary Coded Decimal), décimal cod é en binaire, représente chaque chiffre décimal par son équivalent binaire. Il est très utile pour visualiser des chiffres mais ne convient par pour des opérations arithmétiques.
Exemple: ( 1 0 0 1 0 1 01 )BCD = (95)10 .
conversion décimal en binaire
Pour convertir un nombre décimal (base 10) en binaire, deux méthodes existent. La première méthode consiste à prendre les restes successifs en sens inverse de la division euclidienne de ce nombre par 2 jusqu'à avoir un quotient nul.
on a donc (35)10 =(100011)2 .
La deuxième méthode consiste à décomposer le nombre en une somme de puissance de 2. Les puissances de 2 qui n'apparaissent pas sont affectées du coefficient 0, les autres du coefficient 1. La valeur en binaire est représentée par la juxtaposition de ces différents coefficients dans l'ordre inverse de leurs puissances respectives décroissantes.
Exemple: 35=32+2 = 2 5 + 21 + 20=1x25 + 0x24 + 0x23 + 0x22 + 1x21 + 1x20 . Les puissances 24 , 23 et 22 sont toutes affectées du coefficient 0. Soit donc ( 35)10=(100011)2
conversion binaire en hexadécimal
Quatre bits sont suffisants pour représenter en binaire les 16 premiers chiffres (voir tableau).
|
Pour convertir un nombre binaire en hexadécimal, on effectue un regroupement des bits quatre par quatre en partant du bit de poids faible (LSB: Least Significant Bit) puis on convertit chaque groupements de bits en hexadécimal en tenant compte du tableau ci-contre.
Exemple: conversion de 11011011110 en hexa. binaire 0110 1101 1110 Hexadécimal 6 D E De la même manière on convertit un nombre hexadécimal en binaire:
Exemple: Hexadécimal B 2 C binaire 1011 0010 1100
|