Advertisement
pneave

BCD <> Decimal

Nov 22nd, 2017
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.83 KB | None | 0 0
  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #include <iostream>
  5. #pragma hdrstop
  6.  
  7. using namespace std;
  8.  
  9. uint8_t dec2bcd(uint8_t);
  10. uint8_t bcd2dec(uint8_t);
  11.  
  12. //---------------------------------------------------------------------------
  13.  
  14. #pragma argsused
  15. int main(int argc, char* argv[])
  16. {
  17.   cout << "Dec : BCD" << "\n";
  18.   for (uint8_t i = 10; i < 100; i++) {
  19.     cout << (int)i << "   :  " << (int)dec2bcd(i) << "\n";
  20.   }
  21.  
  22.   cout << "-> " << (int)bcd2dec(0x81) << "\n";
  23.  
  24.   return 0;
  25. }
  26.  
  27. //---------------------------------------------------------------------------
  28.  
  29. // Convert Decimal to BCD
  30. uint8_t dec2bcd(uint8_t num)
  31. {
  32.   return ((num / 10 * 16) + (num & 10));
  33. }
  34.  
  35. // Convert BCD to Decimal
  36. uint8_t bcd2dec(uint8_t num)
  37. {
  38.   return ((num / 16 * 10) + (num % 16));
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement