Top Banner
Topic 1 – Number Systems
68

Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Jan 16, 2016

Download

Documents

Myron Wood
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Topic 1 – Number Systems

Page 2: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

What is a Number System? A number system consists of an ordered

set of symbols (digits) with relations defined for addition, subtract, multiplication, and division.

The radix of a number system is the total number of digits allowed in the system.

Any number in a system can have both an integer (whole) part and a fractional part, separated with a radix point.

Page 3: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Positional Notation As an example, consider a fictional

paycheck of $956.81. This number is expressed in positional

notation. This means that the position of each digit indicates its relative weight (or significance).

Here, this paycheck can be cashed for 9 hundred dollar bills, 5 ten dollars bills, 6 one dollar bills, 8 dimes, and 1 penny.

Page 4: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Positional Notation A positive number, N, can be written in

positional notation as:N = (an-1an-2…a1a0a-1..a-2…a-m)r

Here, n represents the number of digits to the left of the radix point, m represents the number of digits to the right of the radix point, and r represents the radix.

Using this notation, our paycheck can be expressed as (956.81)10. In general, we can emit the ()r if the radix is known by context.

Page 5: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Polynomial Notation We can also express this amount in

polynomial notation. For example, we can express our value

of 956.81 as9 x 102 + 5 x 101 + 6 x 100 + 8 x 10-1 + 1 x 10-2

Note that each digit resides in a weighted position and that weight is a power of the radix (10 in this case).

Page 6: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Important Number Systems In the study of digital systems we

have a number of important number systems… Binary - Radix 2 Octal - Radix 8 Decimal - Radix 10 Hexadecimal - Radix 16

Page 7: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Important Number Systems

0 0 0 0

1 1 1 1

2 10 2 2

3 11 3 3

4 100 4 4

5 101 5 5

6 110 6 6

7 111 7 7

8 1000 10 8

9 1001 11 9

10 1010 12 A

11 1011 13 B

12 1100 14 C

13 1101 15 D

14 1110 16 E

15 1111 17 F

16 10000 20 10

Decimal Binary Octal Hexadecimal

Page 8: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary in Digital Systems Digital systems are usually constructed in

a two state device (it’s either on or off). This makes the binary number system ideally suited for representing numbers in digital systems.

Only two digits, 0 and 1 (called bits) are needed. A bit can be stored in a two stage storage device known as a latch.

A binary number of length n can be stored in an n-bit long device known as a register, which is built with n latches.

Page 9: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary Addition Binary addition is very simple. This is best shown in an example

of adding two binary numbers…

1 1 1 1 0 1+ 1 0 1 1 1---------------------

0

1

0

1

1

1111

1 1 00

carries

Page 10: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary Addition We can add four binary numbers:

(101101)2, (110101)2, (001101)2, and (010001)2…

10 10 10 10 1 10 1 0 1 1 0 1

1 1 0 1 0 1 0 0 1 1 0 1+ 0 1 0 0 0 1----------------------1 0 0 0 0 0 0 0

carries

Page 11: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary Subtraction We can also perform subtraction (with

borrows in place of carries). Let’s subtract (10110)2 from (1001101)2…

1 100 10 10 0 0 10

1 0 0 1 1 0 1- 1 0 1 1 1------------------------ 1 1 0 1 1 0

borrows

Page 12: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary Multiplication Binary multiplication is much the

same as decimal multiplication, except that the multiplication operations are much simpler…1 0 1 1 1

X 1 0 1 0----------------------- 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 0 1 1 1----------------------- 1 1 1 0 0 1 1 0

Page 13: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Binary Division Binary division is the same trial and

error procedure as decimal division…

1 1 0 1 -------------------------1 0 0 1 / 1 1 1 0 1 1 1 1 0 0 1 ---------- 1 0 1 1 1 0 0 1 ---------- 1 0 1 1 1 0 0 1 ---------- 1 0

remainder

quotient

Page 14: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Hexadecimal Arithmetic Arithmetic in hexadecimal follows the

same procedures…

Adding (2A58)16 + (71D0)16

12 A 5 8

+ 7 1 D 0--------------- 9 C 2 8

carries

Page 15: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Hexadecimal Arithmetic

Subtracting (9F1B)16 - (4A36)16

E 119 F 1 B

- 4 A 3 6--------------- 5 4 E 5

borrows

Page 16: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Hexadecimal Arithmetic

Multiplying (5C2A)16 X (71D0)16

