number system utm notes

81
1 Chapter 2 Number Systems i. Decimal, Binary, Hexadecimal, Octal ii. Number conversions iii. Binary Arithmetic

Upload: kurenai-ryu

Post on 15-Jan-2017

939 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Number system utm notes

1

Chapter 2

Number Systems

i. Decimal, Binary, Hexadecimal, Octal

ii. Number conversions

iii. Binary Arithmetic

Page 2: Number system utm notes

2

Digital Number Systems

• Many number systems are used in digital

electronics.

– Decimal number system

– Binary number system

– Octal number system

– Hexadecimal number system

Page 3: Number system utm notes

3

Decimal System

• We use decimal numbers everyday

• Base-10 system

• 10 symbols: 0,1,2,3,4,5,6,7,8,9

• Examples: 23, 5, 7, 88.9, 0.2

Page 4: Number system utm notes

4

Decimal System

• The position of each digit in a decimal

number can be assigned a weight

• For example: 2745.214

– 2745.214 is a decimal number

– 2 is a digit, 7 is a digit, 4 is a digit…

2 7 4 5 2 1 4.

103 102 101 100 10-110-210-3weights

Page 5: Number system utm notes

5

Decimal System

2745.21410 =

(2x103) + (7x102) + (4x101) + (5x100) + (2x10-1) + (1x10-2) + (4x10-3)

2 7 4 5 2 1 4.

103 102 101 100 10-110-210-3weights

Page 6: Number system utm notes

6

Decimal System

• Most significant digit (MSD)—the digit that carries the most weight

• Least significant digit (LSD)– the digit that carries the least weight

2 7 4 5 2 1 4.

103 102 101 100 10-110-210-3weights

Page 7: Number system utm notes

7

Decimal Counting

• 0�1�2�3�4�5�6�7�8�9-----

�10�11----------------------------�19----�20----

-------------------------------�99----�100------------

------

Page 8: Number system utm notes

8

Binary System

• Difficult to design a system that works with 10 different voltage levels

• Base-2 system

• 2 digits/symbols: 0, 1

• Examples: 0, 1, 01, 111, 101010

• Similar to decimal number, the position of each digit in a binary number can be assigned a weight.

Page 9: Number system utm notes

9

Binary System

• The position of each digit (bit) in a binary

number can be assigned a weight

• For example: 1011.101

– 1011.101 is a binary number

– 1 is a digit, 0 is a digit, 1 is a digit…

1 0 1 1 1 0 1.

23 22 21 20 2-1 2-2 2-3weights

Page 10: Number system utm notes

10

Binary System

1011.1012=(1x23) + (0x22) + (1x21) + (1x20) +

(1x2-1) + (0x2-2) + (1x2-3)

= 8 + 0 + 2 + 1 + 0.5 + 0 + 0.125

= 11.62510

1 0 1 1 1 0 1.

23 22 21 20 2-1 2-2 2-3weights

Page 11: Number system utm notes

11

Binary counting

• 0�1�10�11�100�101�110� 111--------

---------�11111

Page 12: Number system utm notes

12

Hexadecimal System

• Base-16 system

• 16 symbols: 10 numeric digits and 6

alphabetic characters

– 0,1,2,3,4,5,6,7,8,9

– A,B,C,D,E,F

• Compact way of writing binary number

• Widely used in computer and

microprocessor applications

Page 13: Number system utm notes

13

Hexadecimal System

• Examples: 1C16 , A8516

• 1CH, A85H

• The position of each digit in a hexadecimal number can be assigned a weight

• For example: 2AF8.98E

– 2AF8.98E is a hexadecimal number

– 2 is a digit, A is a digit, F is a digit…

2 A F 8 9 8 E.

163 162 161 160 16-116-216-3weights

Page 14: Number system utm notes

14

Hexadecimal Counting

• 0�1�2�3�4�5�6�7�8�9�A�B�C

�D�E�F�10�11�12-------------------

�19�1A---------------------------------------

�FF�100�101�102------------------

Page 15: Number system utm notes

15

Octal System

• Base-8 system

• 8 digits: 0,1,2,3,4,5,6,7

• Convenient way to express binary numbers

