Wednesday 21 December 2011

Arithmetic & Logic Unit


  • Does the calculations

  • Everything else in the computer is there to service this unit

  • Handles integers

  • May handle floating point (real) numbers

  • May be separate FPU (maths co-processor)

  • May be on chip separate FPU (486DX +)


ALU Inputs and Outputs



Integer Representation



  • Only have 0 & 1 to represent everything

  • Positive numbers stored in binary


—   e.g. 41=00101001




  • No minus sign

  • No period

  • Sign-Magnitude

  • Two’s compliment


Sign-Magnitude



  • Left most bit is sign bit

  • 0 means positive

  • 1 means negative

  • +18 = 00010010

  •  -18 = 10010010

  • Problems


—   Need to consider both sign and magnitude in arithmetic


—   Two representations of zero (+0 and -0)



Two’s Compliment


+3 = 00000011


+2 = 00000010


+1 = 00000001


+0 = 00000000


-1 = 11111111


-2 = 11111110


-3 = 11111101



Range of Numbers


8 bit 2s compliment


—   +127 = 01111111 = 27 -1


—    -128 = 10000000 = -27


16 bit 2s compliment


—   +32767 = 011111111 11111111 = 215 - 1


—    -32768 = 100000000 00000000 = -215



Addition and Subtraction



  • Normal binary addition

  • Monitor sign bit for overflow

  • Take twos compliment of substahend and add to minuend


—   i.e. a - b = a + (-b)




  • So we only need addition and complement circuits


Hardware for Addition and Subtraction



Multiplication



  • Complex

  • Work out partial product for each digit

  • Take care with place value (column)

  • Add partial products


Flowchart for Unsigned Binary Multiplication


Multiplying Negative Numbers



  • Solution 1


—   Convert to positive if required


—   Multiply as above


—   If signs were different, negate answer




  • Solution 2


— Booth’s algorithm



Booth’s Algorithm



Example of Booth’s Algorithm



Division



  • More complex than multiplication

  • Negative numbers are really bad!

  • Based on long division


Flowchart for Unsigned Binary Division




 

No comments:

Post a Comment