Download Floating-Point Number System (FPNS)

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Chapter 1
Scientific Computing
1. Computer Arithmetic (1.3)
2. Approximation in Scientific Computing (1.2)
January 7
Floating-Point Number System (FPNS)
Mantissa
Fraction
Exponent
Examples
54
In base-10 system as
54 = (5 + 4/10) x 101 = 5.4 x 101
mantissa = 5.4, fraction = 0.4, exponent = 1
In base-2 system
54 = ( 0 + 1x21 + 1x 22 + 0x23 + 1x24 + 1x25)
= (0 + 2 + 4 + 0 + 16 + 32 )
= ( 1 + 1/ (21) + 0/(22) + 1/(23) + 1/(24) + 0/(25)) x 25
mantissa = 1.6875, fraction = 0.6875, exponent=5
Normalization
54 = ( 1 + 1/ (21) + 0/(22) + 1/(23) + 1/(24) + 0/(25)) x 25
= 1.6875 x 32 (normalized)
= ( 0 + 1/(21) + 1/(22)+ 0/(23) + 1/(24) + 1/(25)+0/(26) ) x 26
(not normalized)
There are 126+127+1 = 254 possible exponent values
How to represent zero?
Underflow level
Overflow level
OFL = when all d0, …, dp-1 = beta - 1
What are the 25 numbers?
Online Demo at
http://www.cse.illinois.edu/iem/floating_point/rounding_rules/
Absolute and Relative Errors
Example
Approximate 43.552 with 4.3x10 has
absolute error = 0.552
relative error =approx= 0.01267
Floating-Point Arithmetics
Cancellation
Cancellation
For example: with base = 10, p =3.
Take x= 23115, y = 23090, there difference of 25 is comparatively
much smaller than either x or y
(using chopping) what is the difference x-y in this FPNS?
Quadratic Formula
If the coefficients are too large or too small, overflow and
underflow could occur.
Overflow can be avoided by scaling the coefficients.
Cancellation between –b and square root can be avoid by
using
Example (pages 26-27)
Take ( base = 10, p=4)
a=0.05010, b=-98.78, c=5.015
The correct roots (to ten significant digits)
1971.605916, 0.05077069387
b2-4ac = 9756, its square-root is 98.77
The computed roots using standard formula
1972, 0.09980
Using the second formula
1003, 0.05077
Related documents