number representation part 1 ece 645: lecture 4. required reading chapter 1, numbers and arithmetic,...

74
Number Representation Part 1 ECE 645: Lecture 4

Upload: bennett-malone

Post on 19-Jan-2018

217 views

Category:

Documents


0 download

DESCRIPTION

Historical Representations: Ancient Egyptians Numerals (1) –~4000 BC –“Sum of Symbols” = (34) 10

TRANSCRIPT

Page 1: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Number Representation

Part 1

ECE 645: Lecture 4

Page 2: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Required Reading

Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6Chapter 2, Representing Signed Numbers

B. Parhami, Computer Arithmetic: Algorithms and Hardware Design

Page 3: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Historical Representations: Ancient Egyptians Numerals (1)

– ~4000 BC– “Sum of Symbols”

= (34)10

Page 4: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Historical Representations: Ancient Egyptians Numerals (2)

What number does this stone carving from Karnak represent?

Page 5: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Historical Representations: Ancient Egyptians Numerals (3)

Page 6: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Historical Representations: Ancient Egyptians Numerals (4)

Symbol for a fraction (part):

Special symbols for most commonly used fractions:

Page 7: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

– First known positional system– 3100 BC– Radix 60 (sexagesimal)– Two symbols: = 1 = 10

Historical Representations: Ancient Babylonian Numerals (1)

− Integers and fractions were represented identically - a radix point was not written but rather made clear by context

Page 8: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Babylonian Numerals: Example

1 x 602 20 x 601 56 x 600

= (4,856)10

Page 9: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Historical Representations: Ancient Babylonian Numerals (2)

Digits from 1 to 59

Page 10: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Positional Code with Zero

• Zero Represented by Space– Partial solution– What about trailing zeros?

• Babylonians Introduced New Symbol– or – 4th to 1st Century BC

• Zero Allows Representation of Fractions– Fractions started with zero

Page 11: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Mixed System

• Roman Numerals– Sum of all symbols– I=1 V=5 X=10 L=50 C=100 D=500 M=1000– Difficult to do arithmetic e.g.,

MCDXLVII- IX ?

Page 12: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Hindu-Arabic Numeral System

Brahmi numerals, India, 400 BC-400 AD

Evolution of numerals in early Europe

Page 13: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Positional Code Decimal System

– Documented in the 9th century– Position of coefficient determines its value– Coefficient in position is multiplied by radix

(10) raised to the power determined by its position, e.g.,

4 10 8 10 5 10 6 10 4 8563 2 1 010* * * * ,

Page 14: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Migration of Positional Notation

• ~750 AD– Zero spread from India to Arabic countries

• ~1250 AD– Zero spread to Europe

• Importance of Zero– Ease of arithmetic which leads to improved

commerce

Page 15: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Binary Number System

• Binary– Positional number system– Two symbols, B = { 0, 1 }– Easily implemented using switches– Easy to implement in electronic circuitry– Algebra invented by George Boole (1815-

1864)allows easy manipulation of symbols 10

01232 52*12*02*12*0 0101

Page 16: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

16

Modern Arithmetic and Number Systems

• Modern number systems used in digital arithmetic can be broadly classified as:• Fixed-point number representation systems

• Integers• Rational numbers of the form x = a/2f, a is an integer, f is a positive integer

• Floating-point number representation systems• x * bE, where x is a rational number, b the integer base, and E the exponent

• Note that all digital numbers are eventually coded in bits {0,1} on a computer

Page 17: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

17

0 2 4 6 8 10 12 14 16 2 4 6 8 10 12 14 16

Unsigned integers

Signed-magnitude

3 + 1 fixed-point, xxx.x

Signed fraction, .xxx

2’s-compl. fraction, x.xxx

2 + 2 floating-point, s 2 e in [ 2, 1], s in [0, 3]

2 + 2 logarithmic (log = xx.xx)

Number format

log x

s e e

fixed point

floating point

Encoding Numbers in 4-Bits

Page 18: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Number system

Positional Non-positional

Fixed-radix Mixed-radix

Conventional Unconventional

Signed-digit

Non-redundant Redundant

BinaryDecimalHexadecimal