and codes. Use 3 bits of binary

Page 16: Number system utm notes

16

Table of Number SystemsDECIMAL BINARY HEXADECIMAL OCTAL

0 0000 0 0

1 0001 1 1

2 0010 2 2

3 0011 3 3

4 0100 4 4

5 0101 5 5

6 0110 6 6

7 0111 7 7

8 1000 8 10

9 1001 9 11

10 1010 A 12

11 1011 B 13

12 1100 C 14

13 1101 D 15

14 1110 E 16

15 1111 F 17

Page 17: Number system utm notes

17

Review

• Give the largest decimal number that can be

represented in binary with 8 bits.

• Determine the weight of the 1 in 100002.

• Convert the binary number 10111101.0112 to

decimal. Ans:189.37510

Page 18: Number system utm notes

18

Conversions

• Binary�Decimal• Decimal�Binary

• Hexadecimal�Decimal• Decimal�Hexadecimal

• Binary�Hexadecimal• Hexadecimal�Binary

• Octal�Decimal• Decimal�Octal

• Binary�Octal• Octal�Binary

Page 19: Number system utm notes

19

BINARY number � DECIMAL number

Method 1: Sum-of-Weights

Binary

Decimal

Given 110012

S1: write the weights

1 1 0 0 1Binary number

weights 2021222324

S2: write the sum of the products of each

digit with its weight

110012 =(1x24)+(1x23)+(0x22)+(0x21)+(1x20)

=16 + 8 + 1

=2510

Binary

Decimal

?

Answer: 2510

Page 20: Number system utm notes

20

Decimal � Binary Conversion

• Decimal number � binary number

– Method: sum-of-weights

• Decimal whole number � binary number

– Method: division-by-2

• Decimal fraction � binary number

– Method: multiplication-by-2

Page 21: Number system utm notes

21

DECIMAL number � BINARY number

Method 1: Sum-of-WeightsDecimal

Binary

Given 2510

Step 1: Find the power of two that fulfills the following:

a. nearest to the given decimal number; and

b. its decimal number is less than or equal to the given decimal number.

22? No, because it is not the nearest. 8 (23) is nearer and still less than 25.

25? No, because its decimal number, 32 is more than 25.

24? Yes, because it is the nearest and its decimal, 16 is less than 25.

Step 2: Subtract the power of two (from Step 1) from the given decimal number.

25-16=9

The result of the subtraction is 9.

Step 3: If the result of the subtraction in Step 2 is 0, go to Step 4. Else, repeat Steps

1 and 2 for the result of the subtraction in Step 2.

Step 4: Write out the binary number based on all the powers of two from Step 1.

Page 22: Number system utm notes

22

DECIMAL Number � BINARY Number

Method 1: Sum-of-WeightsGiven 5110

• Step 1: the power of two which is nearest to 51 but less than 51 is 25

• Step 2: the result of subtraction 51-32=19

• Step 3: – Repeat Step 1: the power of two nearest to 19 but less than 19 is 24

– Repeat Step 2: the result of subtraction 19-16=3

– Repeat Step 1: the power of two which is nearest to 3 and less than 3 is 21

– Repeat Step 2: the result of subtraction 3-2=1

– Repeat Step 1: the power of two which is nearest to 1 and equal to 1is 20

– Repeat Step 2: the result of subtraction 1-1=0

• Step 4:

1 0 0 1 1Binary number

Weights 24 23 22 21 20

1

25

Page 23: Number system utm notes

23

DECIMAL Number � BINARY Number

Method 2: Repeated Division-by-2

• Method 1 can convert both

whole numbers and

fractional numbers to binary.

• Method 2 is to convert

whole numbers to binary.

• Given 4510

– Repeat the division until the

quotient is 0.

222

45=

Remainder

112

22=

52

11=

22

5=

12

2=

02

1=

Quotient

1

0

1

1

0

1

LSB

MSB

The binary number is 1011012

Page 24: Number system utm notes

24

DECIMAL fraction � BINARY fraction

Method 3: Repeated Multiplication-by-2

• Method 3 is to convert decimal fraction to

binary.

• Repeat the multiplication until the fractional

