Arithmetic in Hexadecimal II: SOLUTIONS

The following table presents the hexadecimal multiplication table. You can not learn it by heart, but you could print it out.

Multiplication

Execute the following multiplications in hexadecimal

  • A123H*50H
     
      A123 H
     X  50 H
    --------
    325AF0 H
    
  • 1E3E4EH*EEEH
     
        1E3E4E H
       X   EEE H
    ------------
       1A76844 
    + 1A76844-
    +1A76844--
    ------------ 
     1C38E3084 H
    
  • FFFH*3H
     
     FFF H
     X 3 H
    ------
    2FFD H
    
  • C123CH*CCCH
     
        C123C H
      X   CCC H
    ----------
       90DAD0 
    + 90DAD0- 
    +90DAD0--
    --------- 
     9A7957D0 H
    

Logical operations

In programming, we will extend the logical operations AND, OR, XOR to arrays of bits.
For instance the AND operator :
    1011 0101B
AND 1110 1110B
    ---------
    1010 0100B

Compute the following results using the logical operators on arrays of bits

  • 1001 1110B AND 0011 1001B = 0001 1000 B
  • 0111 1101B AND 1111 0000B = 0111 0000 B
  • 1100 1001B AND 1111 0010B = 1100 0000 B
  • 1111 1001B AND 1011 0100B = 1011 0000 B
  • 0000 1000B AND 1101 1000B = 0000 1000 B
  • 1001 1110B OR 0011 1001B = 1011 1111 B
  • 0111 1101B OR 1111 0000B = 1111 1101 B
  • 1100 1001B OR 1111 0010B = 1111 1010 B
  • 1111 1001B OR 1011 0100B = 1111 1101 B
  • 0000 1000B OR 1101 1000B = 1101 1000 B
  • 1001 1110B XOR 0011 1001B = 1010 0111 B
  • 0111 1101B XOR 1111 0000B = 1000 1101 B
  • 1100 1001B XOR 1111 0010B = 0011 1010 B
  • 1111 1001B XOR 1011 0100B = 0100 1101 B
  • 0000 1000B XOR 1101 1000B = 1101 0000 B
  • NOT 0000 1010B = 1111 0101 B
  • NOT 1010 1110B = 0101 0001 B
  • NOT 0001 1110B = 1110 0001 B
  • NOT 1111 0000B = 0000 1111 B

The following exercise is the same as the previous one, using binary operators on hexadecimal numbers. They must be seen as arrays of bits.
For the following exercise, we need a table of conversion between hexa and binary. This table has to be learnt.

0H0000B
1H0001B
2H0010B
3H0011B
4H0100B
5H0101B
6H0110B
7H0111B
8H1000B
9H1001B
AH1010B
BH1011B
CH1100B
DH1101B
EH1110B
FH1111B
  • A1H AND 0011 1001B = 21B
  • AAH AND 1111 0000B = A0H
  • ACH AND FFH = ACH
  • 10H AND 35H = 10H
  • 5CH AND 3FH = 1CH
  • EEH OR 0011 1001B = FFH
  • E0H OR 1111 0000B = F0H
  • FCH OR 00H = FCH
  • CFH OR D0H = DFH
  • 35H OR 57H = 77H
  • DFH XOR 0011 1001B = 1110 0110 B = E6H
  • D1H XOR 1111 0000B = 0010 0001 B = 21H
  • EDH XOR 00H = EDH
  • B0H XOR D0H = 60H
  • 26H XOR 57H = 71H
  • NOT 29H = D6H
  • NOT 09H = F6H
  • NOT FFH = 00H
  • NOT 01H = FEH