Study Material For Lecture 3

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Lecture 03: SIGNED AND UNSIGNED BINARY

NUMBER REPRESENTATION
PROF. INDRANIL SENGUPTA
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Why are Binary Numbers Important?
• We implement circuits using electronic components like transistors.
– A transistor acts like a switch: either conducting (ON) or non-conducting (OFF).
– There are billions of such miniature switches in modern-day VLSI chips.
• A switch can represent two states.
– Binary number system also has two digits, 0 and 1.
– We can follow some convention:
• Open switch represents 0, closed switch represents 1.
• Low voltage represents 0, high voltage represents 1.
• Absence of current represents 0, flow of current represents 1.
• Absence of light represents 0, presence of light represents 1.

Switching Circuits & Logic Design 2


• We concentrate on binary numbers in this course.
• Some conventions followed:
– Bit: single binary digit (0 or 1)
– Nibble: collection of 4 bits
– Byte: collection of 8 bits
– Word: collection of 16/32/64 bits

Switching Circuits & Logic Design 3


Representing Numbers in Binary
• How many distinct numbers can be represented in n bits?
– Each bit can be in one of two states.
– Total number of possible combinations:
2 x 2 x …. to n terms = 2n
• Numbers can be either unsigned or signed:
– An unsigned number has only a magnitude, bit no sign.
– A signed number has both a magnitude and also a sign (positive or negative).

Switching Circuits & Logic Design 4


Unsigned Binary Numbers
• An n-bit binary number can have 2n distinct combinations.
– Minimum: 0, Maximum: 2n – 1.
– For example, for n=3, the 8 distinct combinations are:
000, 001, 010, 011, 100, 101, 110, 111 (0 to 23-1 = 7 in decimal).

Number of bits (n) Range of Numbers


8 0 to 28-1 (255)
16 0 to 216-1 (65,535)
32 0 to 232-1 (4,294,967,295)
64 0 to 264-1

Switching Circuits & Logic Design


5
• An n-bit binary integer:
bn-1bn-2 … b2b1b0

• Equivalent unsigned decimal value:


D = bn-12n-1 + bn-22n-2 + … + b222 + b121 + b020
• Each digit position has a weight that is some power of 2.

Switching Circuits & Logic Design


6
Decimal Unsigned Decimal Unsigned
Unsigned Number binary binary
Representation in +0 0000 +8 1000
4 Bits +1 0001 +9 1001
+2 0010 +10 1010
+3 0011 +11 1011
+4 0100 +12 1100
+5 0101 +13 1101
+6 0110 +14 1110
+7 0111 +15 1111

Switching Circuits & Logic Design 7


Signed Integer Representation
• Many of the numerical data items that we use are signed
(positive or negative).
– Question:: How to represent sign?
• Three possible approaches:
a) Sign-magnitude representation
b) One’s complement representation
c) Two’s complement representation

Switching Circuits & Logic Design 8


(a) Sign-magnitude Representation
• For an n-bit number representation:
– The most significant bit (MSB) indicates sign (0: positive, 1: negative).
– The remaining (n-1) bits represent the magnitude of the number.
• Range of numbers: – (2n-1 – 1) to + (2n-1 – 1)

bn-1 bn-2 b1 b0
Sign Magnitude
• A problem: Two different representations for zero.
+0: 0 00..000 and -0: 1 00..000

Switching Circuits & Logic Design 9


Decimal Unsigned Decimal Unsigned
Sign-Magnitude binary binary
Number +0 0000 -0 1000
Representation in 4 +1 0001 -1 1001
Bits
+2 0010 -2 1010
+3 0011 -3 1011
+4 0100 -4 1100
+5 0101 -5 1101
+6 0110 -6 1110
+7 0111 -7 1111

Switching Circuits & Logic Design 10


(b) Ones Complement Representation

• Basic idea:
– Positive numbers are represented exactly as in sign-magnitude form.
– Negative numbers are represented in 1’s complement form.
• How to compute the 1’s complement of a number?
– Complement every bit of the number (1 to 0, and 0 to 1).
– Most Significant Bit (MSB) will indicate the sign of the number (0: positive, 1:
negative).

Switching Circuits & Logic Design 11


Example for n=4
Decimal 1’s Decimal 1’s
complement complement
To find the representation of,
+0 0000 -7 1000
say, -4, first note that
+1 0001 -6 1001
+2 0010 -5 1010 +4 = 0100
+3 0011 -4 1011 -4 = 1’s complement of
+4 0100 -3 1100 0100 = 1011
+5 0101 -2 1101
+6 0110 -1 1110
+7 0111 -0 1111

Switching Circuits & Logic Design 12


• Range of numbers that can be represented in 1’s complement:
Maximum :: + (2n-1 – 1)
Minimum ::  (2n-1 – 1)
• A problem (same as in sign magnitude):
Two different representations of zero.
+0  0 000….0
-0  1 111….1
• Advantage of 1’s complement representation:
– Subtraction can be done using addition.
– Leads to substantial saving in circuitry.

Switching Circuits & Logic Design 13


(c) Twos Complement Representation
• Basic idea:
– Positive numbers are represented exactly as in sign-magnitude form.
– Negative numbers are represented in 2’s complement form.
• How to compute the 2’s complement of a number?
– Complement every bit of the number (1 to 0 and 0 to 1), and then add one to
the resulting number.
– MSB will indicate the sign of the number (0: positive, 1: negative).

Switching Circuits & Logic Design 14


Example for n=4
Decimal 2’s Decimal 2’s
complement complement
To find the representation of,
+0 0000 -8 1000
say, -4, first note that
+1 0001 -7 1001
+2 0010 -6 1010 +4 = 0100
+3 0011 -5 1011 -4 = 2’s complement of
+4 0100 -4 1100 0100 = 1011 + 1
= 1100
+5 0101 -3 1101
+6 0110 -2 1110
+7 0111 -1 1111

Switching Circuits & Logic Design 15


• Range of numbers that can be represented in 2’s complement:
Maximum :: + (2n-1 – 1)
Minimum ::  2n-1
• Advantage of 2’s complement representation:
– Unique representation of zero.
– Subtraction can be done using addition.
– Leads to substantial saving in circuitry.
• Almost all computers today use 2’s complement representation for storing
negative numbers.

Switching Circuits & Logic Design 16


• Some other features of 2’s complement representation
a) Weighted number representation, with the MSB having weight -2n-1.
-2n-1 2n-2 21 20
bn-1 bn-2 b1 b0
D = -bn-12n-1 + bn-22n-2 + … + b222 + b121 + b020
b) Shift left by k positions with zero padding multiplies the number by 2k.

00010011 = +19 :: Shift left by 2 :: 01001100 = +76

11100011 = -29 :: Shift left by 2 :: 10001100 = -116

Switching Circuits & Logic Design 17


c) Shift right by k positions with sign bit padding divides the number by 2k.

00010110 = +22 :: Shift right by 2 :: 00000101 = +5

11100100 = -28 :: Shift right by 2 :: 11111001 = -7

d) The sign bit can be copied as many times as required in the beginning to extend
the size of the number (called sign extension).

X = 00101111 (8-bit number, value = +47) X = 10100011 (8-bit number, value = -93)
Sign extend to 32 bits: Sign extend to 32 bits:
00000000 00000000 00000000 00101111 11111111 11111111 11111111 10100011

Switching Circuits & Logic Design 18


END OF LECTURE 03

Switching Circuits & Logic Design 19

You might also like