part is all zeros.

• Given 0.3125

0.3125 x 2 = 0.625

0.625 x 2 = 1.25

0.25 x 2 = 0.50

0.50 x 2 = 1.00

Carry

0

1

0

1

MSB

LSB

The binary fraction is

.0101

Page 25: Number system utm notes

25

DECIMAL Number � HEXADECIMAL Number

Method: Repeated division-by-16

• Repeat the division until the quotient is 0.

• Example: 65010

4016

650=

216

40=

016

2=

quotientRemainder

(decimal)

Remainder

(hexadecimal)

LSD

MSD

A

8

2

10

8

2

So, the hexadecimal number is 28A16

Page 26: Number system utm notes

26

BINARY Number � HEXADECIMAL Number

• Step 1: Break the binary number into 4-bit

groups, starting from LSB.

• Step 2: Replace each 4-bit with the equivalent

hexadecimal number.

• Example: 111111000101101001

00111111000101101001binary

hexadecimal 961F3

The hexadecimal number is 3F16916

Page 27: Number system utm notes

27

HEXADECIMAL Number � BINARY Number

• Step: Replace each digit of the hexadecimal

number with the equivalent 4-bit binary

number.

• Example: CF8E16

C F 8 EHexadecimal

Binary 1110100011111100

The binary number is 11001111100011102

Page 28: Number system utm notes

28

DECIMAL Number � OCTAL Number

Method: Repeated division-by-8

• Repeat the division until the quotient is 0.

• Example: 35910

448

359=

58

44=

08

5=

quotient Remainder

LSD

MSD

7

4

5

So, the octal number is 5 4 78

Page 29: Number system utm notes

29

BINARY Number � OCTAL Number

• Step 1: Break the binary number into 3-bit

groups, starting from LSD.

• Step 2: Replace each 3-bit group with the

equivalent octal number.

• Example: 1101012

110101binary

octal 56

The octal number is 658

Page 30: Number system utm notes

30

OCTAL Number � BINARY Number

• Step: Replace each octal digit with the

equivalent 3-bit group.

• Example: 138

Octal

Binary

1 3

001 011

So, the binary number is 0010112

Page 31: Number system utm notes

31

Exercise• Fill in the blanks.

Decimal Binary Hexadecimal Octal

1101.0112

10101.112

245.62510

70310

A8516

Page 32: Number system utm notes

32

Exercise• Answers

Decimal Binary Hexadecimal Octal

13.37510 1101.0112 D.616 15.38

21.7510 10101.112 15.C16 25.68

245.62510 11110101.1012 F5.A16 365.58

70310 10101111112 2BF16 12778

269310 1010100001012 A8516 52058

Page 33: Number system utm notes

Binary Arithmetic

• Binary addition

• Binary subtraction

• Binary multiplication

• Binary division

Page 34: Number system utm notes

Binary addition

• 0 + 0 = 0 with a carry of 0

• 0 + 1 = 1 with a carry of 0

• 1 + 0 = 1 with a carry of 0

• 1 + 1 = 10 with a carry of 1

• Example: 111 + 11 = ?

111 7

+ 11 +3

1010 10

In decimal…

Page 35: Number system utm notes

Binary subtraction

• 0 – 0 = 0

• 1 – 1 = 0

• 1 – 0 = 1

• 10 – 1 = 1

• Example: 101 – 11 = ?

101 5

- 11 -3

10 2

In decimal

Page 36: Number system utm notes

Binary Multiplication

• 0 x 0 = 0

• 0 x 1 = 0

• 1 x 0 = 0

• 1 x 1 = 1

• Example: 101 x 111 = ?

101 5

x 111 x7

101 35

101

101

100011

Page 37: Number system utm notes

Binary Division

• The procedure is same as decimal division

• Examples: 110 ÷ 11 =?

110

11

0

0

11

10

6

6

0

3

2

In decimal…

Page 38: Number system utm notes

Review

• Why binary numbers? Why not decimal?

– Digital system understand binary numbers, not

decimal numbers.

Page 39: Number system utm notes

Review

• Why hexadecimal?

– Shorthand of binary numbers

– Easy to convert to and from binary

• Examples:

– 1 1111 1000 0000 1010 1000 00012

– 1F80A8116

Page 40: Number system utm notes

40

Chapter 2

Number Systems

iv. Binary Codes

v. Representation of Negative Numbers

vi. Arithmetic operations

Page 41: Number system utm notes

41

Chapter 2

Number Systems

iv. Binary Codes

v. Representation of Negative Numbers

vi. Arithmetic operations

Page 42: Number system utm notes

Outline

• Binary Codes

– BCD 8421

– Gray

– ASCII

– EBCDIC

Page 43: Number system utm notes

Code and Encoding

• Code-- Special group of symbols that is used

to represent numbers, letters or words.

• Encoding– The process of converting a

number/letter/word into a code.

Number,

Letter,

Wordencoding Code

Generally,

For example,

Numbers,

Letters,

Words

Straight binary codingBinary

number

Page 44: Number system utm notes

Other Codes

• External world is decimal but digital systems

use binary numbers.

– So, conversions are often.

• Other codes are introduced because the

conversion between the code and the decimal

number is easier.

Page 45: Number system utm notes

BCD Code

• Binary Coded Decimal Code

• Binary Coded Decimal (BCD)—a way to

represent each digit of a decimal number with

its 4-bit binary number.

Example: 87410

8 7 4Decimal

BCD 1000 0111 0100

Therefore, the BCD code for 87410 is 1000 0111 0100

Do you know why?

1000 1111 is not a BCD

Page 46: Number system utm notes

BCD Code / 8421 Code

• Convert a BCD code to its decimal equivalent.

– Step 1: Break the BCD into 4-bit groups, starting

from LSB

– Step 2: Replace each 4-bit group with its

equivalent decimal

• Example: 0110 1000 0011 1001

6 8 3 9

So, the decimal equivalent is 683910

Page 47: Number system utm notes

BCD coding vs. straight binary coding

• BCD coding is easier.

Decimal Binary

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

BCD coding

13710

13710

1 3 7decimal

BCD 0001 0011 0111

The BCD code is 0001 0011 0111

137

268

2

=68 1

=34 0

34

2=17 0

=8 117

2

8

2=4 0

4

2=2 0

2

2=1 0

1

2=0 1

The straight binary code is 100010012

Page 48: Number system utm notes

Gray Code

• No weights assigned to

the bit positions

• Only a single bit change

from one code word to

the next in sequence.

• Good— minimize the

chance for error.

DECIMAL BINARY GRAY CODE

0 0000 0000

1 0001 0001

2 0010 0011

3 0011 0010

4 0100 0110

5 0101 0111

6 0110 0101

7 0111 0100

8 1000 1100

9 1001 1101

10 1010 1111

11 1011 1110

12 1100 1010

13 1101 1011

14 1110 1001

15 1111 1000

Page 49: Number system utm notes

ConversionsBINARY TO GRAY CONVERSION

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

1 0 1 1 0

GRAY TO BINARY CONVERSION

1 1 0 1 1

1 0 0 1 0

Binary

Gray

Gray

Binary

Page 50: Number system utm notes

Alphanumeric codes

• Codes that represent numbers and alphabetic

characters (letters).

• At minimum, the code must represent 10

decimal digits (0-9) and 26 letters (A-Z).

• 6 bits are needed in the code that represent

the numbers and letters.

• ASCII is the most common alphanumeric code.

Page 51: Number system utm notes

ASCII Code

• American Standard Code for International

Interchange

• Used in computers and electronic equipment

processor1011001

Page 52: Number system utm notes

ASCII Code

• ASCII code has 128 characters and symbols

• Represented by 7-bit binary code

• Can be considered an 8-bit code with MSB 0.

• The first 32 ASCII characters are non-graphic commands only for control purposes—The ASCII Control Characters.

• E.g.: null, line feed, start of text, escape

Page 53: Number system utm notes

ASCII CODE

Page 54: Number system utm notes

Character or

Number

ASCII-8 Binary EBCDIC Binary

A 01000001 11000001

E 01000101 11000101

Z 01011010 11101001

0 00110000 11110000

1 00110001 11110001

5 00110101 11110101

EBCDIC ALPHANUMERIC CODEExtended Binary Coded Decimal Interchange Code

•8-bit character encoding

Page 55: Number system utm notes

EBCDIC

Page 56: Number system utm notes

56

Chapter 2

Number Systems

iii. Binary Codes

iv. Representation of Negative Numbers

v. Arithmetic operations

Page 57: Number system utm notes

Outline

• Representation of negative numbers

– Sign and magnitude

– 1’s complement

– 2’s complement

Page 58: Number system utm notes

Representation of negative numbers

• Computer must handle both positive and

negative numbers.

• A signed binary number consists of both sign

and magnitude information.

• 3 types of representation:

– Sign and magnitude (least used)

– 1’s complement

– 2’s complement (most important)

Page 59: Number system utm notes

Sign and Magnitude

• The sign bit—the left-most bit in a signed

binary number

– A ‘0’ sign bit indicates a positive number

– A ‘1’ sign bit indicates a negative number

• The remaining bits are the magnitude bits.

• Example: Express the decimal number -39 as

an 8-bit number in the sign-magnitude.

3910=1001112= 0010 01112

The sign bit is 1. Therefore, -3910= 1010 01112

Page 60: Number system utm notes

Sign and Magnitude

0000

0111

0011

1011

1111

1110

1101

1100

1010

1001

1000

0110

0101

0100

0010

0001

+0

+1

+2

+3

+4

+5

+6

+7-0

-1

-2

-3

-4

-5

-6

-7

0 100 = + 4

1 100 = - 4

+

-

Page 61: Number system utm notes

1’s complement

• To find the 1’s complement of a given binary

number,

– Change all 1s to 0s and all 0s to 1s.

• Example: Find the 1’s complement of

10110010

1 0 1 1 0 0 1 0

0 1 0 0 1 1 0 1

Page 62: Number system utm notes

1’s Complement

0000

0111

0011

1011

1111

1110

1101

1100

1010

1001

1000

0110

0101

0100

0010

0001

+0

+1

+2

+3

+4

+5

+6

+7-7

-6

-5

-4

-3

-2

-1

-0

0 100 = + 4

1 011 = - 4

+

-

Page 63: Number system utm notes

2’s complement

• To find the 2’s complement of a given binary number,

– Add 1 to the LSB of the 1’s complement

• Example: Find the 2’s complement of 10110010

A 10110010 Binary number

01001101 1’s complement

+ 1 add 1

01001110 2’s complement

B 10110010

01001110

Page 64: Number system utm notes

2’s Complement

0000

0111

0011

1011

1111

1110

1101

1100

1010

1001

1000

0110

0101

0100

0010

0001

+0

+1

+2

+3

+4

+5

+6

+7-8

-7

-6

-5

-4

-3

-2

-1

0 100 = + 4

1 100 = - 4

+

-

• Only one representation for 0

• One more negative number than positive number

Page 65: Number system utm notes

Comparison

+19 -19

Sign-magnitude

1’s complement

2’s complement

Exercise:

Express the decimal numbers +19 and -19 as an 8-bit

number in the sign-magnitude, 1’s complement and 2’s

complement forms.

Page 66: Number system utm notes

Comparison

+19 -19

Sign-magnitude 00010011 10010011

1’s complement 00010011 11101100

2’s complement 00010011 11101101

Exercise:

Express the decimal numbers +19 and -19 as an 8-bit

number in the sign-magnitude, 1’s complement and 2’s

complement forms.

Page 67: Number system utm notes

Comparison

Page 68: Number system utm notes

Decimal Value of Sign-Magnitude Number

• Convert the magnitude bits to its decimal

value.

• The sign bit determines whether the number

is positive or negative.

• Example: 100101012

00101012 = 24 + 22 + 20

= 16 + 4 + 1

= 21

The sign bit is 1. Therefore, the decimal number is -21.

Page 69: Number system utm notes

Decimal Value of 1’s Complement Number

• Positive number:

– Sum the weights of all bit position where there are 1s.

• Negative number:

– Step1: Assign negative value to the weight of the sign bit.

– Step 2: Sum all the weights where there are 1s.

