Décoder décimale codée binaire (BCD) à l'entier non signé

La valeur utilisée dans mon projet est exprimé avec 4 bits codés en binaire décimales (BCD), qui a été initialement stockées dans un tampon de caractères (par exemple, pointé par un pointeur const unsigned char *). Je veux convertir l'entrée BCD char flux vers un entier. Veuillez s'il vous plaît me montrer une manière efficace et rapide façon de le faire?

Format de données exemple et résultat attendu:

BCD*2; 1001 0111 0110 0101=9765
       "9"  "7"  "6"  "5"

Merci beaucoup!

  • double possible de le moyen le Plus efficace pour convertir BCD binaire
  • Persson: Que les postes en C#, pas du C++
  • Pour le principe général de la façon de faire, une solution C# est aussi bonne que les autres. Cependant, je pense que ma solution est probablement plus compact que l'un de ceux dans ce thread. 🙂
InformationsquelleAutor Golden Lee | 2011-05-26