1 / 20

Department of Computer and Information Science, School of Science, IUPUI

Department of Computer and Information Science, School of Science, IUPUI. CSCI 230. Information Representation: Negative and Floating Point Representation . Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu. Negative Numbers in Binary.

loc
Download Presentation

Department of Computer and Information Science, School of Science, IUPUI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Department of Computer and Information Science,School of Science, IUPUI CSCI 230 Information Representation: Negative and Floating Point Representation Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu

  2. Negative Numbers in Binary • Four different representation schemes are used for negative numbers • Signed Magnitude • Left most bit (LMB) is the sign bit : • 0  positive (+) • 1  negative (-) • Remaining bits hold absolute magnitude Example: 210  0000 0010b -210 1000 0010b Q: 0000 0000 = ? 1000 0000 = ? Try, 1000 0100b = -410

  3. One’s Compliment • Left most bit is the sign bit : • 0  positive (+) • 1  negative (-) • The magnitude is complimented Example: 210 0 000 0010b -210  1 111 1101b Exercise: try - 410using 1’s compliment Q: 0000 0000 = ? 1111 1111 = ? Solution: 410 = 0 0000100b -410 = 1 1111011b

  4. Negative Numbers in Binary (cont.) • 2’s Compliment • Sign bit same as above • Magnitude is complimented first and a “1” is added to the complimented digits • Example: • 210 0 000 0010b • 1’s compliment  1 1111101b • +1 • -210 1 111 1110b • Exercise: try -710using 2’s compliment • 710 • 1’s compliment  • +1 • -710  0000 0111b 11111000b • 1111 1001b

  5. Negative Numbers in Binary (cont.) 710 = 0000 0111b 310 = 0000 0011b 1’s complement 1111 1100b 2’s complement 1111 1101b -310 7+(-3)  0000 0111 + 1111 1101 • Example: 7+(-3) [hint]: A – B = A + (~B) +1 1 1111 111 carry • ignore1 0000 0100  0000 0100 410

  6. Three Representation of Signed Integer

  7. Negative Numbers in Binary (cont.) • Excess Representation • For a given fixed number of bits the range is remapped such that roughly half the numbers are negative and half are positive. Example: (as left) Excess – 8 notation for 4 bit numbers • Binary value = 8 + excess-8 value • MSB can be used as a sign bit, but • If MSB =1, positive (+ ve) number • If MSB =0, negative (- ve) number

  8. Fundamental Data Type • With vs. without using sign bit • For a 16 bit binary pattern:

  9. Fundamental Data Type • Four Data Typesin C(assume 2’s complement, byte machine) • Note: 27 = 128, 215 =32768, 215 = 2147483648 • Complex and double complex are not available

  10. 2 1 0 -1 -2 -3 22 21 20 2-1 2-2 2-3 4 2 1 ½ ¼ 1/8 x x x x Fractional Numbers Examples: 456.7810 = 4 x 102 + 5 x 101 + 6 x 100 + 7 x 10-1+8 x 10-2 1011.112 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2 = 8 + 0 + 2 + 1 + 1/2 + ¼ = 11 + 0.5 + 0.25 = 11.7510 • Conversion from binary number system to decimal system Examples: 111.112 = 1 x 22 + 1 x 21 + 1 x 20 + 1 x 2-1 + 1 x 2-2 = 4 + 2 + 1 + 1/2 + ¼ = 7.7510 Examples: 11.0112

  11. write in the same order • Conversion from decimalnumber system to binary system Examples: 7.7510 = (?)2 • Conversion of the integer part: same as before – repeated division by 2 7 / 2 = 3 (Q), 1 (R)  3 / 2 = 1 (Q), 1 (R)  1 / 2 = 0 (Q), 1 (R) 710 = 1112 • Conversion of the fractional part: perform a repeated multiplication by 2 and extract the integer part of the result 0.75 x 2 =1.50  extract 1 0.5 x 2 = 1.0  extract 1 0.7510 = 0.112 0.0  stop  Combine the results from integer and fractional part, 7.7510 = 111.112 How about choose some of Examples: try 5.625B 4 2 1 1/2 1/4 1/8 =0.25 =0.125 =0.5

  12. 0.6 x 2 = 1.2  extract 1 • 0.2 x 2 = 0.4  extract 0 • 0.4 x 2 = 0.8  extract 0 • 0.8 x 2 = 1.6  extract 1 • 0.6 x 2 =  •  (0.6)10= (0.1001 1001 1001 …)2 Fractional Numbers (cont.) Exercise 1: Convert (0.625)10 to its binary form Exercise 2: Convert (0.6)10to its binary form Solution: • Solution: 0.625 x 2 = 1.25  extract 1 • 0.25 x 2 = 0.5  extract 0 • 0.5 x 2 = 1.0  extract 1 • 0.0  stop •  (0.625)10= (0.101)2

  13. Fractional Numbers (cont.) • Errors • One source of error in the computations is due to back and forth conversions between decimal and binary formats Example: (0.6)10 + (0.6)10 = 1.210 Since (0.6)10= (0.1001 1001 1001 …)2 Lets assume a 8-bit representation: (0.6)10= (0 .10011001)2 , therefore 0.6 0.10011001 + 0.6  + 0.10011001 1.00110010 Lets reconvert to decimal system: (1.00110010)b = 1 x 20 + 0 x 2-1 + 0 x 2-2 + 1 x 2-3 + 1 x 2-4 + 0 x 2-5 + 0 x 2-6 + 1 x 2-7 + 0 x 2-8 = 1 + 1/8 + 1/16 + 1/128 = 1.1953125  Error = 1.2 – 1.1953125 = 0.0046875

  14. Floating Point Number Representation • If x is a real number then its normal form representation is: x =f•Base E where f : mantissa E: exponent exponent Example: 125.3210 =0.12532•103 mantissa - 125.3210 = - 0.12532 • 103 0.054610 = 0.546 • 10 –1 • The mantissa is normalized, so the digit after the fractional point is non-zero. • If needed the mantissa should be shifted appropriately to make the first digit (after the fractional point) to be non-zero & the exponent is properly adjusted.

  15. Example: 134.1510 = x 10 0.002110 = x 10 101.11B = 0.011B = AB.CDH= 0.00ACH= 3 0.13415 -2 0.21

  16. MSB LSB • Assume we use 16-bit binary pattern for normalized binary form based on the following convention (MSB to LSB) Sign of mantissa (±)= left most bit (where 0: +; 1: - ) Mantissa (f)= next 11 bits Sign of exponent (±)= next bit (where 0: +; 1: - ) Exponent (E) = next three bits x =±f•Base ±E f = 0.?1?2?3?4…?11 ?12…?15 E :converted to binary, b1b2b3 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 ?10 ?11 b1 b2 b3 + : 0 - : 1 + : 0 - : 1

  17. sign 1 bit mantissa 11 bits sign 1 bit exponent 3 bits Floating Point Number Representation • Question: How the computer expresses the 16-bit approximation of 1110.111010111111 in normalized binary form using the following convention Sign of mantissa = left most bit (where 0: +; 1: - ) Mantissa = next 11 bits Sign of exponent = next bit (where 0: +; 1: - ) Exponent = next three bits Answer: Step 1: Normalization 1110.111010111111 = + 0.1110111010111111 * 2 +4 Step 2: “Plant” 16 bits the 16 bit floating point representation is0111011101010100

  18. Question: Interpret the normalized binary number 0111 0000 0000 1010 B using the convention mentioned Sign of mantissa = left most bit (where 0: +; 1: - ) Mantissa = next 11 bits Sign of exponent = next bit (where 0: +; 1: - ) Exponent = next three bits find its decimal equivalent. Answer: 0111000000001010 B= 0.111B* 2-2

  19. Floating Point Number Representation (cont.) mantissa 24 bits sign 1 bit exponent 7 bits • The 32 Bit Single Precision Floating Point Format for IBM 370 • Base = 16 • Exponent = Excess-64 notation (i.e., compute binary equivalent, then substrate 64) • Sign = sign of number (0: positive, 1: negative) • Mantissa = normalized fraction (i.e. first digital after ‘.’ is non-zero) Example: What is the value of the following point number? 1 100 0010 1001 0011 1101 0111 1100 0010 Sign = 1  the number is negative Exponent (E) = 100 00102 = 6610 = 2 (substrate 64, because of Excess-64 ) Mantissa (f ) = 100100111101011111000010 = 93D7C2H • The above floating point number is: x = (sign) f• 16 E = - 0.93D7C2 • 16 2 x = - (9 x 16-1+ 3x 16-2+Dx 16-3+ 7 x 16-4+ Cx 16-5 +2x 16-6)• 16 2 = - (9 x 161 + 3x 160 +13x 16-1+ 7 x 16-2+ 12x 16-3 +2x 16-4) = - (144+3 +0.8125+0.02734375 + 0.0029296875 + 0.000030517578125) = - 147.842803955078125

  20. Acknowledgements • These slides where originally prepared by Dr. Jeffrey Huang, updated by Dale Roberts.

More Related