Le décimal codé binaire (DCB) code chaque chiffre décimal séparément…
Exercice supplémentaire · niveau 2 · NSI (première), chapitre 1 — Représenter les entiers · D'autres bases, d'autres codages
Énoncé
Le décimal codé binaire (DCB) code chaque chiffre décimal séparément sur quatre bits. Coder en DCB. Combien de bits pour , puis pour ? Comparer au binaire ordinaire et dire quand ce gaspillage se justifie.
Corrigé
def vers_dcb(n):
"""Décimal codé binaire : chaque chiffre décimal sur 4 bits."""
return "".join(vers_base(int(c), 2).rjust(4, "0") for c in str(n))
donne 0010 0000 0010 0110, soit bits, contre bits en binaire ordinaire (). Pour : bits en DCB contre en binaire.
Le gaspillage. Quatre bits offrent combinaisons, dont dix seulement sont utilisées ( à ) : six configurations sur seize sont perdues, soit environ de place en plus.
Quand il se justifie. L'affichage. Une horloge, une calculatrice de poche, un afficheur sept segments doivent produire des chiffres décimaux ; en DCB, chaque chiffre est immédiatement disponible, sans aucune division. Le codage épouse l'usage, pas la compacité.
Contrôle : en DCB, la conversion vers l'écriture décimale ne coûte rien ; en binaire ordinaire, elle demande autant de divisions que le nombre a de chiffres.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.