Sistem Bilangan Oleh : Mukhlidi Muskhir
Analogue vs Digital Analogue
* Continuous range of value * Precision limited by Noise Digital * Discrete range of values * Precision limited by number of “Bit”
Analogue vs Digital
Analogue
Digital
Analogue vs Digital The
real world is analogue ( by because all signal in world be shape analogue) But in controlling, Digital one had using for process. Both of signal had been converter each other
Analoge vs Digital
Analogue
A to D
Digital Processing
D to A
Analogue
Why Digital Only by using in Processing? ^ Adventure in integrated Circuit has made the complex processing of digital data. ^ Digital Control processing has made easier than analogue ^ Digital circuits are inherently more noise resistant
Digital and Boolean Digital
represented by boolean logic Boolean is the name of mathematician’s expert Now boolean is called by conventional logic because there is new logic that called by fuzzy logic But all electronic still using boolean logic to processing the controlling system
Why Boolean
It is convenient in electrical system to use a two-value system to represent value true/false, on/off, yes/no and 1/0 * Two voltage or current levels can be used * Easier to process and distribute reliably (diandalakan) * Don’t think of them as numbers (even though we often represent them as 0/1 for brevity(ketangkasan)) The need for binary numbers * Multi-value quantities need to be represented in the digital system. Therefore need numbers made up from the simple two value system
Positional Number System Decimal point
7x10-1 7x10-2 8x10-3
3578.778
Base 10, weigthing are powers of 10
8 x 100 7 x 101 5 x 102 3 x 103
Unsigned binary numbers Binary point
1 x 2-1 = 0.500 0 x 2-2 = 0.000 1 x 2-3 = 0.125
1100.101 Each bit of the Number may be Representaed by A Boolean value
0 x 20= 0.000 0 x 21= 0.000 1 x 22= 4.000 3 Binary, weightings are powers of 21 x 2 = 8.000
Multi-precision Arithmatic Additional of A and B A1
B1
A2
B2 +
A2 Carry Flag
Carry Out
B3 Carry In
Carry Flag
Carry Out
Multi-precision Arithmatic Carry Out
Carry Flag
Carry In
A1
B1
A2
B2 -
A2
B3
Hexadecimal Numbers 660
4
41
9
: 16 : 16
2 Hexadecimal :
294 Hex 13
215 7
Hexadecimal :
7D Hex
: 16
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 A B C D E F
Hexadecimal Numbers 660
0010 1001 0100
2
215
9
4
0000 1101 0111
0
D
7
0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Decimal to Binary Number =
36.375
Base =
2
Decimal Number
Binary Digits
Generetee each digit by successive division Or multiplication. Converter Number
0
0
0100100.0110
0.5
1
0100100.011
0.75
1
0100100.01
0.375
0
0100100.0
36
0
0100100
18
0
010010
9
1
01001
4
0
0100
2
0
010
1
1
01
0
0
0
There is no guarantee the fraction will be finite Fractional part – Multiplication by base
Whole part – divition by base
Binary Additional
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 carry 1
Easy Layaou ?
Binary Addition 190 + 141 =331 Carry out of Each column 1
1 1 1 1
1 0 1 1 1 1 1 0 1 0 0 0 1 1 0 1 1
Carry out of 8-bit number
0 1 0 0 1 0 1 1
Binary Subtraction A borrow-out of 1 from This column becomes a borrow in of 2 in this column
229 – 46 = 183 2
2
2 2
2
1
1
1
0
0
1
0
1
0
0
1
0
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
0
Both rows subtracted
Borrow in from Left column
Borrow out
Exercise Convert
to 8-bit binary and do the arithmetic operation * 120 + 54 * 110 + 100 * 224 – 134 * 200 + 20 * 112 – 89 * 111 – 25 Convert back to decimal and check the result
Binary Number Circle In real hardware there is a fixed number Of bits available. We often ignore leading zeros But they are still there! Examlpe : If we only use 4 bits then the binary Counting sequence “wraps around” At 15 ↔ 0 11 - 1 = 10
11 -1
1110 1 10
1010
4 – bit Binary Number Circle
Binary Number Circle Subtracting across the boundary Still “works” if you think of result As the distance on the number Circle. (Module arithmetic – ignore The borrow /carry)
8 - 14
1000 - 1110 10
(-1)1010
4 – bit Binary Number Circle
Representing –ve Number Several
choices for natation * sign + magnitude notation * 1’s complement * 2’s complement notation * various ‘excess codes ‘
Sign Number – sign + magnitude Notation Sign Bit
Magnitude
0 +ve
Simple binary number
1 - ve How about Null or Zero
Problem + 0 0000 - 0 1000
?
Signed Numbers – Sign + magnitude Notation Arithmetic Difficult to do – have to work out that operation to perform 5 + -6 actually calculate –(6-5) i.e. exchange the operands and do subtraction! -5+ -6 actually calculate –(5+6) i.e. negate the addition of the negated numbers ! Required action depends the signs of the numbers and on which has the large magnitude. Natural for us –a bit hard for the computer since the only way it can work out the bigger number is to do a subtraction!
Sign + Magnitude Examples Value
4-bit sign + magnitude
8-bit sign + magnitude
+7
0111
00000111
+6
0110
00000110
……
……
……
+1
0001
00000001
+0
0000
00000000
-0
1000
10000000
-1
1001
10000001
-2
1010
10000010
……
……
……
-7
1111
10000111
Sign Numbers – 2’s Complement As
for straight binary numbers but with the weighting of the most significant bit being negative Example * 4 bit – weights are -8, 4,2,1 * 8 bit – weights are -128, 64,32,16,8,4,2,1 Need to know how many bits are being used to work out the value of the number – don’t omit leading zeroes
Sign Numbers – 2’s Complement Binary point
1 x 2-1 = 0.500 0 x 2-2 = 0.000 1 x 2-3 = 0.125
1100.101 Sign Bit
0 x 20= 0.000 0 x 21= 0.000 1 x 22= -4.375 4.000 3 Binary, weightings are powers of 21 x 2 = -8.000
2’s Complement Examples Value
4-bit sign 2’s complement
8-bit sign complement
+7
0111
00000111
+6
0110
00000110
……
……
……
+1
0001
00000001
+0
0000
00000000
-1
1111
11111111
-2
1110
11111110
……
……
……
-7
1001
11111001
-8
1000
11111000
2’s Complement Examples Example : -4 (decimal) Become 4 = 0100 ( binary) = 1x22 = 4 2’s Complement -4= 1100 (binary) = -(23) + 22 = -8 + 4 = -4
Exercise Converse decimal number above into negative (2’s complement) : 1. -7 ( 4 digit ) 6. 6 (4 digit) 2. -7 (8 digit) 7. 10 (8 digit) 3. -12 (8 digit) 8. 30 (8 digit) 4. -20 (8 digit) 9. 98 (digit) 5. -100 (8 digit) 10. 126 (digit)
Addition 2’s Complement For 4 digit : 4 3 + 7
0100 0011 0111
+
22+21+20 = 4+2+1 =7
Addition 2’s Complement For 4 digit -1 -2 -3
+
1111 1110 11101
+
Carryout
-(8)+4 +0 + 1 = -3
Exercise For 4 Digit : 1. 7 + (-5) 2. -6 + -1 3. 3 + 4 4. 2 + 3 5. -4 + 7 Converse all item to digital and addition. And then Converse to decimal again
Subtraction 2’s Complement +7 + 3 (0011)+4
Discard
0111 1101 + 10100
Subtraction 2’s Complement (-8) (-3) = 1101 -5
1000 0011 + 1011
Exercise for 4 digit . Converse decimal above to digit and subtraction. After that converse to decimal again : 1. (+3) – (-3) 2. (-4) – (+2) 3. (-8)- (+4) 4. (-3) – (-4) 5. (7) – (5)
2’s Complement ALU
Addition and subtraction use the same rules as unsigned binary. Same hardware may be used for both Carry (C) is used for unsigned, overflow (v) for signed Signed Numbers
Signed Numbers
The same hardware
OP
OP
C=Carry C=Carry
V=overflow Signed Numbers
Signed Numbers
Arithmetic Flags in Condition code register (CCR)
V=overflow