William Stallings Computer Organization and Architecture 6 th
- Slides: 42
William Stallings Computer Organization and Architecture 6 th Edition Chapter 9 Computer Arithmetic 1
Arithmetic & Logic Unit l l l 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 (486 DX +) Human: -1101. 01012 = -13. 312510 2
Integer Representation l l Only have 0 & 1 to represent everything Positive numbers stored in binary n l l e. g. 41=00101001=32+8+1 No minus sign No period Sign-Magnitude Two’s compliment 3
Sign-Magnitude l l l Left most bit is sign bit 0 means positive 1 means negative +18 = 00010010 -18 = 10010010 Problems n n +18 = 00010010 -18 = 10010010 Need to consider both sign and magnitude in arithmetic Two representations of zero (+0 and -0) 4
Two’s Compliment l l l l +3 = 00000011 +2 = 00000010 +1 = 00000001 +0 = 0000 -1 = 1111 -2 = 11111110 -3 = 11111101 5
Benefits of Two’s Compliment l l l One representation of zero Arithmetic works easily (see later) Negating is fairly easy n n n 3= Boolean complement gives Add 1 to LSB 00000011 11111100 11111101 6
Geometric Depiction of Twos Complement Integers 7
Range of Numbers l 8 bit 2 s compliment n n l +127 = 01111111 = 27 -1 -128 = 10000000 = -27 16 bit 2 s compliment n n +32767 = 011111111 = 215 - 1 -32768 = 100000000 = -215 Value range for an n-bit number Positive Number Range: 0 ~ 2 n-1 -1 Negative number range: -1 ~ - 2 n-1 8
Range of Numbers 9
Conversion Between Lengths l l l l Positive number pack with leading zeros +18 = 00010010 +18 = 0000 00010010 Negative numbers pack with leading ones -18 = 1110 -18 = 1111 1110 i. e. pack with MSB (sign bit) 10
Addition and Subtraction l l l Normal binary addition Monitor sign bit for overflow Take twos compliment of subtrahend add to minuend n l i. e. a - b = a + (-b) So we only need addition and complement circuits 11
Hardware for Addition and Subtraction 12
13
14
Multiplication l l l Complex Work out partial product for each digit Take care with place value (column) Add partial products Note: need double length result 15
Unsigned Binary Multiplication 16
Flowchart for Unsigned Binary Multiplication 17
Multiplying Negative Numbers l l This does not work! Solution 1 n n n l Convert to positive if required Multiply as above If signs were different, negate answer Solution 2 n Booth’s algorithm 18
19
20
Booth’s Algorithm 21
Division l l l More complex than multiplication Negative numbers are really bad! Based on long division 22
Division of Unsigned Binary Integers 23
Flowchart for Unsigned Binary Division 24
25
Real Numbers l l Numbers with fractions Could be done in pure binary n l l Where is the binary point? Fixed? n l 1001. 1010 = 24 + 20 +2 -1 + 2 -3 =9. 625 Very limited Moving? n How do you show where it is? 26
Scientific notation: Slide the decimal point to a convenient location Keep track of the decimal point use the exponent of 10 Do the same with binary number in the form of Sign: + or Significant: S Exponent: E 27
Floating Point l l l +/-. significand x 2 exponent Point is actually fixed between sign bit and body of mantissa Exponent indicates place value (point position) 32 -bit floating point format. Leftmost bit = sign bit (0 positive or 1 negative). Exponent in the next 8 bits. Use a biased representation. A fixed value, called bias, is subtracted from the field to get the true exponent value. Typically, bias = 2 k-1 - 1, where k is the number of bits in the exponent field. Also known as excess-N format, where N = bias = 2 k-1 - 1. (The bias could take other values) In this case: 8 -bit exponent field, 0 - 255. Bias = 127. Exponent range 127 to +128 Final portion of word (23 bits in this example) is the significant (sometimes called mantissa). 28
Floating Point Examples 29
Signs for Floating Point l l Mantissa is stored in 2’s compliment Exponent is in excess or biased notation n n e. g. Excess (bias) 128 means 8 bit exponent field Pure value range 0 -255 Subtract 128 to get correct value Range -128 to +127 30
Many ways to represent a floating point number, e. g. , Normalization: Adjust the exponent such that the leading bit (MSB) of mantissa is always 1. In this example, a normalized nonzero number is in the form Left most bit always 1 - no need to store 23 -bit field used to store 24 -bit mantissa with a value between 1 to 2 31
Normalization l l l FP numbers are usually normalized i. e. exponent is adjusted so that leading bit (MSB) of mantissa is 1 Since it is always 1 there is no need to store it (c. f. Scientific notation where numbers are normalized to give a single digit before the decimal point) 0. 000101 X 225 1. 010101 X 221 32
FP Ranges l For a 32 bit number n n l 8 bit exponent +/- 2256 1. 5 x 1077 Accuracy n n n The effect of changing LSB of mantissa 23 bit mantissa 2 -23 1. 2 x 10 -7 About 6 decimal places 33
Expressible Numbers 34
Density of Floating Point Numbers 35
IEEE 754 l l Standard for floating point storage 32 and 64 bit standards 8 and 11 bit exponent respectively Extended formats (both mantissa and exponent) for intermediate results 36
37
FP Arithmetic +/l l Check for zeros Align significands (adjusting exponents) Add or subtract significands Normalize result 38
FP Addition & Subtraction Flowchart 39
FP Arithmetic x/ l l l Check for zero Add/subtract exponents Multiply/divide significands (watch sign) Normalize Round All intermediate results should be in double length storage 40
Floating Point Multiplication 41
Floating Point Division 42
- Computer organization and architecture william stallings
- William stallings data and computer communications
- William stallings computer networks
- William stallings computer networks
- William stallings network security essentials 5th edition
- Network security essentials william stallings ppt
- William stallings
- Congruence relation
- Stallings william comunicaciones y redes de computadores
- Cryptography william stallings
- Architecture and organization difference
- Computer organization and architecture 10th solution
- Computer organization and architecture iit kharagpur
- Introduction to computer organization and architecture
- Spec rating formula in computer organization
- Computer organization and architecture 10th edition
- Computer organisation and architecture
- 1 s complement
- Cs341 umb
- Process organization in computer organization
- Buses in computer architecture
- Instruction set architecture in computer organization
- Memory organization in computer architecture
- Basic structure of a computer system
- Design of basic computer with flowchart
- Register in computer organization
- Stallings garbage pickup
- Garbage pickup stallings
- Apollo and daphne metamorphoses
- Metodo stallings
- Lh stallings
- Point by point arrangement
- Arm architecture and organization
- Computer organization and design ppt
- Basic computer design
- Modello von neumann
- System bus in computer
- Call and return architecture in software architecture
- Information architecture organization schemes
- Bapo business architecture process organization
- Timing and control in computer architecture
- Evolution and interpretation of computer architecture
- Harris & harris digital design and computer architecture