– Step 3: Add 1 to the result.

• Example: 111010002

Step 1: -27 26 25 24 23 22 21 20

1 1 1 0 1 0 0 0

Step 2: -128+64+32+8=-24

Step 3: -24+1=-23

Page 70: Number system utm notes

• Assign negative value to the weight of the sign

bit.

• Sum all the weights where there are 1s.

• Example: 101010102

Step 1: -27 26 25 24 23 22 21 20

1 0 1 0 1 0 1 0

Step 2: -128+32+8+2=-86

Decimal Value of 2’s Complement Number

Page 71: Number system utm notes

Range of Unsigned Integer Numbers

• The maximum decimal number that can be

represented by n-bit is

– 2n-1

• 8-bit

– The maximum decimal number is 28-1=255

Page 72: Number system utm notes

Range of SIGNED Integer Numbers

• The smallest decimal number that can be represented by n-bit is -(2n-1)

• The biggest decimal number that can be represented by n-bit is +(2n-1-1)

• The range is -(2n-1) to +(2n-1-1).

• Example: 8-bit

– The range is -27 to 27-1 or -128 to +127

Page 73: Number system utm notes

73

Chapter 2

Number Systems

iv. Binary Codes

v. Representation of Negative Numbers

vi. Arithmetic operations

Page 74: Number system utm notes

Outline

• Arithmetic Operations of 2’s Complement

– Addition

– Subtraction

– Overflow

• Simpler addition scheme makes 2’s Complement the most common choice for integer number systems within digital systems

Page 75: Number system utm notes

Addition and Subtraction : 2’s Complement

4

+ 3

7

0100

+ 0011

0111

-4

+ 3

-1

1100

0011

1111

• Example: 4-bit system

• Example: Overflow in 4-bit system

4

- 3

1

0100

+ 1101

10001

Discard carry

7

+ 4

11

0111

+ 0100

1011

Wrong sign

-4

+ (-3)

-7

1100

+ 1101

11001

Discard carry

Wrong magnitude

•Does overflow occur for this case if this is an 8-bit system?

• Carry in sign different from carry out sign, a sign that overflow occurs.

Page 76: Number system utm notes

2’s Complement Overflow

Overflow

Overflow when carry in to sign does not equal carry out

Expected 0 1 1 1 Actual

+5 0 1 0 1

+ +3 0 0 1 1

+8 1 0 0 0 -8

Expected 1 0 0 0 Actual

-7 1 0 0 1

+ -2 1 1 1 0

-9 1 0 1 1 1 +7

Overflow

Expected 0 0 0 0 Actual

+5 0 1 0 1

+ +2 0 0 1 0

+7 0 1 1 1 +7

No Overflow

Expected 1 1 1 1 Actual

-3 1 1 0 1

+ -5 1 0 1 1

-8 1 1 0 0 0 -8

No Overflow

Page 77: Number system utm notes

• Add two positive numbers but get a negative

number

• or two negative numbers but get a positive

number

Overflow Condition

Page 78: Number system utm notes

Example Example

Add two numbers in two’s complement

representation: (-35) + (+20) � (-15)

Addition and Subtraction : 2’s Complement

Page 79: Number system utm notes

Example Example

Add two numbers in two’s complement

representation: (-35) + (+20) � (-15)

SolutionSolution

Carry 1 1 1

1 1 0 1 1 1 0 1

++ 0 0 0 1 0 1 0 0

----------------------------------

Result 1 1 1 1 0 0 0 1 � -15

Addition and Subtraction : 2’s Complement

Page 80: Number system utm notes

Overflow Condition

Example Example

Add two numbers in two’s complement

representation: (+127) + (+3) � (+130)

Page 81: Number system utm notes

Overflow Condition

Example Example

Add two numbers in two’s complement

representation: (+127) + (+3) � (+130)

SolutionSolution

Carry 1 1 1 1 1 1 1

0 1 1 1 1 1 1 1

++ 0 0 0 0 0 0 1 1

----------------------------------

Result 1 0 0 0 0 0 1 0 � --126 (Error)126 (Error)

An overflow has occurred. An overflow has occurred.