Exercices - Les codes et le codage
Exercice 1
Ecrivez en code BCD les nombres décimaux ci-dessous :
- 13
- 189
- 1225
- 8425
- 313
- 455
Exercice 2
Ecrivez dans le système décimal les codes BCD suivants :
- 10010001
- 100100111001
- 100101001000
- 0101001101111000
Exercice 3
Convertissez en décimal le code binaire réfléchi suivant en utilisant le tableau fourni dans notre cours les codes et le codage :
- 0100
- 1001
- 1000
- 101
Exercice 4
Déterminez le code exprimé dans le système décimal les codes ASCII suivants en utilisant le tableau du code ASCII disponible dans notre cours Les codes et le codage :
- le caractère P
- le caractère A
- le caractère a
- le caractère @
- le caractère #
- le caractère {
Exercice 5
Écrivez le caractère correspondant des codes suivant en se référent à la table du code ASCII disponible dans notre cours Les codes et le codage :
- 64
- 33
- 91
- 120
- 126
La correction : Les codes et le codage
Correction de l'exercice 1
Pour convertir un nombre décimal en un code BCD, nous devons convertir chaque nombre est séparément en une valeur binaire codée sur 4 bits. Ainsi, le code BCD global sera la juxtaposition des différentes représentations binaires de chacun de ses chiffres.
Pour rappel, le tableau à utiliser pour la conversion de chaque chiffre est le suivant :
| Chiffre dans le système Décimal |
Code BCD |
| 0 | 0000 |
| 1 | 0001 |
| 2 | 0010 |
| 3 | 0011 |
| 4 | 0100 |
| 5 | 0101 |
| 6 | 0110 |
| 7 | 0111 |
| 8 | 1000 |
| 9 | 1001 |
Ce qui nous donne donc pour le premier exemple (13)10 = (0001 0011)BCD.
Nous détaillons cette conversion dans le schéma ci-dessous :

Et dans la même logique :
- (189)10 = (0001 1000 1001)BCD
- (1225)10 = (0001 0010 0010 0101)BCD
- (8425)10 = (1000 0100 0010 0101)BCD
- (313)10 = (0011 0001 0011)BCD
- (455)10 = (0100 0101 0101)BCD
Correction de l'exercice 2
Contrairement à l'exercice précédent, pour convertir un code BCD en un nombre décimal, nous aurons à regrouper les différents digits binaires (appelés aussi bits) en groupement de 4 bits puis réécrire en décimal l'équivalent de chaque 4 bits. Le nombre décimal équivalent sera aussi la la juxtaposition des différents chiffres déterminés.
Pour rappel, le tableau à utiliser pour la conversion de chaque chiffre est le suivant :
|
Code BCD |
Chiffre dans le système Décimal |
| 0000 | 0 |
| 0001 | 1 |
| 0010 | 2 |
| 0011 | 3 |
| 0100 | 4 |
| 0101 | 5 |
| 0110 | 6 |
| 0111 | 7 |
| 1000 | 8 |
| 1001 | 9 |
Ce qui nous permet de retrouver pour le premier (10010001)BCD = (1001 0001)BCD = (51)10
Le schéma pour cette conversion est détaillé ci-dessous pour vous expliquer comment nous avons retrouvé ce résultat :

Et dans la même logique de conversion :
- (100100111001)BCD = (1001 0011 1001)BCD = (939)10
- (100101001000)BCD = (1001 0100 1000)BCD = (948)10
- (0101001101111000)BCD = (0101 0011 0111 1000)BCD = (5378)10
Correction de l'exercice 3
Pour convertir les différents codes demandés écrits en code binaire réfléchi vers le système décimal, nous allons faire référence au tableau ci-dessous fourni dans notre cours : les codes et le codage :
| Chiffre | code binaire |
| 0 | 0000 |
| 1 | 0001 |
| 2 | 0010 |
| 3 | 0011 |
| 4 | 0100 |
| 5 | 0101 |
| 6 | 0110 |
| 7 | 0111 |
| 8 | 1000 |
| 9 | 1001 |
Ainsi, nous retrouvons facilement le résultat tel que :
- (0100)binaire réfléchi = (4)10
- (1001)binaire réfléchi = (9)10
- (1000)binaire réfléchi = (8)10
- (101)binaire réfléchi = (0101)binaire réfléchi = (5)10
Correction de l'exercice 4
A partir de la table ASCII fournie dans notre cours Les codes et le codage, nous pouvons déterminer le code de chaque caractère tel que :
- Le code du caractère (P)ASCII est 80
- Le code du caractère (A)ASCII est 65
- Le code du caractère (a)ASCII est 97
- Le code du caractère (@)ASCII est 64
- Le code du caractère (#)ASCII est 35
- Le code du caractère ({)ASCII est 123
Correction de l'exercice 5
Au l'inverse de l'exercice précédent, et à partir de la même table ASCII (fournie dans notre cours : Les codes et le codage), nous pouvons déterminer le caractère correspondant pour chaque code tel que :
- Le caractère correspondant au 64 est le (@)ASCII
- Le caractère correspondant au 33 est le (!)ASCII
- Le caractère correspondant au 91 est le ([)ASCII
- Le caractère correspondant au 120 est le (x)ASCII
- Le caractère correspondant au 126 est le (~)ASCII