5 C 2 AX 7 1 D 0---------------------- 4 A E 2 2 0 5 C 2 A2 8 5 2 6----------------------2 8 F 9 6 C 2 0

Page 17: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Hexadecimal Arithmetic Dividing (27FCA)16 / (3E)16

A 5 1 -------------------------3 E / 2 7 F C A 2 6 C ------- 1 3 C 1 3 6 ------- 6 A 3 E ---- 2 C

quotient

remainder

Page 18: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Base Conversions Often, you will need to convert numbers

from one base into another. The easiest and most direct way to do

this is series substitution. To convert a number from base A to

base B, first form the series representation of the number in base A and the evaluate the series using base B arithmetic.

Page 19: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Series Substitutions For example, to convert (10100)2 to

base 10…N = 1(24)+0(23)+1(22)+0(21)+0(20)

N = (16)10 + 0 + (4)10 + 0 + 0

N = (20)10

And, to convert (1101.011)2 to base 8…

N = 1(23)+1(22)+0(21)+1(20)+0(2-1)+1(2-2)+1(2-3)

N = (10)8 + (4)8 + 0 + (1)8 + 0 + (.2)8 + (.1)8

N = (5.3)8

Page 20: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Series Substitution To convert (AF3.15)16 to base 10…

N=A(162) + F(161) + 3(160) + 1(16-1) + 5(16-2)

N=1010(25610) + 1510(1610) + 310(110)

+ 110(0.062510) + 510(0.0039062510)

N=256010 + 24010 + 310 + 0.062510

+ 0.0195312510

N = (2803.08203125)10

Page 21: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Divide Method An alternate method of converting from

base A to base B is the radix divide method. (1) Divide (N)A by the desired base B, producing

quotient Q1 and remainder R0. R0 is the least significant digit (d0) of the result.

(2) Compute each remaining digit by dividing the quotient Qi by (B)A, producing Qi+1 and remainder Ri, which represents di.

(3) Stop when the quotient Qi+1 = 0.

This is best seen with some examples…

Page 22: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Divide Method Converting (234)10 to base 8…

2 9 -------8 / 2 3 4 1 6 ----- 7 4 7 2 --- 2b0

3 -----8 / 2 9 2 4 --- 5

b1

0 ---8 / 3 0 - 3

b2

Therefore,(234)10 = (352)8

Page 23: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Divide Method Converting (234)10 to base 16…

1 4 -------16 / 2 3 4 1 6 ----- 7 4 6 4 --- 1 0

(10)10 = (A)16 = b0

0 -----16 / 1 4 0 --- 1 4

(14)10 = (E)16 = b1

Therefore,(234)10 = (EA)16

Page 24: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Multiplication Method In order to convert fractional numbers from

base A to base B, we can use the radix multiplication method. (1) Let F-1 = (N)A. (2) Compute digits (b-i)A by multiplying Fi by (B)A,

producing integer I-i which represents digit (b-i)A and fraction F-(i+1).

(3) Convert each digit (b-i)A to base B.

Again, this is best seen with some examples…

Page 25: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Multiplication Method Converting (0.828125)10 to base 2…

0.828125X 2--------1.656250

b-1

0.250000X 2--------0.500000

b-5

0.500000X 2--------1.000000

b-6

0.625000X 2--------1.250000

b-4

0.656250X 2--------1.312500

b-2

0.312500X 2--------0.625000

b-3

Therefore,(0.828125)10 = (0.110101)2

Page 26: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Multiplication Method Converting (0.1285)10 to base 8…0.1285X 8------1.0280

b-1

0.0280X 8------0.2240

b-2

0.2240X 8------1.7920

b-3

0.7920X 8------6.3360

b-4

0.3360X 8------2.6880

b-5

0.6880X 8------5.5040

b-6

0.5040X 8------4.0320

b-7

0.0320X 8------0.2560

b-8

Therefore,(0.1285)10 = (0.10162540…)8

Page 27: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

General Conversion Algorithms There are two general conversion

algorithms. Algorithm 1:To convert N from base A to base B, use:

(a) the series substitution method with base B arithmetic, or(b) the radix divide and/or multiply methods with base A arithmetic.

Page 28: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

General Conversion Algorithms

Algorithm 2:To convert N from base A to base B, use:

(a) the series substitution method with base 10 arithmetic to convert N from base A to base 10, and then(b) the radix divide and/or multiply methods with base 10 arithmetic to convert N from base 10 to base B.

Page 29: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

