Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Rasenmaehroboter fuer schwierige und grosse Gaerten im Test

(Umrechnung)
(Siehe auch)
 
Zeile 43: Zeile 43:
 
x = \sum_{n=0}^\infty 10^n \cdot ((x_{\mathrm{bcd}} \,\operatorname{mod} \,16^{n+1}) \,\operatorname{div} \,16^n)  
 
x = \sum_{n=0}^\infty 10^n \cdot ((x_{\mathrm{bcd}} \,\operatorname{mod} \,16^{n+1}) \,\operatorname{div} \,16^n)  
 
</math>
 
</math>
 +
 +
=Siehe auch=
 +
* [[avr-gcc#libgcc2 verwenden|C-Code Beispiel für BCD-Umrechnung mit avr-gcc]]
  
 
[[Kategorie:Abkürzung]]
 
[[Kategorie:Abkürzung]]
 
[[Kategorie:Grundlagen]]
 
[[Kategorie:Grundlagen]]

Aktuelle Version vom 4. Januar 2006, 10:44 Uhr

BCD steht für "binary coded decimal" bzw. "binär codierte Dezimalzahl".

Bei der BCD-Codierung wird nicht die ganze Zahl binär dargestellt, sondern nur die einzelnen Ziffern werden binär dargestellt.

Beispiel:

Die Zahl 35 hat die BCD-Darstellung 0011 0101bcd

dezimal BCD (binär) BCD (hex) binär hex
35 0011 0101 35 0010 0011 23

BCD-Zahlen, die man in hex notiert, sehen also genauso aus wie die Zahl in Dezimaldarstellung.

Zu beachten ist, daß für Zahlen in BCD-Notation andere Rechenregeln gelten. Manche Rechner unterstützen auch das Rechnen mit BCD-Zahlen.

Beispiel:

Dezimal
39+1 = 40
BCD-Darstellung
39h+1 = 40h. Umgerechnet nach Dezimal wird das zu 57+1 = 64

Umrechnung

Umrechnung für eine zweistellige Zahl x von 0...99:

x_bcd = 16*(x div 10) + (x mod 10)
x = 10*(x_bcd div 16) + (x_bcd mod 16)

Dabei steht div für Ganzzahl-Division und mod für den Rest der Division (modulo). Allgemein:

[math] x_{\mathrm{bcd}} = \sum_{n=0}^\infty 16^n \cdot ((x \,\operatorname{mod} \,10^{n+1}) \,\operatorname{div} \,10^n) [/math]


[math] x = \sum_{n=0}^\infty 10^n \cdot ((x_{\mathrm{bcd}} \,\operatorname{mod} \,16^{n+1}) \,\operatorname{div} \,16^n) [/math]

Siehe auch


LiFePO4 Speicher Test