ECE 331 – Digital System Design Number Systems and Conversion, Binary Arithmetic, and Representation of Negative Numbers (Lecture #9) The slides included herein were taken from the materials accompanying Fundamentals of Logic Design, 6 th Edition, by Roth and Kinney, and were used with permission from Cengage Learning.
42
Embed
ECE 331 – Digital System Design Number Systems and Conversion, Binary Arithmetic, and Representation of Negative Numbers (Lecture #9) The slides included.
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
ECE 331 – Digital System Design
Number Systems and Conversion,Binary Arithmetic,
andRepresentation of Negative Numbers
(Lecture #9)
The slides included herein were taken from the materials accompanying Fundamentals of Logic Design, 6th Edition, by Roth and Kinney,
and were used with permission from Cengage Learning.
Fall 2010 ECE 331 - Digital System Design 2
52
What does this number represent? Consider the “context” within which the number is used.
Fall 2010 ECE 331 - Digital System Design 3
1011001.101
What is the value of this number? Consider the base (or radix) of the number.
Fall 2010 ECE 331 - Digital System Design 4
Number Systems
Fall 2010 ECE 331 - Digital System Design 5
Number Systems
R is the radix or base of the number system Must be a positive number R digits in the number system: [0 .. R-1]
Important number systems for digital systems: Base 2 (binary): [0, 1] Base 8 (octal): [0 .. 7] Base 16 (hexadecimal): [0 .. 9, A, B, C, D, E,
F]
Fall 2010 ECE 331 - Digital System Design 6
Number Systems
Positional Notation
N = [a4a
3a
2a
1a
0.a
-1a
-2a
-3]
R
N = numeric valueai = ith position in the numberR = radix or base of the number
Fall 2010 ECE 331 - Digital System Design 7
Number Systems
Power Series Expansion
D = an x R4 + a
n-1 x R3 + … + a
0 x R0
+ a-1
x R-1 + a-2 x R-2 + … a
-m x R-m
D = decimal valueai = ith position in the numberR = radix or base of the number
Use repeated division to convert a decimal integer to any other base.
Conversion of a Decimal Integer
Fall 2010 ECE 331 - Digital System Design 13
Conversion of a Decimal Integer
Example:
Convert the decimal number 57 to a binary (R=2) number and an octal (R=8) number.
57 / 2 = 28: rem = 1 = a0
28 / 2 = 14: rem = 0 = a1
14 / 2 = 7: rem = 0 = a2
7 / 2 = 3: rem = 1 = a3
3 / 2 = 1: rem = 1 = a4
1 / 2 = 0: rem = 1 = a5
5710
= 1110012
57 / 8 = 7: rem = 1 = a0
7 / 8 = 0: rem = 7 = a1
5710
= 718
Fall 2010 ECE 331 - Digital System Design 14
Use repeated multiplication to convert a decimal fraction to any other base.
Conversion of a Decimal Fraction
Fall 2010 ECE 331 - Digital System Design 15
Conversion of a Decimal Fraction
Example:
Convert the decimal number 0.625 to a binary (R=2) number and an octal (R=8) number.
0.625 * 2 = 1.250: a-1 = 1
0.250 * 2 = 0.500: a-2 = 0
0.500 * 2 = 1.000: a-3 = 1
0.62510
= 0.1012
0.625 * 8 = 5.000: a0 = 5
0.62510
= 0.58
Fall 2010 ECE 331 - Digital System Design 16
Conversion of a Decimal Fraction
Example:
Convert the decimal number 0.7 to binary.
0.7 * 2 = 1.4: a-1 = 1
0.4 * 2 = 0.8: a-2 = 0
0.8 * 2 = 1.6: a-3 = 1
0.6 * 2 = 1.2: a-4 = 1
0.2 * 2 = 0.4: a-5 = 0
0.4 * 2 = 0.8: a-6 = 0
0.710
= 0.1 0110 0110 0110 ...2
process begins repeating here!
In some cases, conversion results in a repeating fraction.
Fall 2010 ECE 331 - Digital System Design 17
Conversion of a Mixed Decimal Number
Conversion of a mixed decimal number is implemented as follows:
Convert the integer part of the number using repeated division.
Convert the fractional part of the decimal number using repeated multiplication.
Combine the integer and fractional components in the new base.
Fall 2010 ECE 331 - Digital System Design 18
Conversion of a Mixed Decimal Number
Exercise:
Convert 48.562510
to binary.Confirm the results using the Power Series
Expansion.
Fall 2010 ECE 331 - Digital System Design 19
Conversion Conversion between any two bases, A and B,
can be carried out directly using repeated division and repeated multiplication.
Base A → Base B However, it is generally easier to convert base A
to its decimal equivalent and then convert the decimal value to base B.
Base A → Decimal → Base B
Power Series Expansion Repeated Division, Repeated Multiplication
Fall 2010 ECE 331 - Digital System Design 20
Conversion
Conversion between binary and octal can be carried out by inspection.
Each octal digit corresponds to 3 bits 101 110 010 . 011 001
2 = 5 6 2 . 3 1
8
010 011 100 . 101 0012 = 2 3 4 . 5 1
8
7 4 5 . 3 28 = 111 100 101 . 011 010
2
3 0 6 . 0 58 = 011 000 110 . 000 101
2
Is the number 392.248 a valid octal number?
Fall 2010 ECE 331 - Digital System Design 21
Conversion
Conversion between binary and hexadecimal can be carried out by inspection.
Each hexadecimal digit corresponds to 4 bits 1001 1010 0110 . 1011 0101
2 = 9 A 6 . B 5
16
1100 1011 1000 . 1110 01112 = C B 8 . E 7
16
E 9 4 . D 216
= 1110 1001 0100 . 1101 00102
1 C 7 . 8 F16
= 0001 1100 0111 . 1000 11112
Note that the hexadecimal number system requires additional characters to represent its 16 values.
Fall 2010 ECE 331 - Digital System Design 22
Number SystemsBase: 10 2 8 16
What is the value of 12?
Fall 2010 ECE 331 - Digital System Design 23
Binary Arithmetic
Fall 2010 ECE 331 - Digital System Design 24
Binary Addition
0 0 1 1+ 0 + 1 + 0 + 1 0 1 1 10
Sum Carry Sum
Fall 2010 ECE 331 - Digital System Design 25
Binary Addition
Examples:
01011011+ 01110010
00111100+ 10101010
10110101+ 01101100
Fall 2010 ECE 331 - Digital System Design 26
Binary Subtraction
0 10 1 1- 0 - 1 - 0 - 1 0 1 1 0
Difference
Borrow
Fall 2010 ECE 331 - Digital System Design 27
Binary Subtraction
Examples:
01110101- 00110010
00111100- 10101100
10110001- 01101100
Fall 2010 ECE 331 - Digital System Design 28
Binary Arithmetic
Single-bit Addition Single-bit Subtraction
s
0
1
1
0
c
0
0
0
1
x y
0
0
1
1
0
1
0
1
Carry Sum
d
0
1
1
0
x y
0
0
1
1
0
1
0
1
Difference
What logic function is this?
What logic function is this?
Fall 2010 ECE 331 - Digital System Design 29
Binary Multiplication
0 0 1 1x 0 x 1 x 0 x 1 0 0 0 1
Product
Fall 2010 ECE 331 - Digital System Design 30
Binary Multiplication
Examples:
0110x 1010
1011x 0110
1001x 1101
Fall 2010 ECE 331 - Digital System Design 31
When doing binary multiplication, a common way to avoid carries greater than 1 is to add in the partial products one at a time as illustrated by the following example:
00000 2nd partial product (01111) sum of first two partial products 111100 3rd partial product (1001011) sum after adding 3rd partial product (pp) 1111000 4th partial product 11000011 final product (sum after adding 4th pp)
Binary Multiplication
Fall 2010 ECE 331 - Digital System Design 32
Representation of Negative Numbers
Fall 2010 ECE 331 - Digital System Design 33
10011010
What is the value of this number? Is it positive or negative? If negative, what representation are we using?
Fall 2010 34
bn 1– b1 b0
Magnitude
MSB
(a) Unsigned number
bn 1– b1 b0
MagnitudeSign
(b) Signed number
bn 2–
0 denotes1 denotes
+– MSB
Unsigned and Signed Binary Numbers
Fall 2010 ECE 331 - Digital System Design 35
Unsigned Binary Numbers
For an n-bit unsigned binary number, all n bits are used to represent the
magnitude of the number.
** Cannot represent negative numbers.
Fall 2010 ECE 331 - Digital System Design 36
Unsigned Binary Numbers
For an n-bit binary number
0 <= D <= 2n – 1 where D = decimal equivalent value
For an 8-bit binary number: 0 <= D <= 28 – 1 28 = 256
For a 16-bit binary number: 0 <= D <= 216 – 1 216 = 65536
Fall 2010 ECE 331 - Digital System Design 37
Signed Binary Numbers
For an n-bit signed binary number, n-1 bits are used to represent the
magnitude of the number;
the leftmost bit (MSB) is, generally, used to indicate the sign of the number.
0 = positive number1 = negative number
Fall 2010 ECE 331 - Digital System Design 38
Signed Binary Numbers
Three representations for signed binary numbers:
1. Sign and Magnitude2. 1's Complement3. 2's Complement
Fall 2010 ECE 331 - Digital System Design 39
Sign and Magnitude
For an n-bit signed binary number, The MSB (leftmost bit) is the sign bit. The remaining n-1 bits represent the
magnitude.
- (2n-1 - 1) <= D <= + (2n-1 – 1) Includes a representation for -0 and +0.
The design of arithmetic circuits for Sign and Magnitude binary numbers is difficult.
Fall 2010 ECE 331 - Digital System Design 40
Sign and Magnitude
Example:
What is the Sign and Magnitude representation for the following decimal values, using 8 bits:
+ 97- 68
Fall 2010 ECE 331 - Digital System Design 41
Sign and Magnitude
Example:
Can the following decimal numbers be represented using 8-bit Sign and Magnitude representation?