Binary coded decimal

Binary coded decimal
Page d'aide sur l'homonymie Pour les articles homonymes, voir BCD.

Le binary coded decimal (BCD), qui peut se traduire en français par décimal codé en binaire, est un système de numération utilisé en électronique et en informatique pour coder des nombres d'une façon relativement proche de la représentation humaine usuelle (en base 10). En BCD, les nombres sont représentés en chiffres décimaux et chacun de ces chiffres est codé sur quatre bits :

Chiffre Bits    Chiffre Bits
    0   0000        5   0101
    1   0001        6   0110
    2   0010        7   0111
    3   0011        8   1000
    4   0100        9   1001

Pour coder un nombre tel 127 il suffit de coder chacun des chiffres 1, 2 et 7 ce qui donne 0001, 0010, 0111.

La plupart des ordinateurs stockent les données dans des octets d'une taille de 8 bits. Deux méthodes communes permettent d'enregistrer les chiffres BCD de 4 bits dans un tel octet:

  1. ignorer les quatre bits supplémentaires de chaque octet et leur ajouter quatre bits identiques (0 ou 1 comme pour EBCDIC) - format étendu.
  2. enregistrer deux chiffres par octet ce qui est appelé le « packed » BCD (qui peut utiliser un signe : 1100 pour + et 1101 pour -) - format compacté.

Selon la méthode, le nombre 127 sera représenté comme 11110001, 11110010, 11110111 en EBCDIC ou comme 00010010, 01111100 en « packed » BCD.

Bien que le BCD gâche de l'espace (environ 1/6 de la mémoire disponible est perdue en format compacté, et largement plus en format étendu), il permet d'avoir une correspondance immédiate avec les codes de caractères ASCII ou EBCDIC représentant les chiffres : il suffit de réaliser un OU logique avec 00110000 (48 en base 10) pour l'ASCII, ou 11110000 pour l'EBCDIC. Les grands nombres sont facilement affichés sur des afficheurs à 7 segments en séparant les entiers. Le BIOS des PC conserve, en général, la date et l'heure en format BCD, probablement pour des raisons historiques (cela évite une conversion de nombre décimal en ASCII).
L'utilisation du format étendu pour stocker les dates « AAMMJJ » est en grande partie à l'origine du bogue de l'an 2000.

Si un chiffre nécessite quatre bits, alors trois chiffres en nécessitent 12. On a alors 103 combinaisons. Or 10 bits suffisent pour les exprimer toutes (210 > 103).

La représentation du signe dans le codage BCD est souvent porté par l'octet le plus à droite contrairement au système binaire. Dans le cas d'un codage compacté, les 4 bits de poids faible de cet octet sont utilisés pour représenter le signe (on perd donc la représentation d'un chiffre), et dans le cas d'un codage étendu, ce sont les 4 bits de poids fort. Sur un ordinateur central par exemple le nombre -215 sera représenté (en HEXA) F2F1D5 ou 215D et le nombre 215 sera représenté F2F1C5 ou 215C.
Il est à noter qu'en aucune manière cette représentation ne permet de calculer directement des nombres décrits selon ce codage, les instructions permettant un calcul commencent toujours par déterminer le signe des opérandes avant de réaliser le calcul avec les valeurs absolues des opérandes que la plupart des processeurs supportent.

Aujourd'hui, ces représentations sont utilisés par la plupart des SGBD pour représenter le format DECIMAL ou NUMERIC qui permettent de stocker des nombres plus grands que les entiers et plus précis que les nombres à virgule flottante.

Électronique

BCD est très commun dans les systèmes électroniques lorsqu'une valeur numérique doit être affichée, spécialement dans les systèmes ne consistant que de circuits numériques et ne contenant pas de microprocesseur (une calculatrice par exemple). En utilisant BCD, la manipulation des données numériques est grandement simplifiée en traitant chaque chiffre dans un seul sous-circuit. Ce fonctionnement est le plus proche du matériel d'affichage (pour un afficheur 7 segments notamment).

Si la quantité numérique était stockée et manipulée en binaire, il faudrait une interface de traduction complexe. En utilisant le BCD dans tout le circuit, le système électronique en est simplifié.


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Binary coded decimal de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Binary Coded Decimal — Pour les articles homonymes, voir BCD. Le binary coded decimal (BCD), qui peut se traduire en français par décimal codé en binaire, est un système de numération utilisé en électronique pour coder des nombres d une façon relativement proche de la… …   Wikipédia en Français

  • binary coded decimal — binary coded decimal, a system of coding numbers in binary units used in programming computers and in higher mathematics. Each decimal digit is represented by four binary digits. Example: 234 is represented in binary coded decimal by 0010 0011… …   Useful english dictionary

  • binary-coded decimal — noun (computing) A decimal number written in binary code such that each number is represented by a unique sequence of four bits (abbrev BCD) • • • Main Entry: ↑binary …   Useful english dictionary

  • Binary Coded Decimal — Binary Coded Decimal,   BCD …   Universal-Lexikon

  • Binary-coded decimal — In computing and electronic systems, binary coded decimal (BCD) is a digital encoding method for numbers using decimal notation, with each decimal digit represented by its own binary sequence. In BCD, a numeral is usually represented by four bits …   Wikipedia

  • Binary Coded Decimal — Eigenschaften Stellenzahl 4 Bewertbar ja Gewicht 3 Maximaldistanz 4 Hamming Distanz 1 Stetig nein Redundanz 0,7 …   Deutsch Wikipedia

  • binary-coded decimal code — dvejetainis dešimtainis kodas statusas T sritis automatika atitikmenys: angl. binary decimal code; binary coded decimal code vok. Binärkode für Dezimalziffern, m; binärverschlüsselter Dezimalcode, m rus. двоично десятичный код, m pranc. code BCD …   Automatikos terminų žodynas

  • binary coded decimal number — dvejetainiais skaičiais koduotas dešimtainis skaičius statusas T sritis automatika atitikmenys: angl. binary coded decimal number vok. binärkodierte Dezimale, f rus. двоично кодированная десятичная, f pranc. décimal codé binaire, m …   Automatikos terminų žodynas

  • binary-coded decimal — (BCD)    A binary coded notation in which each of the decimal digits is represented by a binary numeral …   IT glossary of terms, acronyms and abbreviations

  • binary-coded decimal — noun An encoding for decimal numbers in which each digit is represented by its own binary sequence, simplifying conversion from binary to decimal. Syn: BCD …   Wiktionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”