Chapter 3 Arithmetic For Computers
Chapter 3 Arithmetic For Computers
Length of product is
the sum of operand
lengths
Initially 0
Can be pipelined
Several multiplication performed in parallel
MIPS Multiplication
Two 32-bit registers for product
HI: most-significant 32 bits
LO: least-significant 32-bits
Instructions
mult rs, rt / multu rs, rt
64-bit product in HI/LO
mfhi rd / mflo rd
Move from HI/LO to rd
Can test HI value to see if product overflows 32 bits
mul rd, rs, rt
Least-significant 32 bits of product –> rd
Initially dividend
9/8
1001/1000
S (Exponent Bias)
x ( 1) (1 Fraction) 2
S: sign bit (0 non-negative, 1 negative)
Normalize significand: 1.0 ≤ |significand| < 2.0
Always has a leading pre-binary-point 1 bit, so no need to
represent it explicitly (hidden bit)
Significand is Fraction with the “1.” restored
Exponent: excess representation: actual exponent + Bias
Ensures exponent is unsigned
Single: Bias = 127; Double: Bias = 1023
.
-2 127-2= 125 01111101
-1 127-1=126 0111110
0 0 + 127 01111111
2 129
.
128 127+128=255 11111111
Chapter 3 — Arithmetic for Computers — 38
Single-Precision Range
Exponents 00000000 and 11111111 reserved
Smallest value
Exponent: 00000001
actual exponent = 1 – 127 = –126
Fraction: 000…00 significand = 1.0
±1.0 × 2–126 ≈ ±1.2 × 10–38
Largest value
exponent: 11111110
actual exponent = 254 – 127 = +127
Fraction: 111…11 significand ≈ 2.0
±2.0 × 2+127 ≈ ±3.4 × 10+38
Step 1
Step 2
Step 3
Step 4