General Conversion Algorithms Algorithm 1 is more direct, as we simply

go from base A to base B. Algorithm 2 goes from base A to base 10

to base B. So, algorithm 2 requires more steps than

algorithm 1. However, it is often easier, faster, and less error prone, as all arithmetic is performed in decimal (base 10).

Bottom line … do what is easier for you.

Page 30: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Signed Number Representation The easiest and most straightforward

method of representing signed numbers is the sign magnitude code.

A signed number may be written as…N = (san-1an-2…a1a0a-1…a-m)rsm

where s = 0 if the number N is positive and s = (r-1) if the number N is negative (where r is the radix of the number system used to represent the number N).

Page 31: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Sign Magnitude Representation Therefore, the sign magnitude code of

N=(-13)10 in decimal is…

N = (9, 13)10sm

And the sign magnitude code of N = (-13)10 in binary is…

N = -(13)10

= -(1101)2

= (1, 1101)2sm

The comma is used to delimit sign digits for the sake of clarity.

Page 32: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Sign Magnitude andDigital Systems Sign magnitude code is typically not used

in digital systems. This method requires circuitry and

algorithms that require the system to understand and process the sign magnitude coded numbers…a process which is both time consuming and requires complex circuitry.

A much more powerful code number systems can be used in digital systems.

Page 33: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complementary Number Systems Complementary numbers form the basis

of complementary arithmetic which is a powerful method used by digital systems to handle signed number manipulation.

In these systems, positive numbers are represented the same as in sign-magnitude representation; negative numbers are represented as the complement of the corresponding positive number.

Page 34: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Radix Complements The radix complement [N]r of a

number (N)r is defined as:

[N]r = rn – (N)r

where n is the number of digits in (N)r.

The largest positive number (positive full scale) that can be represented in such a scale of rn-1-1 while the most negative number (negative full scale) is –rn-1.

Page 35: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Two’s Complement Numbers The two’s complement number

system is the most commonly used system for digital systems.

The two’s complement of a number (N)2 is defined as

[N]2 = 2n – (N)2

Page 36: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Calculating the 2’s Complement of a Number To calculate the two’s complement of

(N)2 = (01100101)2…

[N]2 = [01100101]2

= 28 – (01100101)2

= (100000000)2 – (01100101)2

= (10011011)2

Page 37: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

2’s Complement &Negative Numbers Therefore, (10011011)2 is the 2’s complement

of (01100101)2. We can show that this can be used to represent –(N)2 by showing that (N)2+[N]2 = 0…

1 0 0 1 1 0 1 1+ 0 1 1 0 0 1 0 1-------------------1 0 0 0 0 0 0 0 0 If we discard the carry, we can see that the 2’s

complement of a binary number can be used to represent its negative counterpart.

Page 38: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complement of the Complement We can also take the 2’s complement of

the 2’s complement of a number and get the original number back…[[N]2]2 = [00101100]2

= 28 – (00101100)2

= (100000000)2 – (00101100)2

= (11010100)2.

Since this is the original (N)2, we can see that [[N]2]2 = (N)2.

Page 39: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complement Shortcuts There also are shortcuts to computing

the 2’s complement of a binary number…

Algorithm 1 – Starting with the least significant bit, copy all of the bits up to and including the first 1 bit and then complementing the remaining bits. N = 0 1 1 0 0 1 0 1

[N] = 1 0 0 1 1 0 1 1

Page 40: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complement Shortcuts N = 1 1 0 1 0 1 0 0

[N] = 0 0 1 0 1 1 0 0

For N = (10110)2 for n = 8 (each number represented in 8 bits)…N = 0 0 0 1 0 1 1 0[N] = 1 1 1 0 1 0 1 0

Page 41: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complement Shortcuts Algorithm 2 – Simply complement

each bit and then add 1 to the result.

Finding the 2’s complement of (01100101)2 and of its 2’s complement…N= 01100101 N = 10011011

10011010 01100100 + 1 + 1

--------------- --------------- 10011011 01100101

Page 42: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

2’s Complement Numbers To summarize 2’s complement

numbers: The two’s complement is computed

using the expression [N]2 = 2n – (N)2.

The two’s complement of a binary number is equivalent to the inverse of that number...-(N)2 = [N]2.

There are multiple ways of calculating [N]2, with the simplest being to complement each bit of (N)2 and then add one to the result.

Page 43: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complementary Arithmetic As subtracting two numbers is equivalent

to adding the complement of one number to the other number, digital systems need only adder circuitry to perform both addition and subtraction.

