Sistem Bilangan Oleh : Sri Heranurweni
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 Analogue Digital Processing D to A A to D 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 8 x 100 7 x 101 5 x 102 3 x 103 3578.778 Base 10, weigthing are powers of 10
Unsigned binary numbers Binary point 1 x 2-1 = 0.500 0 x 2-2 = 0.000 1 x 2-3 = 0.125 0 x 20= 0.000 0 x 21= 0.000 1 x 22= 4.000 1 x 23= 8.000 1100.101 Each bit of the Number may be Representaed by A Boolean value Binary, weightings are powers of 2
Multi-precision Arithmatic Additional of A and B A1 B1 A2 B2 + B3 Carry Flag Out In
Multi-precision Arithmatic Carry Flag Carry Out Carry In A1 B1 A2 B2 - A2 B3
Hexadecimal Numbers 660 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 A B C D E F 4 : 16 41 9 : 16 2 Hexadecimal : 294 Hex 215 13 : 16 7 Hexadecimal : 7D Hex
Hexadecimal Numbers 660 215 1 2 3 4 5 6 7 8 9 A B C D E F 0000 0001 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 660 0010 1001 0100 2 9 4 215 0000 1101 0111 0 D 7
Decimal to Binary Generetee each digit by successive division Or multiplication. There is no guarantee the fraction will be finite Number = 36.375 Base = 2 Decimal Number Binary Digits Converter Number 0100100.0110 0.5 1 0100100.011 0.75 0100100.01 0.375 0100100.0 36 0100100 18 010010 9 01001 4 0100 010 01 Fractional part – Multiplication by base Whole part – divition by base
Binary Additional Easy Layaou ? 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 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 1 1 1 1 Carry out of 8-bit number
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 Borrow in from Left column 0 0 1 0 1 1 1 0 1 1 1 1 1 Borrow out 1 1 1 1 1 1 Both rows subtracted
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 4 – bit Binary Number Circle 11 1110 - 1 1 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 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 – bit Binary Number Circle 11 1110 - 1 1 10 1010
Binary Number Circle 4 – bit Binary Number Circle 8 1000 - 14 - 1110 Subtracting across the boundary Still “works” if you think of result As the distance on the number Circle. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 – bit Binary Number Circle (Module arithmetic – ignore The borrow /carry) 8 1000 - 14 - 1110 10 (-1)1010
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 0 x 20= 0.000 0 x 21= 0.000 1 x 22= 4.000 1 x 23= -8.000 1100.101 Sign Bit -4.375 Binary, weightings are powers of 2
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) : -7 ( 4 digit ) 6. 6 (4 digit) -7 (8 digit) 7. 10 (8 digit) -12 (8 digit) 8. 30 (8 digit) -20 (8 digit) 9. 98 (digit) -100 (8 digit) 10. 126 (digit)
Addition 2’s Complement For 4 digit : 4 0100 3 + 0011 + 7 0111 22+21+20 = 4+2+1 =7
Addition 2’s Complement For 4 digit -1 1111 -2 + 1110 + -3 11101 -(8)+4 +0 + 1 = -3 Carry out
Exercise For 4 Digit : 7 + (-5) -6 + -1 3 + 4 2 + 3 -4 + 7 Converse all item to digital and addition. And then Converse to decimal again
Subtraction 2’s Complement + 7 0111 + 3 (0011)- 1101 + +4 10100 Discard
Subtraction 2’s Complement (-8) 1000 (-3) = 1101 - 0011 + -5 1011
Exercise for 4 digit . Converse decimal above to digit and subtraction. After that converse to decimal again : (+3) – (-3) (-4) – (+2) (-8)- (+4) (-3) – (-4) (7) – (5)
Condition code register (CCR) 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 C=Carry V=overflow OP Signed Numbers Signed Numbers The same hardware OP C=Carry Signed Numbers V=overflow Arithmetic Flags in Condition code register (CCR)