Lecture 4: Number Systems (Chapter 3) (1) Data Types Section 3-1 (2) Complements Section 3-2 (3) Fixed Point Representations Section 3-3 (4) Floating Point Representations Section 3-4 (5) Other Binary Codes Section 3-5 (6) Error Detection Codes Section 3-6
22
Embed
Lecture 4: Number Systems (Chapter 3) (1) Data TypesSection3-1 (2) ComplementsSection3-2 (3) Fixed Point RepresentationsSection3-3 (4) Floating Point RepresentationsSection3-4.
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
Lecture 4: Number Systems (Chapter 3)
(1) Data Types Section 3-1
(2) Complements Section 3-2
(3) Fixed Point Representations Section 3-3
(4) Floating Point Representations Section 3-4
(5) Other Binary Codes Section 3-5
(6) Error Detection Codes Section 3-6
Data Types
Information that a Computer is dealing with:
DataNumeric Data
Numbers (Integer, real)Non-numeric Data
Letters, Symbols
Relationship between data elementsData Structures
Linear Lists, Trees, Rings, etc
Program (Instructions)
Data Types: Numeric Data Representation
Nonpositional number systemRoman number system
Positional number systemEach digit position has a value called a weight associated with itExamples: Decimal, Octal, Hexadecimal, Binary
Base (or radix) R numberUses R distinct symbols for each digit
Example A R = a n-1 a n-2 ... a 1 a 0 .a -1 …a -m
V(A R) = SUM (a k * R k) for k = -m to n-1
R = 10 Decimal number systemR = 2 BinaryR = 8 OctalR = 16 Hexadecimal
Data Types: Numeric Data Representation
Why a Positional Number System for Digital Computers???
Major Consideration is the COST and TIMECost of building hardware
Arithmetic and Logic Unit, CPU,CommunicationsTime to processing
Arithmetic - Addition of Numbers - Table for AdditionNon-positional Number System
Table for addition is infinite--> Impossible to build, very expensive even if it can be built
Positional Number SystemTable for Addition is finite--> Physically realizable, but cost wise the smaller the table size, the less expensive--> Binary is favorable to Decimal
Unsigned binary numbers are typically used to represent computer addresses or other values that are guaranteed not to be negative.
An n-bit unsigned binary integer A = an-1 an-2... a1 a0
has a value of
For example,
1011 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20
= 8 + 2 + 1 = 11
An n-bit unsigned binary integer has a range from 0 to 2n - 1.
Positive (Unsigned) Binary Numbers
ii
n
i
a 21
0
Octal and Hexadecimal Numbers
Octal, base-8, numbers were used in the early days of computing to represent binary numbers
Octal numbers are made by grouping binary numbers together three bits at a time
Hexadecimal, base-16, numbers are the representation of choice today
Hex numbers are made by grouping binary numbers together four bits at a time
Sign-extension is used for signed immediates and signed values from memory
To sign-extend an n bit number to n+m bits, copy the sign-bit m times.
For example, with n = 4 and m = 4,
1011 = -4 0101 = 5
11111011 = -4 00000101 = 5
Zero-extension is used for logical operations and unsigned values from memory
To zero-extend an n bit number to n+m bits, copy zero m times.
For example, with n = 4 and m = 4,
1011 = 11 0101 = 5
00001011 = 11 00000101 = 5
Floating Point Number Representation
The location of the fractional point is not fixed to a certain location
--> The range of the representable numbers is wide
--> high precision
F = EM
m n e k e k-1 ... e 0 m n-1 m n-2 ... m 0 . m -1 ... m -m
sign exponent mantissa
Mantissa
Signed fixed point number, either an integer or a fractional number
Exponent
Designates the position of the radix point
Floating Point Number Representation
Decimal Value:
V = M * R E
Where: M= Mantissa
E= Exponent
R= Radix (10)
Example (decimal):
1234.5678
Exponent Mantissa
Sign Value Sign Value
0 4 0 0.12345678
==> 0.12345678 x 10 +4
Floating Point Number Representation
Example (binary):
+ 1001.11 (= 9.75)
Make a fractional number, counting the number of shifts:
+ .100111 ==> 4 shifts
Exponent Mantissa
Sign Value Sign Value
0 100 0 1001111
Or for a 16-bit number with a sign, 5-bit exponent, 10-bit mantissa:
0 00100 1001111000
Other Representations- Gray Codes
Characterized by having their representations of the binary integers different in only one digit between consecutive integers
Useful in analog-digital conversion.
Decimal Gray Binary Decimal Gray Binary
0 0 0 0 0 0 0 0 0 8 1 1 0 0 1 0 0 0
1 0 0 0 1 0 0 0 1 9 1 1 0 1 1 0 0 1
2 0 0 1 1 0 0 1 0 10 1 1 1 1 1 0 1 0
3 0 0 1 0 0 0 1 1 11 1 1 1 0 1 0 1 1
4 0 1 1 0 0 1 0 0 12 1 0 1 0 1 1 0 0
5 0 1 1 1 0 1 0 1 13 1 0 1 1 1 1 0 1
6 0 1 0 1 0 1 1 0 14 1 0 0 1 1 1 1 0
7 0 1 0 0 0 1 1 1 15 1 0 0 0 1 1 1 1
Other Representations- ASCII Characters
4MSBs3LSBs 0 1 1 3 4 5 6 70 (hex) NUL DLE SP 0 @ P ‘ p1 SOH DC1 ! 1 A Q a q 2 STX DC2 " 2 B R b r3 ETX DC3 # 3 C S c s4 EOT DC4 $ 4 D T d t5 ENQ NAK % 5 E U e u6 ACK SYN & 6 F V f v7 BEL ETB ’ 7 G W g w8 BS CAN ( 8 H X h x9 HT EM ) 9 I Y i yA LF SUB * : J Z j zB VT ESC + ; K [ k {C FF FS , < L \ l |D CR GS - = M ] m }E SO RS . > N ^ n ~F SI US / ? O _ o DEL
Error Detecting Codes- Parity
Parity SystemSimplest method for error detectionOne parity bit attached to the informationEven Parity and Odd Parity
Even ParityOne bit is attached to the information so that the total number of 1 bits is an even number
1011001 01010010 1 ==> B even = B n-1 (+) B n-2 (+) … B 0
Odd ParityOne bit is attached to the information so that the total number
of 1 bits is an odd number1011001 11010010 0 ==> B odd = B n-1 (+) B n-2 (+) … B 0 (+) 1