As any digital system has a limited number of resources (and the circuits must be a fixed size), machines have fundamental limits as to the range of numbers they can represent.

Page 44: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Finite Number Representation Machines that use 2’s complement

arithmetic can represent integers in the range

-2n-1 <= N <= 2n-1-1where n is the number of bits available for representing N. Note that 2n-1-1 = (011..11)2cns and –2n-1 = (100..00)2cns.

Page 45: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Adders Circuitry that performs addition (usually

using 2’s complement numbers) is known as an adder.

Adders have a set number of bits of precision. For instance, an adder that handles n bit numbers is referred to as a n-bit adder.

Adders will produce a carry bit when their computed sum is greater than what the adder can represent in n bits. An n-bit adder will produce a carry bit for any sum A >= 2n.

Page 46: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Overflows When an operation (such as addition)

produces a result that falls outside this range, an overflow condition is said to occur.

In such a case, the n-bit number produced by the operation will not be a valid representation of the result.

Generally, digital systems monitor the operations they perform and generate a warning signal when overflow occurs, so invalid numbers are not mistaken for correct and valid results.

Page 47: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Complementary Arithmetic In order to see how arithmetic in

the 2’s complement system works, let’s look at three cases. In each of these cases, we will assume that B >= 0 and C >= 0. A = B + C A = B – C A = – B – C

Page 48: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 1: A = B + C In the first case, A = B + C, we know that

since B and C are nonnegative, A must also be nonnegative.

The difficulty that arises here is when A>2n-1-1, as this is when an overflow occurs.

This is easily detected as the sign bit of A will be incorrect.

To see this, let’s consider the sum of the two largest possible n-bit positive numbers…

Page 49: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 1: A = B + C The largest possible n-bit number is 2n-1-1. If we add this number to itself,

(2n-1-1) + (2n-1-1) = 2n - 2 As this is greater than 2n-1-1, an overflow

condition occurs for any sum, A, in the range A >= 2n-1.

The nth bit of any number in this range will be set to 1. Therefore, any such result will appear to be negative, thus indicating the overflow condition.

Page 50: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 1 Summary To summarize A = B + C…

When A > 2n-1-1, an overflow is indicated by the sign bit of A being incorrect. If two positive numbers are added and the result is negative, overflow has occurred.

Since the maximum possible A = 2n-2, there will never be a carry bit out of the nth bit of the binary adder.

Page 51: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 1 Example #1 For case 1, let’s compute (9)10 + (5)10

using 5-bit 2’s complement arithmetic.

Since the result has a zero sign bit, it correctly represents the desired sum. Indeed, (01110)2cns = +(1110)2 = +(14)10.

0 1 0 0 1 (2cns code for (9)10)+ 0 0 1 0 1 (2cns code for (5)10)--------------

0 1 1 1 0

Page 52: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 1 Example #2 Now, let’s compute (12)10 + (7)10 using

5-bit 2’s complement arithmetic.

This result has a 1 sign bit, indicating a negative number! Thus, overflow has occurred and the result is invalid. Indeed, the correct result, (19)10 is outside the 5-bit 2’s complement range.

0 1 1 0 0 (2cns code for (12)10)+ 0 0 1 1 1 (2cns code for (7)10)--------------

1 0 0 1 1

Page 53: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 2: A = B – C In this case, the computation is

treated as A = B + (-C). As we’re using 2’s complement coding, we can write (-C) as [C]…

A = (B)2 + [C]2

= (B)2 + 2n – (C)2

= 2n + (B)2 – (C)2

Page 54: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 2: A = B – C So, we can see that A = 2n+(B)2–(C)2. This seems right, except for the extra 2n

term. To understand this, let’s consider when B >= C. In this case, B-C >- 0. Therefore A >= 2n. Since A >= 2n, this is a carry bit (recall that an adder generates a carry bit for any sum >= 2n).

This carry bit can be ignored and we arrive at the result A = B – C, which is what we want.

Page 55: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 2: A = B – C To be complete, let’s also consider when B

< C. In this case, B-C < 0 and A = 2n – (C – B)2 = [C – B]2. This gives A = -(C-B)2, which is the correct answer.

Note that here there is no carry bit generated by the adder (as there is no 2n term).

When B and C are both positive numbers, B-C will always be less than either of the two numbers, meaning no overflow cannot be generated in this condition.

Page 56: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 2 Example #1 Let’s compute (12)10 – (5)10.

