ch1_codage.pdf
TRANSCRIPT
PLAN
3
Systèmes de numération et code Algèbre de Boole et portes logiques Circuits logiques combinatoires Circuits arithmétiques Circuits séquentiels
Systèmes de numération et codes
5
Introduction: • Pour qu’une information numérique soit traitée par
un circuit, elle doit être mise sous forme adaptée à celui-ci. Pour cela il faut choisir un système de numération de base b (b nombre entier >= 2).
• Un système de numération est caractérisé par:
o Une base b. o Symboles dits Digits qui forment l’alphabet du
systèmes. o Poids des digits selon son rang.
Systèmes de numération et codes
6
Principe de base: Tout nombre N peut être écrit sous la forme polynomiale de base b suivante:
Symbole (digit) de l’alphabet relatif à
la base
Poids du digit = une puissance de la base de rang 0
Exemple: 1543(10)= (3*1) + (4*10) + (5*100) + (1*1000) = (3* 100) + (4* 101) + (5* 102) + (1* 103) => 3,4,5 et sont des symboles de la base 10 => le poids de chaque symbole est une puissance de 10 allant du rang 0 au rang 3 puisqu’on dispose de 4 chiffres.
Systèmes de numération et codes
7
Base du système Symboles(=digits= alphabet) ={ 0..b-1 }
Décimale (b=10) {0 1 2 3 4 5 6 7 8 9}
Binaire (b=2) {0 1}
Octale (b=8) {0 1 2 3 4 5 6 7 }
Héxadécimale (b=16)
{0 1 2 3 4 5 6 7 8 9 A B C D E F}
B 10 B 2 B 8 B 16
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
Equivalence entre les systèmes: décimal, binaire, octal et
hexadécimal
Systèmes de numération et codes
8
Changement de base:
Base b Base 10
On utilise la forme polynomiale (vue précédemment):
Exemples: Si b=16: N= 02E(16) = E × 160+ 2 × 161 + 0 × 162 = 14(10) + 32(10) = 45(10)
Si b=2: N=01101(2) = (1×20)+ (0×21)+ (1×22) + (1×23) + (0×24) = 13(10)
Systèmes de numération et codes
9
Changement de base:
Base b Base 10
On divise le nombre à convertir par la base d’arrivée (2 ou 8 ou 16). On répète les divisions tant que le quotient est différent de 0. Le résultat est donné en lisant les restes de la dernière vers la
première division.
Exemple: Si b=2
Systèmes de numération et codes
10
Changement de base:
Base 16 Base 2
On représente chaque chiffre hexadécimal par son équivalent binaire
On fait des regroupement de 4 bits et on représente leur équivalent hexadécimal
Systèmes de numération et codes
11
Changement de base:
Base 8 Base 2
On représente chaque chiffre octal par son équivalent binaire
On fait des regroupement de 3 bits et on représente leur équivalent hexadécimal
Systèmes de numération et codes
12
Nombre fractionnaires à virgule fixe Comme pour les nombre entiers vu précédemment, un nombre fractionnaire de base b peut être représenté par une somme de symboles appartenant à la base, pondérés au poids fonction de son rang. La pondération d’un nombre fractionnaire binaire se décompose comme suit : Exemple: 1101,01101
Systèmes de numération et codes
13
Nombre fractionnaires à virgule fixe Conversion
Exemple: si b=2
110,101(2) = 1*22 + 1*21 + 0*20 + 1*2-1 + 0*2-2 + 1*2-3 = 6 + 0,5 + 0,125 = 6,625(10)
Exemple si b=2, soit le nombre 3,14 à convertir en Binaire
Base b
Base 10
* On procède de la même manière que pour les nombre entiers pour la conversion hexa-binaire(décomposition de chaque digit en 4bits), et octal-binaire (décomposition en 3bits) dans la partie entière et la partie fractionnelle.
Systèmes de numération et codes
14
Système binaire Représentation d’un nombre binaire signé: Un dispositif numérique doit traiter aussi bien les nombres positifs que négatifs, => prise en compte des signes + et -.
1ère méthode: Représentation exacte: N = bit de signe + valeur absolue Exemples: + 47 = 0 101111 - 47 = 1 101111 Remarques: Simple mais non convenable. Inconvénient :(0+ et 0-), circuits la représentant complexes
=0 si positif =1 si négatif
2ème méthode: Complément à 2: • Si N positif => bit de signe(0) + binaire pur • Si N négatif => bit de signe 1 écrit en
complément à 2
• Complément à 2 (C2)s’obtient par l’addition: C 2= C 1 + 1 C 1 : Complément à 1 s’obtient: en inversant les bits du nombre N (0 devient 1 et 1 devient 0)
• Exemple: N=10110 : (C1) 01001 + 1 (C2) 01010
Systèmes de numération et codes
15
Système binaire Remarque 1: Pour revenir d’un nombre complémenté à 2 au nombre binaire initial, il faut de nouveau complémente à 2. Remarque 2: En notation C2 et avec n bits, on représente les nombres signés compris dans l’intervalle [-2n-1 , 2n-1 -1] Déduction : Toute soustraction se ramène à une addition en remplaçant les nombres négatifs par leurs C2. A-B = A + (-B) = A + (C2(B))
Addition binaire :
Systèmes de numération et codes
16
Système binaire Multiplication binaire : Remarque: Si le résultat de l’opération n’est pas représentable dans le système utilisé, on parle de débordement (overflow): correspond à une retenue sortante à 1
Systèmes de numération et codes
17
Codes L’action de correspondre à des nombres, des lettres ou des mots un groupe spécial de symboles s’appelle « codage ». On distingue:
Codes numériques
Codes alphanumériques (ASCII)
Code BCD(Binary Coded Decimal) Chaque chiffre décimal est représenté par son équivalent binaire sur 4 bits.
Code Gray Distance de 1 entre deux mots de code consécutif.
Effet de miroir selon les 2 axes + ajout de 1 dans la colonne à
sa gauche
Systèmes de numération et codes
18
Codes Codes alphanumériques: • les informations qu’on a à transmettre ne sont pas toujours des nombres
mais peuvent être aussi des lettres, des signes de ponctuation, caractères de commande, etc… :objet des codes alphanumériques, le plus utilisé est le code ASCII.
• ASCII (American Standard Code for Information Interchange)
Forme standard, on utilise 7 bits (b6 b5 b4 b3 b2 b1 b0 )=> 128 caractères (commande, chiffres décimaux, lettres alphabétiques majuscules et minuscules et les signes de ponctuation).
Forme étendue, ajout d’un 8ème bit => 128 caractères de plus pour
prendre en considération des symboles propres à l’écriture de certaines langues (les accents, traits graphiques, symboles scientifiques.): code ASCII 8bits adopté par tous les micro-ordinateurs IBM.
Systèmes de numération et codes
19
Codes Codes alphanumériques: Forme standard du code ASCII (7bits): Chaque caractère est l‘intersection d’une ligne et une colonne, dans cette représentation les colonnes forment les bits de plus fort poids et les lignes celles du plus faible poids
exemple: le code ASCII du caractère A=100 0001(2) = 41(h) = 65(10)
Algèbre de Boole et portes logiques
21
Algèbre de Boole: Ensemble de variables à deux états (0 et 1) dit booléennes, muni de trois opérateurs élémentaires:
• Multiplication logique : ET • Addition logique : OU • L’inverse logique : NON
Algèbre de Boole et portes logiques
22
Théorèmes de l’algèbre de Boole: Pour effectuer tout calcul booléen, on utilise un ensemble de théorèmes:
Algèbre de Boole et portes logiques
23
Portes logiques complètes: NON-ET (NAND) et NON-OU (NOR) sont dites des portes complètes car toute fonction logique peut se ramener à une combinaison de portes NAND seulement ou NOR seulement.
Portes ou-exclusif (xor) , ni-exclusif (xnor):
Circuits logiques combinatoires
25
Pour réaliser un circuit logique combinatoire, le concepteur doit
utiliser plusieurs portes logiques élémentaires. Pour faciliter sa tâche, les fabricants fournissent des circuits sous forme intégrés comportant chacun plusieurs portes à des degrés d’intégration différents. Les dispositifs couramment utilisés dans les systèmes numériques: codeurs, décodeurs, multiplexeurs, démultiplexeurs, comparateurs…
Circuits dont la fonction de sortie s’exprime par une expression logique des variables d’entrées
Circuits arithmétiques
30
Quelques circuits typiques de mise en œuvre de opérations arithmétiques Demi additionneur: Additionneur complet:
Somme de 3 bits : A, B, Rin
Somme : S = A + B + Rin Retenue : vient de l’une des deux sommes
Circuits séquentiels
33
◦ prise en compte du temps.
◦ La sortie du circuit dépend:
des valeurs d’entrée,
des sorties précédentes.
◦ Utilisation de l’horloge, mémoire,… .