Chapitre 1 : Systèmes de Numération et Codage (PDF)
Document Details
Lahcen Nkhalili
Tags
Related
- Santé Numérique : Le Dossier Patient Informatisé (PDF)
- Introduction à l'ingénierie des systèmes - GBelloncle PDF
- Introduction "Audio Numérique" Cours 03 - STA PDF
- Quiz Sur Les Systèmes Humains PDF
- Introduction aux Systèmes d'Information en Santé PDF
- Structure et dynamique des systèmes vivants - Cours CM1 PDF
Summary
Ce document est un document de cours concernant les systèmes numériques et leur codage. Il décrit les systèmes de numération, notamment décimaux, octaux, binaires et hexadécimaux. Le document est bien structuré et organisé.
Full Transcript
Chapitre I : Systèmes de Numération et Codage Électronique Numérique Plan : Systèmes Numériques Chapitre I : SYSTEMES...
Chapitre I : Systèmes de Numération et Codage Électronique Numérique Plan : Systèmes Numériques Chapitre I : SYSTEMES DE NUMERATION ET CODAGE Chapitre II : LES PORTES LOGIQUES - ALGEBRE DE BOOLE Chapitre III : FONCTIONS COMBINATOIRES Chapitre IV : ANALYSE ET SYNTHESE DES CIRCUITS LOGIQUES COMBINATOIRES Chapitre V : LES CIRCUITS SEQUENTIELS Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 1 Chapitre I : Systèmes de Numération et Codage Électronique Numérique Chapitre I : SYSTEMES DE NUMERATION ET CODAGE I - LES SYSTEMES DE NUMERATION I - 1 - Introduction Les calculateurs numériques sont conçus pour traiter et mémoriser l’information sous toutes ses formes. Pour des raisons techniques, les différents circuits d’un calculateur traitent l’information sous sa forme la plus élémentaire en la réduisant en une suite d’éléments binaires (0,1). Ils sont généralement organisés pour travailler sur une succession de groupe de bits appelé mot (word) qui sont de longueur 4, 8, 16, 32 ou 64 bits. Ces mots binaires peuvent représenter les nombres ou les caractères alphanumériques en fonction d’une loi de codage. Pour utiliser au mieux les différents équipements, on est amené à modifier la représentation de l’information en fonction de l’environnement ou elle se trouve. I – 2 - Représentation des nombres entiers (nombres non signés) Un nombre entier positif x peut être représenter dans un système de numération, de base B, par une suite de n chiffres ai compris entre 0 et (B-1) comme suit : N B an1an2..........a1ao a i 0, 1,.................., (B - 1) Les ai sont appelés les DIGITS et lorsque B = 2 on appellera les ai des BITS. Le digit an-1 est le bit le Plus Significatif (MSB : Most Significant Bit) Le digit a0 est le bit le Moins Significatif (LSB : Least Significant Bit) La valeur décimale de NB (dans la base 10) se calcule à partir de l’expression suivante : n 1 N10 a i Bi a n 1Bn 1 a n 2 Bn 2 ..... a1B1 a 0 B0 i 0 Dans cette représentation le nombre NB peut prendre toutes les valeurs décimales entières possibles définies par : 0 ≤ (NB)10 ≤ (Bn - 1)10 I – 3 - Les systèmes de numération usuels Le système Décimal (D) B = 10 et a i {0,1,2,3,4,5,6,7,8,9} N10 N D a n 1a n 2.....a 1a 0 N10 a n 110 n 1 a n 2 10 n 2 ... a 1101 a 0 10 0 Exemple : N10 892 , n 3 alors 0 N10 10 3 1 999 et N10 N D 8x10 2 9x101 2x10 0 892 Le système Octal (O) B = 8 et a i {0,1,2,3,4,5,6,7} N8 N O a n 1a n 2.....a1a 0 Sa valeur décimale est donnée par : Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 2 Chapitre I : Systèmes de Numération et Codage Électronique Numérique ( N 8 )10 a n 1 8 n 1 a n 2 8 n 2 ... a 1 81 a 0 8 0 Exemple : x 8 374 , n 3 alors 0 ( N 8 )10 83 1 51110 et ( N 8 )10 3x8 2 7 x81 4x8 0 252 Le système Binaire (B) B=2 et a i {0,1} N 2 N B a n 1a n 2.....a1a 0 ai ne peut prendre que 0 ou 1, cette restriction à 2 valeurs permet de faire correspondre aux 0 et 1 les états d’un commutateur tout ou rien (interrupteur, relais, transistor en commutation…) La valeur décimale N2 est donnée par : N10 an 1 2n 1 an 2 2n 2 ... a1 21 a0 20 Exemple : N 2 1101 , n 4 alors 0 ( N 2 )10 24 1 1510 et ( N 2 )10 1x 23 1x 22 0x 21 1x 20 13 Le système Hexadécimal (H) B=16 et a i {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} N16 x H a n 1a n 2.....a1a 0 Sa valeur décimale est donnée par : N16 an 116n 1 an 216n 2 ... a1161 a0160 Exemple : N16 5 AE , n 3 alors 0 ( N16 )10 163 1 409510 et ( N16 )10 5 x162 10 x161 14 x160 1454 I – 4 - Correspondance entre les différents systèmes de numération On représente les 15 premiers chiffres décimaux Décimal Binaire Octal Hexadécimal 0 0000 0 0 1 0001 1 1 2 0010 2 2 3 0011 3 3 4 0100 4 4 5 0101 5 5 6 0110 6 6 7 0111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F 16 10000 20 10 Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 3 Chapitre I : Systèmes de Numération et Codage Électronique Numérique I – 5 –Transcodage C’est l’opération qui permet de passer d’un système de numération à un autre Conversion Décimal vers un système de base B {B, O, H} Soit N10 un nombre décimal représenté par une partie entière de n digits et une partie fractionnaire de m digits. Alors N10 s’écrit : N10= ND = an-1 an-2 ……a1 a0 , a-1 a-2 …… a-m La conversion de N10 dans le système de base B se fait par application des règles suivantes : On divise la partie entière de N10 et les quotients résultants par la base B. Le reste ri de chacune des divisions constitue les digits successifs de x 10 dans la base B pris dans l’ordre : rn-1 rn-2 …… r1ro (ro étant le premier reste, rn-1 est le dernier reste) On multiplie la partie fractionnaire de N10 et celle résultante des multiplications par la base B. La partie entière de chacune des multiplications successives constitue les digits de la partie fractionnaire de N10 dans la base B pris dans l’ordre: e-1 e-2 e-3 ….e-m (e-1 étant la première partie entière) Remarque On peut convertir la partie entière de N10 en l’exprimant en sommes de puissances de la base B Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 4 Chapitre I : Systèmes de Numération et Codage Électronique Numérique Conversion Décimal Binaire Exprimer le nombre décimal en sommes de puissance de 2 6 3 2 (76)10=64+8+4 = 2 +0+0+2 +2 +0+0 = (1001100)2 Répétition de division 25/2=12 + 1 , 12/2 = 6 + 0 , 6/2 = 3 +0 , 3/2 = 1 + 1 , 1/2 = 0 + 1 2510 = 1 1 0 0 12 Octal : répétition de division 266/8 = 33 + 2 (poids faible) , 33/8 = 4 + 1 , 4/8 = 0 + 4 (poids fort) 26610 = 4 1 28 Hexadécimal : répétition de division 108/16 = 6 + 12, 6/16 = 0 + 6 donc 10810 = 6C16 Octal Binaire : chaque chiffre en octal est transformé en son équivalent binaire de 3 bits 54318 5 4 3 1 donc 54318 = 1011000110012 101 100 011 001 Hexadécimal : on convertit l’octal en binaire puis on regroupe les bits par 4 en commençant par la droite pour la partie entière et par la gauche pour la partie fractionnaire 12348 =001 010 011 1002 = 0010 1001 11002 = 29C16 Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 5 Chapitre I : Systèmes de Numération et Codage Électronique Numérique Binaire Octal : on regroupe les bits par 3 en commençant par la droite pour la partie entière et par la gauche pour la partie fractionnaire 110101102 011 010 110 donc 110101102 =3268 3 2 6 Hexadécimal : on regroupe les bits par 4 en commençant par la droite pour la partie entière et par la gauche pour la partie fractionnaire 101110110012 =101 1101 10012 = 5D9216 Hexadécimal Binaire : chaque chiffre en hexadécimal est transformé en son équivalent binaire de 4 bits 9 F 216 = 1001 1111 00102 Octal : on convertit l’hexadécimal en binaire puis on regroupe les bits par 3 en commençant par la droite pour la partie entière et par la gauche pour la partie fractionnaire C0DE16= 1100 0000 1101 11102 =1 100 000 011 011 1102 = 1403368 Remarque Déplacer la virgule d’un rang vers la droite dans l’expression d’un nombre revient à multiplier ce nombre par la base B. Déplacer la virgule d’un rang vers la gauche dans l’expression d’un nombre revient à diviser ce nombre par la base B. I – 6 - Représentation des nombres I – 6 – 1 - Représentation des nombres en virgules flottante N = 11,7510 = 1011,112 Pour représenter N en virgule flottante on l’écrit autrement en déplaçant la virgule vers la gauche: N = 1011,11 x 20 = 101,111 x 21 = 10,1111 x 22 = 0,101111 x 24 N est représenté par un nombre inférieur à 1 multiplié par une puissance de 2. L’exposant représente la position de la virgule à partir de la gauche. On utilise deux termes : mantisse et exposant * le terme 101111 = mantisse * le terme 4 = 100 = caractéristique ou exposant Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 6 Chapitre I : Systèmes de Numération et Codage Électronique Numérique N = 11,75 est représenté en virgule flottante, dans des registres, comme suit : 1 0 1 1 1 1 1 0 0 mantisse exposant Si le chiffre significatif de la mantisse est 1, la représentation est dite normalisée. I – 6 – 2 - Représentation des nombres signés On adopte une certaine convention pour représenter le signe (+ ou -). Généralement on ajoute un autre bit au nombre (à gauche des bits de grandeurs), appelé bit de signe (0 pour les valeurs positives et 1 pour les valeurs négatives). n-1 n-1 Avec n bits on représente les nombres de – (2 – 1) à (2 – 1). Le zéro possède deux représentations distinctes +0 et -0. Nombre binaire Equivalent signe Valeur absolue décimal 0 1 1 +3 0 1 0 +2 0 0 1 +1 0 0 0 +0 1 0 1 -1 1 1 0 -2 1 1 1 -3 I – 6 – 3 - Nombres signés en complément à 2 Complément à 1 d’un nombre On donne un mot binaire A de n bits. Soit A’ le complément à 1 de A. A et A’ sont liés par : A + A’ = 2n – 1 =(11…………1) n fois 1 Donc si A = 110001010 A’ = 001110101 ( A’ : complément à 1 de A) A’ s’obtient en inversant tous les bits de A y compris le signe.. Complément à 2 d’un nombre : il s’obtient en ajoutant 1 au complément à 1 A = 110001010 A’ = 001110101 A’’ = 001110110 A’’ = A’ + 1 n Donc A + A’’ = 2 = (100…………0) 1 suivi de n 0 I – 7 - Addition et soustraction binaires Quatre cas peuvent survenir lorsqu’on additionne ou soustrait des nombres binaires : Addition Soustraction 0+0=0 0–0=0 1+0=1 1- 0=1 1 + 1 = 10 = 0 et report de 1 1- 1=0 1+ 1 + 1 = 11 = 1 et report de 1 0 - 1 = 1 et report de 1 Nbre X x3 x2 x1 x0 Nbre X x3 x2 x1 x0 Nbre Y y3 y2 y1 y0 Nbre Y y3 y2 y1 y0 XFilière S3 (INFO)- + Y Informatique S2 S1 S1 S0 X - Y D3 Prof D DNKHAILI : LAHCEN 2 1 D0 Retenues r3 r2 r1 r0 7 Retenues r3 r2 r1 r0 Chapitre I : Systèmes de Numération et Codage Électronique Numérique I – 8 – Dépassement Dans une machine numérique les blocs de calcul ont toujours une taille limitée. Avec n bits n on représente des nombres positifs compris entre 0 et 2 – 1. Additionner deux nombres n peut conduire à un résultat dépassant 2 – 1 (dépassement supérieur). De même soustraire un nombre d’un nombre plus petit conduit à un nombre négatif (dépassement inférieur). 10 1010 13 1101 6 0000110 -3 0011 +6 0110 -13 0001101 7 0111 +19 1 0011 3 -7 1111001 0 0111 Dépassement supérieur. Solution : Dépassement inférieur. Solution : augmenter le nombre de bits Addition en complément à 2 Si après une addition ou une soustraction on a une retenue terminale égale à 0, on obtient les résultats en vraie grandeur, et si l’on obtient une retenue terminale égale à 1, il y a dépassement. I - 9 – Addition dans la représentation en complément à 2 (Cà2) : On effectue l’addition binaire des nombres positifs et négatifs. Règles : Le signe reste inchangé (0 pour le nombre > 0 et 1 pour le nombre < 0) Si le nombre est positif, la Valeur absolue reste inchangée. Si le nombre est négatif, on remplace la Valeur absolue par son Complément à 2. On effectue ensuite l’addition binaire y compris les signes Si le signe du résultat est 0 résultat positif alors Résultat = le décimal de la V.a. Si le signe du résultat est 1 résultat négatif alors Résultat = - (le décimal du complément à 2 de la V. a.) +4 0 0100 +9 0 1001 -9 1 0111 -9 1 0111 +9 0 1001 -4 1 1100 +4 0 0100 -4 1 1100 0 1101 +5 1 0 0101 1 1011 1 1 0011 bit non considéré 1011 est le C. à 2 du bit non considéré 01101 = +13 0 0101 = +5 résultat 0011 = Cà2 de 13 1011 = Cà2 de 5 Résultat= -13 donc Résultat = -5 Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 8 Chapitre I : Systèmes de Numération et Codage Électronique Numérique II – CODAGE II – 1 - Introduction L'opération de codage consiste à établir une loi de correspondance appelée Code entre les Informations à représenter et les combinaisons du code, de telle sorte qu'à chaque information correspond une et une seule combinaison du code. Exemple Avec un langage binaire de deux bits b1b0 on a 4 combinaisons possibles: 00, 01, 10 ou 11. On peut donc coder un ensemble de quatre informations (données). Par récurrence, un langage (code) de n bits peut générer 2n combinaisons, il peut donc coder 2n informations distinctes. On distingue trois types de code: ° Les codes des caractères Numériques. ° Les codes Alphanumériques. ° Les codes de sécurité et de transfert. II – 2 - Codes à quatre bits On code, sur 4 bits les chiffres décimaux de 0 à 9. II – 2 - 1 - Le code DCB (Décimal Codé Binaire) (BCD : Binary Coded Decimal) C’est le code binaire sur 4 bits DECIMAL Code BCD B3 B2 B1 B0 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1 Remarque Si on affecte aux bits B3B2B1B0 respectivement les poids 3,2,1,0, N= B3.23+ B2.22+ B1.21+ B0.20 alors chaque digit décimal peut être retrouvé à partir de sa combinaison du code BCD et des poids. Dans ce cas le code BCD est pondéré. C’est un code "incomplet" puisqu’il utilise 10 combinaisons sur 16. On l’appelle aussi code 3210 II – 2 - 2 - Code 1210 Ce code permet de coder les chiffres (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) du système décimal en binaire. Les poids affectés aux quatre bits B3B2B1B0 sont respectivement 1, 2, 1 et 0. Dans ce code des chiffres ont 2 codes: 7 0111 ou 1101 ainsi que 5 0101 ou 1011 On constate que l’un des codes est le binaire sur 4 bits. II – 2 - 3 - Le code AIKEN C’est le code 1210 avec : de 0 à 4 le code binaire et de 5 à 9 l’autre code Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 9 Chapitre I : Systèmes de Numération et Codage Électronique Numérique DECIMAL Code AIKEN B3 B2 B1 B0 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 1 0 1 1 6 1 1 0 0 7 1 1 0 1 8 1 1 1 0 9 1 1 1 1 Pour les chiffres décimaux 0, 1, 2, 3, 4, il correspond avec le code BCD, tandis que pour les nombres décimaux 5, 6, 7, 8, 9, il concorde avec les nombres 11, 12, 13, 14, 15 du code binaire pur. Le code Aiken est fréquemment utilisé dans les automatismes industriels. Remarque Le code AIKEN (1210) est un code pondéré et auto-complémentaire (complément à 9 des nombres codifiés): les codes des digits 5, 6, 7, 8 et 9 sont les compléments à 1, respectivement des codes des chiffres 4, 3, 2,1 et 0. II – 2 - 4 - Le code EXCEDENT 3 (+3) Le code plus 3 ou code excess 3 appelé aussi code STIBIZ du nom de son inventeur. Ce code permet de coder les digits (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) du système décimal en binaire. Le code B3B2B1B0 du digit « d » est le binaire de (d + 3). Le code Excédent 3 est défini par la table de vérité suivant : DECIMAL Code Excédent 3 B3 B2 B1 B0 0 0 0 1 1 1 0 1 0 0 2 0 1 0 1 3 0 1 1 0 4 0 1 1 1 5 1 0 0 0 6 1 0 0 1 7 1 0 1 0 8 1 0 1 1 9 1 1 0 0 Le code excédent 3 est souvent utilisé sur des unités arithmétiques qui calculent en système numérique décimal plutôt qu'en système binaire Remarque Le code Excédent 3 est un code non pondéré et auto- complémentaire. II – 2 - 5 - Le code Réfléchi ou code GRAY Le code GRAY défini sur quatre bits B3B2B1B0 est décri par la table de vérité suivante : Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 10 Chapitre I : Systèmes de Numération et Codage Électronique Numérique Décimal Code GRAY B3 B2 B1 B0 0 0 0 0 0 1 0 0 0 1 2 0 0 1 1 3 0 0 1 0 4 0 1 1 0 5 0 1 1 1 6 0 1 0 1 7 0 1 0 0 8 1 1 0 0 9 1 1 0 1 10 1 1 1 1 11 1 1 1 0 12 1 0 1 0 13 1 0 1 1 14 1 0 0 1 15 1 0 0 0 Somme modulo 2 : ( ) (= 1 si les 2 bits sont différents et = 0 sinon) 0 0 =0 0 1 = 1 1 0 = 1 1 1 = 0 Règles Pour obtenir le code réfléchi d’un nombre décimal il faut : Convertir ce nombre en binaire Décaler d’un bit vers la droite le mot binaire obtenu Effectuer la somme modulo 2 bit à bit entre les 2 mots binaires (le mot obtenu après conversion et celui obtenu après décalage) Code réfléchi de 15 : 15 =( 1 1 1 1) Décalage 0111 Somme modulo 2 1 0 0 0 c’est le code réfléchi de 15 Remarque Les mots A et B sont dit adjacents s’ils différent d’un seul bit Le code GRAY est un code Continu (toutes les combinaisons sont adjacentes 2 à 2), Cyclique (la 1ère combinaison et Réfléchi. Il est utilisé dans la commande industrielle (commande des moteurs électriques) : II – 4 - Les codes alphanumériques Le dialogue entre l'homme et l'ordinateur nécessite un code pour représenter les chiffres numériques et les caractères de l'alphabet ainsi que les différents symboles.Ces codes doivent coder: - les 10 chiffres décimaux: 0,1,2,3,4,5,6,7,8,9. - Les 26 lettres d'alphabet a,b,c,d……..; A,B,C,D…….. - Les différents symboles =,+,-,(,),@,*,……….. Les codes les plus utilisés dans les mini-ordinateurs et micro-ordinateurs sont : Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 11 Chapitre I : Systèmes de Numération et Codage Électronique Numérique Le code ASCII (American Standard Code for Information Interchange) Le code ASCII est défini sur 7 bits suivant la structure Pour effectuer le code d’un caractère, on cherche son correspondant en Hexadécimal composé de deux chiffres celui à gauche est un octal le 2ème est un hexadécimal. Il suffit de coder les 2 chiffres en binaire. Exemples : Z 5A = 101 1010, z 7A = 111 1010 et 7 37 = 011 0111 Filière Informatique (INFO)- S1 Prof : LAHCEN NKHAILI 12