Sunday 21 October 2012

Number System Conversion


Number system conversion

In this section, we will only focus in number system conversion of decimal, binary, octal and hexadecimal.


Decimal to binary

Example :Convert decimal number 33.875 to binary number.

weight
25
24
23
22
21
20
2-1
2-2
2-3
value
32
16
8
4
2
1
0.5
0.25
.0125
binary
1
0
0
0
0
1
1
1
1
                33.875                1.875               0.875               0.375               0.125
               -32.0                   -1.000             -0.500              -0.250              -0.125
                 1.875                  0.875              0.375               0.125                      0


So, 33,87510 = 100001.1112

Decimal to octal

Convert decimal 65.140625 to octal
weight
82
81
80
8-1
8-2
value
64
8
1
0.125
0.015625
hexadecimal
1
0
0
1
1
         65.140625                   1.140625                  0.140625             0.015625
        -64.000000                  -1.000000                -0.125000            -0.015625
           1.140625                   0.140625                  0.015625                    0      

Decimal to Hexadecimal

Convert decimal 272.0625 to hexadecimal
weight
162
161
160
16-1
value
256
16
1
0.0625
hexadecimal
1
1
0
1
           272.0625                     16.0625                       0.0625
          -256.0000                    -16.0000                     -0.0625
             16.0625                       0.0625                           0     

Binary to octal
To convert to octal use 3 digit,
            Example:

                            1110101110.1012 = 001  110  010  110 . 1012 =  1626.58
                                                             1          6      2     6       5


Binary to hexadecimal
To convert to hexadecimal use 4 digit,
            Example:

                            1110101110.1012 = 0011   1001   0110  .  10102 =  396.A16
                                                               3          9          6          10


As the same way to convert from octal, hexadecimal to binary.
Octal to binary
            Example:
                              470.538   =       4          7          0    .   5        3    =100111000.1010112
                                                     100     111     000     101     011


2’s complement

Step to convert to 2’s complement:

           Step 1: change octal, decimal or hexadecimal to binary.
           Step 2:change 0 become 1 and 1 become 0.At this step, number is 1’s complement.

                           Example: 00001100(12)    à   11110011
                                           11110001(114)  à 00001110
                                           00000010(2)      à 11111101

           Step 3: 1’ complement +1. The final value is 2’ complement  

                                           11110011+1=11110100   (-12)
                                           00001110 + 1 = 00001111  (-144)
                                           11111101+1=11111110   (-2)

Example: convert (-27) to 2’s complement

          For using 8-bits, the number 27 is represented by

                                             000110112

           Then convert 1 to 0, 0 to 1,

                                             11100100

          Adding 1 at the final step,

                                       11100101 =  -27


                     

How to differentiate positive / negative number in binary???
Use the most left bit as the sign bit, 0 will represent to positive number,1 will represent to negative number.
            0010 = 2                        1110 = - 2


                                             
Two's complement
Decimal
0111
7
0110
6
0101
5
0100
4
0011
3
0010
2
0001
1
0000
0
1111
−1
1110
−2
1101
−3
1100
−4
1011
−5
1010
−6
1001
−7
1000
−8





Sign bit repetition in 7-bit and 8-bit integers using 2’s complement
Decimal
7-bit notation
8-bit notation
8
0001000
00001000
-8
1111000
11111000
32
0100000
00100000
-32
1100000
11100000





8-bit two's-complement integers
Bits
Unsigned value
2's complement value
00000000
0
0
00000001
1
1
00000010
2
2
01111110
126
126
01111111
127
127
10000000
128
−128
10000001
129
−127
10000010
130
−126
11111110
254
−2
11111111
255
−1


Why 1111(8) does not involve in 4 bit?

Because it is 4-bit number, the most positive 4-bit number is 0111(7), the most negative is 1000(-8).
8 is too large to represent in 4-bit . Therefore, the most positive is 7 (0111).

Kee Hwaai Sziang B031210067

No comments:

Post a Comment