Classification of number systems (1)

Page 19: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Classification of number systems (2)

Positional

wi - weight of the digit xi

Fixed-radix

i

k

lii wxX

1

ik

lii rxX

1

r - radix of the number system

Conventional fixed-radix

ik

lii rxX

1 r integer, r > 0

xi {0, 1, …, r-1}

Page 20: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Classification of number systems (3)

Unconventional fixed-radix

ik

lii rxX

1

xi {-, …, }

Non-redundant number of digits = + + 1 r Redundant number of digits = + + 1 > r

Signed-digit >0 negative digits

Page 21: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Integral and fractional part

X = xk-1 xk-2 … x1 x0 . x-1 x-2 … x-l

Integral part Fractional part

Radix point• NOT stored in the register• understood to be in a fixed position

Fixed-point representation

Page 22: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Fixed-Radix Conventional (Unsigned)

Representations

Page 23: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

23

Fixed Point Number system

Positional Non-positional

Fixed-radix Mixed-radix

Conventional (unsigned)

Unconventional (signed)

Signed-digit

Non-redundant Redundant

BinaryDecimalHexadecimal

Fixed-Radix Conventional Number Systems

Page 24: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Range of numbers

DecimalX = (xk-1 xk-2 … x1 x0.x-1 … x-l)10

Xmin Xmax

10k - 10-l0

Binary

Number system

X = (xk-1 xk-2 … x1 x0.x-1 … x-l)2 0 2k - 2-l

Conventional fixed-radix

X = (xk-1 xk-2 … x1 x0.x-1 … x-l)r 0 rk - r-l

ulp = r-lNotation: unit in the least significant position

unit in the last position

Page 25: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Number of digits

Number systemNumber of digits in the integer

part necessary to cover the range0..Xmax

Decimal

Binary

Conventionalfixed-radix

)1(log

1log

max10

max10

XXk

)1(log

1log

max2

max2

XXk

)1(log

1log

max

max

XXk

r

r

Page 26: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

26

Radix Conversion

Option 1) Radix conversion, using arithmetic in the old radix r Convenient when converting from r = 10 or familiar radix

u = w . v = ( xk–1xk–2 . . . x1x0 . x–1x–2 . . . x–l )r Old = ( XK–1XK–2 . . . X1X0 . X–1X–2 . . . X–L )R New

Option 2) Radix conversion, using arithmetic in the new radix R Convenient when converting to R = 10 or familiar radix

Whole part Fractional part

Example: (31)eight = (25)ten

From: Parhami, Computer Arithmetic: Algorithms and Hardware Design

Two methods:

Page 27: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

27

Option 1: Arithmetic in old radix rConverting whole part w: (105)ten = (?)fiveRepeatedly divide by five Quotient Remainder

105 0 21 1 4 4 0

Therefore, (105)ten = (410)five

Converting fractional part v: (105.486)ten = (410.?)fiveRepeatedly multiply by five Whole Part Fraction

.486 2 .430 2 .150 0 .750 3 .750 3 .750

Therefore, (105.486)ten (410.22033)five From: Parhami, Computer Arithmetic: Algorithms and Hardware Design

Page 28: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Radix Conversion of the Integral Part

XI = (xk-1 xk-2 … x1 x0)R = =

R - destination radix

i

k

i

i Rx

1

0

= ((...((xk-1 R + xk-2) R + xk-3 ) R + … + x2 ) R + x1 ) R + x0

Quotient Remainder

(...((xk-1 R + xk-2) R + xk-3 ) R + … + x2 ) R + x1 x0

...((xk-1 R + xk-2) R + xk-3 ) R + … + x2 x1

xk-1 xk-2

xk-1 0

………. ……….xk-1 R + xk-2 xk-3

Page 29: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Radix Conversion of the Fractional Part

XF = (. x-1 x-2 … x-l+1 x-l)R = =

R - destination radix

i

li

i Rx

1

= R-1 (x-1 + R-1 (x-2 + R-1 (…. + R-1 ( x-l+1 + R-1 x-l )….)))

Integer part Fractional partx-1 R-1 (x-2 + R-1 (….. + R-1 ( x-l+1 + R-1 x-l)….))