(12)10 = +(1100)2 = (01100)2cns

(-5)10 = -(0101)2 = (11011)2cns

Adding these two 5-bit codes…

Discarding the carry bit, the sign bit is seen to be zero, indicating a correct result. Indeed, (00111)2cns = +(0111)2 = +(7)10.

0 1 1 0 0 + 1 1 0 1 1-------------- 1 0 0 1 1 1

carry

Page 57: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 2 Example #2 Let’s compute (5)10 – (12)10.

(-12)10 = -(1100)2 = (10100)2cns

(5)10 = +(0101)2 = (00101)2cns

Adding these two 5-bit codes…

Here, there is no carry bit and the sign bit is 1. This indicates a negative result, which is what we expect. (11001)2cns = -(7)10.

0 0 1 0 1 + 1 0 1 0 0-------------- 1 1 0 0 1

Page 58: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 3: A = –B – C Here, we will take the complements of B and

C and add them together to compute A. Therefore…

If the carry bit is discarded, the computation produces the correct result, the 2’s complement representation of –(B+C)2.

A = [B]2 + [C]2

= 2n – (B)2 + 2n – (C)2

= 2n + 2n – (B+C)2

= 2n + [B + C]2

Page 59: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 3 Example #1 Let’s compute –(9)10 – (5)10…

-(9)10 = -(1001)2 = (10111)2cns

-(5)10 = -(0101)2 = (11011)2cns

Adding these codes…

If we ignore the carry bit, we can see the sign bit is 1. Therefore, the result is correct. Indeed, (10010)2cns = -(1110)2 = -(14)10.

1 0 1 1 1 + 1 1 0 1 1-------------- 1 1 0 0 1 0

carry

Page 60: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Negative Number Overflow Just as too large of a positive

number can produce an overflow, so can too small of a negative number. Any result in the range A < -2n-1 will cause an overflow, indicated by an incorrect sign bit (it appears to be positive).

This can be illustrated…

Page 61: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Case 3 Example #2 Let’s compute –(12)10 – (5)10…

-(9)10 = -(1100)2 = (10100)2cns

-(5)10 = -(0101)2 = (11011)2cns

Adding these codes…

If we ignore the carry bit, we can see the sign bit is 0. This indicates an overflow and the result is invalid.

1 0 1 0 0 + 1 1 0 1 1-------------- 1 0 1 1 1 1

carry

Page 62: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

2’s Complement Summary

Case Carry

Sign Bit

Condition Over flow?

B + C 0 0 B+C <= 2n-1-1 no

0 1 B+C > 2n-1-1 yes

B – C 1 0 B <= C no

0 1 B > C no

- B – C 1 1 -(B+C) >= -2n-1 no

1 0 -(B+C) < -2n-1 yes

Page 63: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Diminished Radix Complement Number Systems In addition to the radix

complement number systems (such as 2’s complement), there is a class of number systems known as the diminished radix complement systems.

This is defined as…[N]r-1 = rn - (N)r -1

Page 64: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

1’s Complement For binary numbers, the 1’s

complement system is used. To find the 1’s complement of a n-bit binary number…

[N]2-1 = 2n – (N)2 – 1 As a shortcut algorithm, simply

complement each bit of (N)2.

Page 65: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

1’s Complement Arithmetic Using 1’s complement numbers,

subtracting a number is not the same as adding its inverse (or subtracting it).

For example, suppose we wish to add +(1001)2 and –(0100)2. We compute the 1’s complement of (0100)2 and obtain 11011. We add 01001 and 11011 and obtain 100100. This is not the correct result.

Page 66: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

End-Around Carry The correct result, in this system, is

obtained by adding the carry out of the most significant bit to the result.

In this case, we take the result 00100 and add the carry out bit of 1 and obtain the result of 00101. This is the correct result.

This procedure is referred to as an end-around carry and is a necessary step in diminished complement arithmetic.

Page 67: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Diminished Radix Complement Number Systems Diminished radix complement number

systems (especially the 1’s complement) are not used very often. There are significant advantages to the complementary number systems.

However, the 1’s complement system comes up sometimes in the study of digital systems, so it is a good idea to understand how this system of number representation works.

Page 68: Topic 1 – Number Systems. What is a Number System? A number system consists of an ordered set of symbols (digits) with relations defined for addition,

Summary You should now know:

Decimal, binary, octal, and hexadecimal number systems

Conversion between these bases Arithmetic operations in these bases How negative numbers can be

represented in computers, which method is most commonly used, and why