Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Balkonkraftwerk Speicher und Wechselrichter Tests und Tutorials

K
(Siehe auch)
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 27: Zeile 27:
 
=Umrechnung=
 
=Umrechnung=
  
 +
Umrechnung für eine zweistellige Zahl x von 0...99:
 
  x_bcd = 16*(x div 10) + (x mod 10)
 
  x_bcd = 16*(x div 10) + (x mod 10)
  
 
  x = 10*(x_bcd div 16) + (x_bcd mod 16)
 
  x = 10*(x_bcd div 16) + (x_bcd mod 16)
  
Dabei steht <tt>div</tt> für Ganzzahl-Division und <tt>mod</tt> für den Rest der Division (modulo).
+
Dabei steht <tt>div</tt> für Ganzzahl-Division und <tt>mod</tt> 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=
 +
* [[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, 11: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