Hiver 25 Systèmes de Numérotation - Codage Forme Polynomiale Tout nombre peut s'exprimer sous sa forme polynomiale : n N?? a? b i? i i 2 Cours : Logique combinatoire
Hiver 25 Forme Polynomiale Dans cette équation polynomiale: b = base du système de numérotation i = rang ou poids d'un nombre a = nombre appartenant à {,,..., (b-)} Exemple: (997) = x 3 + 9X 2 + 9x + 7x Poids du chiffre = Rang du chiffre = 3 3 Les Principales Bases Base Décimale (b = ): a? {,,2,3,4,5,6,7,8,9} Base Binaire (b = 2) a? {,} Base Octale (b = 8) a? {,,2,3,4,5,6,7} Base Hexadécimale (b = 6) a? {,,2,3,4,5,6,7,8,9,A,B,C,D,E,F} 4 Cours : Logique combinatoire 2
Hiver 25 Base Binaire Bit comme unité d information: La réponse à une question fermée : oui ou non. Des informations complexes peuvent aussi se ramener à des suites de oui / non...? Unité d information : ou (oui / non) = bit ( binary digit) Le bit (Binary Digit) est une unité de mesure en informatique désignant la quantité élémentaire d'information représentée par un chiffre binaire L ordinateur est conçu pour traiter une information binaire (transistors). 5 Base Binaire Exposé du problème: Comment coder, avec des suites de bits, des informations complexes de types variés : Textes Images Sons Vidéos Bases de données 6 Cours : Logique combinatoire 3
Hiver 25 Base Binaire: Les nombres Pour écrire les nombres on utilise : - un ensemble fini de symboles - les positions (en nombre indéfini) de ces symboles En base 2, on a 2 symboles :, = *2 4 + *2 3 + *2 2 +*2 + *2 (écrit en base ) = 6 + + 4 + + = 2 (écrit en base ) 7 Base Binaire: Les nombres bit : ou = 2 (2 ) valeurs possibles 2 bits :,, ou = 4 (2 2 ) valeurs possibles 3 bits :,,,,,, ou = 8 (2 3 ) valeurs possibles 4 bits :,,,, = 6 (2 4 ) valeurs possibles 8 bits :,,, = 256 (2 8 ) valeurs possibles 6 bits :, = 65 536 (2 6 ) valeurs possibles 32 bits :, = 4 294 967 296 valeurs possibles 8 Cours : Logique combinatoire 4
Hiver 25 Changements de base Représentation de nombres décimaux De la base b à la base décimale De la base décimale à la base b Représentation de nombres binaires De binaire à octal De octal à binaire De binaire à hexadécimal De hexadécimal à binaire 9 De la base b à la base décimale Ecrire simplement la forme polynomiale, puis calculer. Exemples: (237) 8 = 2x8 2 + 3x8 + 7x8 = (59) (56A) 6 = 5x6 2 + 6x6 + x6 = 386 () 2 = x2 2 + x2 + x2 = (5) Cours : Logique combinatoire 5
Hiver 25 De la base décimale à la base b Deux techniques: Soustractions successives Divisions successives Soustractions successives: Exemple: (386) = (?) 6 Solution de l'exemple: 386-256 = 3 ; 3-256 = 874 874-256 = 68 ; 68-256 = 362 362-256 = 6 Donc le nombre commence par un 5 2 Cours : Logique combinatoire 6
Hiver 25 Poursuivons l'exemple: 6-6 = 9 ; 9-6 = 74 74-6 = 58 ; 58-6 = 42 42-6 = 26 ; 26-6 = Donc, le second nombre est un 6 Et le troisième est un ou un A Solution: (386) = (56A) 6 3 Divisions successives: Exemple: (386) = (?) 6 Solution de l'exemple: 386 6 = 86 reste (ou A) 86 6 = 5 reste 6 5 6 = reste 5 Donc le nombre est (56A) 6 4 Cours : Logique combinatoire 7
Hiver 25 De la base binaire à la base octale Conversion en groupant des ensembles de 3 bits. Exemple: () 2 = (?) 8 Rappel: = ; = ; = 2 ; = 3 = 4 ; = 5 ; = 6 ; = 7 Solution de l'exemple: ( ) 2 = (226) 8 5 De la base octale à la base binaire Opération inverse à la précédente Exemple: (3452) 8 = (?) 2 Solution de l'exemple: (3452) 8 = ( ) 2 6 Cours : Logique combinatoire 8
Hiver 25 De la base binaire à la base hexadécimale Conversion en groupant des ensembles de 4 bits. Exemple: () 2 = (?) 6 Solution de l'exemple: ( ) 2 = (2D) 8 7 De la base hexadécimale à la base binaire Opération inverse à la précédente Exemple: (3F5B) 6 = (?) 2 Solution de l'exemple: (3F5B) 6 = ( ) 2 8 Cours : Logique combinatoire 9
Hiver 25 Opérations mathématiques en binaire Addition Soustraction Multiplication Division 9 Opérations mathématiques en binaire Addition La table d addition : + = + = + = + = et report de 2 Cours : Logique combinatoire
Hiver 25 Opérations mathématiques en binaire Soustraction La table de soustraction : - = - = et retenue de - = - = 2 Opérations mathématiques en binaire Soustraction (suite) Complément à : S obtient en complémentant le nombre binaire. Ex. A = Complément à de A /A = Complément à 2 : S obtient en ajoutant au complémentant à. Ex. A = /A = Complément à 2 de A = /A+ = 22 Cours : Logique combinatoire
Hiver 25 Opérations mathématiques en binaire Soustraction (suite) Soustraction par complémentation à 2 et addition Ex. - On ajoute des s + Complément à + Complément à 2 ------------------------------------------ On ignore le report 23 Opérations mathématiques en binaire Soustraction (suite) Lorsque le bit le plus significatif =, le nombre est négatif Le complément à 2 du nombre négatif redonne le même nombre mais avec un signe positif 24 Cours : Logique combinatoire 2
Hiver 25 Opérations mathématiques en binaire Soustraction (suite & fin) Exemples Addition de 2 nombre positifs 27? 6? 88?? Soustraction de 2 nombres avec résultat positif 6? 27??34?? Soustraction de 2 nombres avec résultat négatif 27? 6?? 34?? Addition de 2 nombres positifs ( détection du changement de signe) -> débordement 6? 88? 49?? 25 Codes BCD «Binary Coded Decimal» Gray ou binaire réfléchi ASCII «American Standard Code for Information Interchange» Unicode 26 Cours : Logique combinatoire 3
Hiver 25 Code BCD (Binary coded decimal) Décimal Codé Binaire : Chaque chiffre d'un nombre est codé sur 4 bits 2 Ce code simplifie la conversion décimal binaire 27 Code BCD (Binary coded decimal) Souvent utilisé par les machines à calculer. Combine les avantages du décimal et du binaire. Les chiffres de à 9 suivent le code binaire naturel. Par contre, les valeurs de A à F ne sont pas utilisées. Opérations arithmétiques plus complexes. 28 Cours : Logique combinatoire 4
Hiver 25 Code Gray Ce codage permet de ne faire changer qu'un seul bit à la fois quand un nombre est augmenté d'une unité : 2 3 4 5 6 7 Ce code évite le changement simultané de 2 bits, et donc les états transitoires indésirables. 29 Code ASCII (American Standard Code for International Interchange). Norme universelle pour la transmission de données. ASCII normal: 28 caractères sur 7 bits; ASCII étendu: 256 caractères sur 8 bits. Norme ISO Latin 3 Cours : Logique combinatoire 5
Hiver 25 Code Unicode (ISO 8859-) Le code ASCII est limité à 256 caractères. Pour dépasser cette limite, une nouvelle norme sur 6 bits a été créée. Donc, plus de 65 caractères disponibles: Japonais, Mandarin, Grec, Russe, Hébreux, Arabe, Coréen,... 3 Notion de code numérique Un code numérique est une relation conventionnelle établie entre des nombres et des entités. Ex. - numéro compte : 72 6 5 - Ville : 22 = Casa - code postal : 2 = Rabat. Pour interpréter une donnée, la machine doit savoir à quel code elle se réfère. 32 Cours : Logique combinatoire 6
Hiver 25 Codage des caractères Table des codes ASCII (un octet) (American Standard Code for Information Interchange) Table standard : 28 caractères Table étendue : 28 caractères Unicode (2 octets) : 65536 caractères 33 Codage d une information structurée Information composée s insérant dans une structure prédéfinie : Par exemple une adresse (65 octets): - Numéro : 2 octets ( 65535) - Rue : octets ( caractères) - Nom de rue : octets ( caractères) - CP : 3 octets ( 6 777 26) - Nom de ville : 5 octets ( caractères) 34 Cours : Logique combinatoire 7
Hiver 25 Codage des images Une image = tableau de points (pixel) Deux caractéristiques principales : Résolution = nombre de pixels hor. x nombre de pixels vert. Par exemple : 8 x 6 Nombre de couleurs pour chaque pixel Ex. : résolution 7 x 7, 2 couleurs (noir et blanc). Chaque point peut être codé par un bit. 35 Nuances de couleur En Bitmap (BMP) chaque pixel est codé par un groupe de bits. Le nombre de couleurs différentes dépend de la largeur de ce groupe de bits. 6 millions de couleurs 6 couleurs 2 couleurs 24 bits/pixel 4 bits/pixel bit/pixel 36 Cours : Logique combinatoire 8