floating-point representation we can store integers and characters easily in binary, but what about...
TRANSCRIPT
Floating-Point Representation
• We can store integers and characters easily in binary, but what about fractions?
• ¼ = .25 = 2.5 * 10-1
• 9.1093897 * 10-31 – me-- mass of an electron
• 1.6021733 * 10-19 – e – charge of an electron• 6.6260755 * 10-34 – h – plank’s constant• What are the components of the above #’s?
1.
2.
3.
4.
Moving to Binary
• 9.1093897 * 10-31 – me-- mass of an electron
• What would the equivalent be in binary?
• ___________
Sign Exponent Significand
Single Precision
1 bit 8 bits 23 bits
Double Precision
1 bit 11 bits 52 bits
Interpreting Floating-point
• 9.471 = 9 + 4*.1 + 7*.01 + 1*.001
• The ith bit to the right of the decimal point of a decimal number represents______
• The ith bit to the right of the decimal point of a binary number represents _______
Translating to Binary
1. Translate left of decimal normally
2. Translate the right of the decimal a. bit-by-bit *or*
b. Express as fraction, x/ 2y, and place x in y bits, filling to the left with 0’s.
3. Multiply by 2y to move decimal to proper position.
Example 1 – Translate the
7.75 =
-1/4 =
¼ =
following numbers into binary fp
Sign Exp Significand
Bias Notation
• Problem: Negative exponents have larger value than positive exponents
• Solution: – Adjust exponent range
– add ____ to all exponents
Sign Exp Significand0 0..010 11110….000
1 1..110 00000….000
0 11110….000
1 00000….000
7.75
-1/4
1/4
7.75
-1/4
1/4
No Bias
Bias
Floating-Point Addition
• How do we do decimal floating-point?
• Is it the same as integer addition?
• 7.5 + 3/8
Steps to floating-point addition
1. Right-shift _________ of smaller exponent until exponents match
2. Add the __________
3. ______ to adjust decimal point
4. Round the result to fit into the significand
Example 1: 7.5 + ¾1.111two * 22 + 1.1two * 2-1
Example 2: 1.1two * 2-96 + 1.0two * 22
Associative property
• (a + b) + c < == > a + (b + c)
a + (b + c)
• 1.1two * 2-96 + 1.0two * 22 +-1.0two * 22
•
(a + b) + c
• (1.1two * 2-96 + 1.0two * 22 )+ -1.0two * 22
Multiplication
• 1.111two * 22 * 1.1two * 2-2
Multiplication
1. ________ exponents
2. ________ significands
3. ________ decimal point
4. ________ answer
5. determine the _______
What about bias notation?
• 1.111two * 2129 * 1.1two * 2-125
Thought question
• Some computers have separate fp and integer register files
• Most instructions access only int or fp, not both.
• How is this different from doubling the size of the register file?
• What are the advantages? Disadvantages?
Thought question
Summary
• Floating-point greatly increases range of numbers stored in machine.
• Floating-point representation has limited precision – can not store every number in range.
• FP arithmetic sometimes rounds answers, violating algebraic properties.
• FP arithmetic is much slower than integer arithmetic.