Download presentation

Presentation is loading. Please wait.

Published byCaleb Plock Modified over 2 years ago

1
Number Representation Part 2 Little-Endian vs. Big-Endian Representations Floating Point Representations ECE 645: Lecture 5

2
Required Reading Endianness, from Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Endianness Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design Chapter 17, Floating-Point Representations

3
Little-Endian vs. Big-Endian Representation of Integers

4
Little-Endian vs. Big-Endian Representation A0 B1 C2 D3 E4 F5 67 89 16 LSB MSB MSB = A0 B1 C2 D3 E4 F5 67 LSB = 89 Big-Endian Little-Endian LSB = 89 0 MAX 67 F5 E4 D3 C2 B1 MSB = A0 address

5
Little-Endian vs. Big-Endian Camps Big-Endian Little-Endian 0 MAX address MSB LSB... LSB MSB... Motorola 68xx, 680x0 Intel IBM Hewlett-Packard DEC VAX Internet TCP/IP Sun SuperSPARC Bi-Endian Motorola Power PC Silicon Graphics MIPS RS 232 AMD

6
Origin of the terms Little-Endian vs. Big-Endian Jonathan Swift, Gulliver’s Travels A law requiring all citizens of Lilliput to break their soft-eggs at the little ends only A civil war breaking between the Little Endians and the Big-Endians, resulting in the Big Endians taking refuge on a nearby island, the kingdom of Blefuscu Satire over holy wars between Protestant Church of England and the Catholic Church of France

8
Little-Endian vs. Big-Endian Big-EndianLittle-Endian easier to determine a sign of the number easier to compare two numbers easier to divide two numbers easier to print easier addition and multiplication of multiprecision numbers Advantages and Disadvantages

9
Pointers (1) 89 67 F5 E4 D3 C2 B1 A0 Big-Endian Little-Endian 0 MAX address int * iptr; (* iptr) = 8967;(* iptr) = 6789; iptr+1

10
Pointers (2) 89 67 F5 E4 D3 C2 B1 A0 Big-Endian Little-Endian 0 MAX address long int * lptr; (* lptr) = 8967F5E4;(* lptr) = E4F56789; lptr + 1

11
Floating Point Representations

16
The ANSI/IEEE standard floating- point number representation formats Originally IEEE 754-1985. Superseded by IEEE 754- 2008 Standard.

19
Table 17.1 Some features of the ANSI/IEEE standard floatingpoint number representation formats

20
00017FFEFF7E80 01127254255126128 –1260+127–1+1 Decimal code Hex code Exponent value f = 0: Representation of 0 f 0: Representation of denormals, 0.f 2 –126 f = 0: Representation of f 0: Representation of NaNs Exponent encoding in 8 bits for the single/short (32-bit) ANSI/IEEE format 1.f 2 e Exponent Encoding

21
Fig. 17.4 Denormals in the IEEE single-precision format.

24
The IEEE 754-2008 standard includes five rounding modes: Round to nearest, ties away from 0 (rtna) Round to nearest, ties to even (rtne) [default rounding mode] Round toward zero (inward) Round toward + (upward) Round toward – (downward) Rounding Modes

25
Round to Nearest Number Fig. 17.7 Rounding of a signed- magnitude value to the nearest number. Rounding has a slight upward bias. Consider rounding (x k–1 x k–2... x 1 x 0. x –1 x –2 ) two to an integer (y k–1 y k–2... y 1 y 0. ) two The four possible cases, and their representation errors are: x –1 x –2 Round Error 00 down 0 01 down–0.25 10 up 0.5 11 up 0.25 With equal prob., mean = 0.125 For certain calculations, the probability of getting a midpoint value can be much higher than 2 –l rtna(x)

27
Directed Rounding: Motivation We may need result errors to be in a known direction Example: in computing upper bounds, larger results are acceptable, but results that are smaller than correct values could invalidate the upper bound This leads to the definition of directed rounding modes upward-directed rounding (round toward + ) and downward-directed rounding (round toward – ) (required features of IEEE floating-point standard)

28
Directed Rounding: Visualization Fig. 17.12 Upward-directed rounding or rounding toward + . Fig. 17.6 Truncation or chopping of a 2’s-complement number (same as downward- directed rounding).

30
Requirements for Arithmetic Results of the 4 basic arithmetic operations (+, , , ) as well as square- rooting must match those obtained if all intermediate computations were infinitely precise That is, a floating-point arithmetic operation should introduce no more imprecision than the error attributable to the final rounding of a result that has no exact representation (this is the best possible) Example: (1 + 2 1 ) (1 + 2 23 ) Rounded result1 + 2 1 + 2 22 Error = ½ ulp Exact result1 + 2 1 + 2 23 + 2 24

31
New IEEE 754-2008 Standard Basic Formats

32
New IEEE 754-2008 Standard Binary Interchange Formats

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google