R-1 (….. + R-1 ( x-l+1 + R-1 x-l)….)x-2

x-l+1 R-1 x-lx-l 0

………. ……….x-l+2 R-1 ( x-l+1 + R-1 x-l)

Page 30: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

30

Option 2: Arithmetic in new radix R

Converting (22033)five = (?)ten ((((2 5) + 2) 5 + 0) 5 + 3) 5 + 3

|-----| : : : :

10 : : : :

|-----------| : : :

12 : : :

|---------------------| : :

60 : :

|-------------------------------| :

303 :

|-----------------------------------------|

1518

Converting fractional part v: (410.22033)five = (105.?)ten (0.22033)five 55 = (22033)five = (1518)ten

1518 / 55 = 1518 / 3125 = 0.48576Therefore, (410.22033)five = (105.48576)ten

Horner’srule or formula

From: Parhami, Computer Arithmetic: Algorithms and Hardware Design

Page 31: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

31

Option 2 cont'd: Horner's rule for fractions

Converting fractional part v: (0.22033)five = (?)ten

(((((3 / 5) + 3) / 5 + 0) / 5 + 2) / 5 + 2) / 5

|-----| : : : :

0.6 : : : :

|-----------| : : :

3.6 : : :

|---------------------| : :

0.72 : :

|-------------------------------| :

2.144 :

|-----------------------------------------|

2.4288

|-----------------------------------------------|

0.48576

Horner’srule or formula

From: Parhami, Computer Arithmetic: Algorithms and Hardware Design

Horner’s rule is also applicable: Proceed from right to left and use division instead of multiplication

Page 32: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

32

r=bg b R=bG

4=22 2 8=23

(2301.302)4 = (10 110 001. 110 010)2 = (261.62)8

Radix Conversion Shortcut for r=bg, R=bG

• Trick here is to first convert to a number in radix b, then to R• Cluster in groups of 3 (because 23 = 8) moving away from binary point

Page 33: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed Number Representations

Page 34: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Representations of signed numbers

Signed-magnitude Biased Complement

Radix-complement Diminished-radix complement

(Digit complement)

Two’s complement One’s complement

r=2r=2

Page 35: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

7 0111 1111 0111 01116 0110 1110 0110 01105 0101 1101 0101 01014 0100 1100 0100 01003 0011 1011 0011 00112 0010 1010 0010 00101 0001 1001 0001 00010 0000 1000 0000 0000-0 1000 1111-1 1001 0111 1111 1110-2 1010 0110 1110 1101-3 1011 0101 1101 1100-4 1100 0100 1100 1011-5 1101 0011 1011 1010-6 1110 0010 1010 1001-7 1111 0001 1001 1000-8 0000 1000

Signed-magnitude Biased Two’s

complementOne’s

complement

Page 36: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed-magnitude representation of signed numbers

Advantages:

Disadvantages:

• conceptual simplicity• symmetric range: -(2k-1-1) .. -(2k-1-1)• simple negation

• addition of numbers with the same sign and with a different sign handled differently

0k-2k-1

signmagnitude

Page 37: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Biased (excess-B) representation of signed integers

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

B = 2k-1, k=4R(X) = X + B

-2k-1 ≤ X ≤ 2k-1-1

X

R(X)

R

Page 38: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed number X

Unsigned Representation R(X)

Bit vector (xk-1xk-2...x0.x-1...x-l)

Binary mapping

Representation mapping

ik

