A normal decimal digit can have 10 different values, namely 0 - 9.
A hex-a-decimal number (hex means 6) can have 16 different values (base 16).
The values from this numeration system are 0 - 9 and A - F.
The letters correspond with the numbers 10 - 15 according to the decimal numeration system.
This numeration system apply to give binary numbers shorten.
|
|
= Binary byte (8 bits) | |||||||||
2 | + | D | = 2D Hexadecimal number |
What is BCD?
Binary Coded Decimal, is a fourbit code notation for the decimal digits 0 - 9 (base 10).
BCD counts as how we count daily in decimals, only the notation is now binary.
The number 31 for example is binary 00011111, in BCD 0011 0001 (the '3' stays here on the left,
the '1' on the right side) see also the table.
Converting from BCD to decimal in PIC Basic as follows:
MyByte = ((MyBCD >> 4 ) * 10 ) + (MyBCD & 15 ) |
Or, if it must be the same variable which must be converted:
MyByte = ((MyByte >> 4 ) * 10 ) + (MyByte & 15 ) |
Converting from decimal to BCD in PIC Basic as follows:
MyBCD = ((MyByte / 10 ) << 4 ) + (MyByte // 10 ) |
Or, if it must be the same variable which must be converted:
MyByte = ((MyByte / 10 ) << 4 ) + (MyByte // 10 ) |
Decimal | Hex | Binair | BCD |
0 | 00 | 00000000 | 0000 0000 |
1 | 01 | 00000001 | 0000 0001 |
2 | 02 | 00000010 | 0000 0010 |
3 | 03 | 00000011 | 0000 0011 |
4 | 04 | 00000100 | 0000 0100 |
5 | 05 | 00000101 | 0000 0101 |
6 | 06 | 00000110 | 0000 0110 |
7 | 07 | 00000111 | 0000 0111 |
8 | 08 | 00001000 | 0000 1000 |
9 | 09 | 00001001 | 0000 1001 |
10 | 0A | 00001010 | 0001 0000 |
11 | 0B | 00001011 | 0001 0001 |
12 | 0C | 00001100 | 0001 0010 |
13 | 0D | 00001101 | 0001 0011 |
14 | 0E | 00001110 | 0001 0100 |
15 | 0F | 00001111 | 0001 0101 |
16 | 10 | 00010000 | 0001 0110 |
17 | 11 | 00010001 | 0001 0111 |
18 | 12 | 00010010 | 0001 1000 |
19 | 13 | 00010011 | 0001 1001 |
20 | 14 | 00010100 | 0010 0000 |
21 | 15 | 00010101 | 0010 0001 |
22 | 16 | 00010110 | 0010 0010 |
23 | 17 | 00010111 | 0010 0011 |
24 | 18 | 00011000 | 0010 0100 |
25 | 19 | 00011001 | 0010 0101 |
26 | 1A | 00011010 | 0010 0110 |
27 | 1B | 00011011 | 0010 0111 |
28 | 1C | 00011100 | 0010 1000 |
29 | 1D | 00011101 | 0010 1001 |
30 | 1E | 00011110 | 0011 0000 |
31 | 1F | 00011111 | 0011 0001 |
32 | 20 | 00100000 | 0011 0010 |
33 | 21 | 00100001 | 0011 0011 |
etc. | etc. | etc. | etc. |