liixXR 2)(

1

Biased representation with radix 2

Page 39: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

ComplementSigned Number Representations

Page 40: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed number X

Unsigned Representation R(X)

Bit vector (xk-1xk-2...x0.x-1...x-l)

Binary mapping

Representation mapping

ik

liixXR 2)(

1

Complement representations with radix 2

Page 41: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

1 – xi = xi

1 – xixi xi

01

10

10

Useful dependencies

|X| = X when X 0

- X when X < 0

Page 42: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

One’s complement transformation

OC(A) = A = 2k – 2-l - A

For ik

liiAA 2

1

0

0 OC(A) 2k – 2-l

OC(OC(A)) = A

def

k-1 k-2 ... 0 -1 -2 ... -l1 1 ... 1 . 1 1 ... 1

– Ak-1 Ak-2 … A0 . A-1 A-2 ... A-l

Ak-1 Ak-2 … A0 . A-1 A-2 ... A-l

Properties:

Page 43: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

One’s Complement Representation of Signed Numbers

R(X) =

X for X > 0

0 or OC(0) for X = 0

OC(|X|) for X < 0

For –(2k-1 – 2-l) X 2k-1 – 2-l

0 R(X) 2k – 2-l

def

Page 44: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

One’s complement representation of signed integers

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Xk=4

X>0 0 X<0

X+2k-1 = 2k-1 - |X| 0,2k-1

Page 45: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

One’s complement representation of signed numbers

Page 46: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s complement transformation (1)

A + 2-l = 2k – A for A > 0

For ik

liiAA 2

1

0

def

Properties:

TC(A) = 0 for A = 0

0 TC(A) 2k – 2-l

TC(TC(A)) = A

2k – A = 2k – A – 2-l + 2-l =

= (2k – 2-l – A)+2-l = A + 2-l

Page 47: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s complement transformation (2)

For ik

liiAA 2

1

0

A + 2-l mod 2k = 2k – A mod 2kdef

TC(A) =

Page 48: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s Complement Representation of Signed Numbers

R(X) = X for X 0

TC(|X|) for X < 0

For –2k-1 X 2k-1 – 2-l

0 R(X) 2k – 2-l

def

Page 49: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s complement representation of signed integers

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Xk=4

X>0 0 X<0

X+2k = 2k - |X|0

Page 50: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s complement representation of signed integers

Page 51: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed-magnitude representation of signed numbers

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Xk=4

X>0 0 X<0

| X|+2k-1 = -X+2k-1 0,2k-1

Page 52: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed-magnitude representation of signed numbers

Page 53: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Biased representation of signed numbers

-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

X+BB = 2k-1, k=4

X>0 0 X<0

X+BB

Page 54: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Biased representation of signed numbers

Page 55: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Arithmetic Operations inSigned Number Representations

Page 56: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Unsigned addition vs. signed addition

Machine Programmer

0 0 0 1 0 0 1 11 0 0 0 0 1 0 11 0 0 1 1 0 0 0

111

Unsignedmind

Signedmind128 64 32 16 8 4 2 1weight

carry

XYS

+=

FA

x0 y0

s0

c1FA

x1 y1

s1

c2FA

x2 y2

s2

c3FA

x3 y3

s3

c4FA

x4 y4

s4

c5FA

x5 y5

s5

c6FA

x6 y6

s6

c7FA

x7 y7

s7

c8

Page 57: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Out of range flags

C = 1 if result > MAX_UNSIGNED or result < 0 0 otherwise

where MAX_UNSIGNED = 28-1 for 8-bit operands 216-1 for 16-bit operands

V = 1 if result > MAX_SIGNED or result < MIN_SIGNED 0 otherwise

where MAX_SIGNED = 27-1 for 8-bit operands 215-1 for 16-bit operands

MIN_SIGNED = -27 for 8-bit operands -215 for 16-bit operands

Carry flag - C

Overflow flag - V

out-of-range for unsigned numbers

out-of-range for signed numbers

Page 58: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Overflow for signed numbers

Indication of overflow

Positive+ Positive= Negative

Negative+ Negative= Positive

Formulas

Overflow2’s complement = xk-1 yk-1 sk-1 + xk-1 yk-1 sk-1 =

= ck ck-1

Page 59: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Two’s complement representation of signed integers

Page 60: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Addition of Signed and Unsigned Numbers

C=1 and V=0

1 1 0 1 -31 0 1 1 -5

-8 4 2 1

1 1 0 0 0 -8

0 0 1 1 30 1 1 0 6

-8 4 2 1

1 0 0 1 9≠-7

1 1 0 1 131 0 1 1 11

8 4 2 1

1 1 0 0 0 24≠8

C=0 and V=1

0 0 1 1 30 1 1 0 6

8 4 2 1

1 0 0 1 9

Page 61: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Addition of Signed and Unsigned Numbers

C=0 and V=0

0 1 0 1 51 0 0 1 -7

-8 4 2 1

1 1 1 0 -2

1 1 0 0 -41 0 1 1 -5

-8 4 2 1

1 0 1 1 1 -9≠-7

0 1 0 1 51 0 0 1 9

8 4 2 1

1 1 1 0 14

C=1 and V=1

1 1 0 0 121 0 1 1 11

8 4 2 1

1 0 1 1 1 23≠7

Page 62: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Can replace thiswith k xor gates

Two's Complement Adder/Subtractor Architecture

Page 63: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Arithmetic ShiftTwo’s complement

Sh.L {001012 = +5} = 010102 = +10

Sh.L {110112 = -5} = 101102 = -10

Sh.L {010102 = +10} = 101002 = - 12

overflow

Sh.R {001012 = +5} = 000102 = +2 rem 1

Sh.R {110112 = -5} = 111012 = -3 rem 1

Shift left may cause overflow

Shift right requires sign extension

Page 64: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Addition and subtractionOne’s complement

Numbers of the same sign Numbers of the opposite sign

0 0 1 0 21 1 1 0 -1

8 4 2 1

1 0 0 0 0

1 0 1 0 -51 1 0 1 -2

8 4 2 1

1 0 1 1 1

+ 1

1 0 0 0 -7

end-arround carry

+

0 0 0 1 1

1

Disadvantage: Need another adder after the addition is complete!

Page 65: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

One’s complement representation of signed numbers

Page 66: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Addition and subtractionSigned-magnitude

Numbers of the same sign Numbers of the opposite sign

0 1 0 1 1 110 0 1 1 0 6

sign bit magnitude

+

0 1 0 0 0 1 17

carry = overflow

1 1 0 1 1 -110 0 1 1 0 6

sign bit magnitude

+

11 > 6

1 0 1 1 110 1 1 0 6–

0 1 0 1 51

Page 67: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers
Page 68: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Signed Number RepresentationsSummary

Page 69: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Representing k-bit signed binary numbers

Representation for X>0

Representation for X<0

Representationfor 0

Representation

Signed-magnitude

X0,2k-1 2k-1+|X|

Biased X+B B X+B

Complement X M-|X|=M+X0, M mod 2k

Two’s complement

One’scomplement

X

X

2k-|X|=

2k-ulp-|X|=

0

0, 2k-ulp

typical B=2k-1 or 2k-1-ulp

ulpX

X

Page 70: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Value of a number in the signed representations

Representation Value of(xk-1 xk-2 … x1 x0.x-1 … x-l)

Signed-magnitude

Biased

Two’s complement

One’scomplement

ik

lii

xxX k 2)1(

21

BxX ik

lii

21

ik

lii

kk xxX 22

21

1

ik

lii

kk xulpxX 2)2(

21

1

Page 71: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Extending the number of bits of a signed numberxk-1 xk-2 … x1 x0 . x-1 x-2 … x-l

yk’-1 yk’-2 … yk yk-1 yk-2 … y1 y0 . y-1 y-2 … y-l y-(l+1) … y-l’

X

Y

signed-magnitudexk-1 0 0 0 0 0 0 0 xk-2 … x1 x0 . x-1 x-2 … x-l 0 0 0 0 0 0

two’s complementxk-1 xk-1 xk-1 . . .xk-1 xk-2 … x1 x0 . x-1 x-2 … x-l 0 0 0 0 0 0

one’s complementxk-1 xk-1 xk-1 . . .xk-1 xk-2 … x1 x0 . x-1 x-2 … x-l xk-1 . . . .xk-1

biased xk-2 … x1 x0 . x-1 x-2 … x-l 0 0 0 0 0 01kx . . .xk-1 1kx

Page 72: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Generalized Complement Representation

Page 73: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Generalized complement representation of signed integers

M-N > PM ≥ N+P+1

Page 74: Number Representation Part 1 ECE 645: Lecture 4. Required Reading Chapter 1, Numbers and Arithmetic, Sections 1.1-1.6 Chapter 2, Representing Signed Numbers

Generalized complement representation of signed integers