Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Information Processing Session 5B Binary Arithmetic Slide 000001 Objectives After studying this week’s work, you should: gain insight into how the processor deals with information at the bit level Understand numbers written in binary form Be able to convert numbers from binary to decimal notation and vice-versa Be able to add numbers in binary form Slide 000010 Bits A bit is the smallest piece of information in the computer At a single location, the information is either ON One - current is ON Zero - current is OFF OFF There are no in-between states Slide 000011 Bytes The way that information is coded is to use a sequence of zeros and ones It is usual to have a sequence of 8 bits collected together This is called a byte 10110101 Slide 000100 Bits and Bytes Depending upon the design of the computer, there could be 4, 8 16, 32, 64 (or even more!) bits processed by the computer at once For the next few slides we will look at a simple 4-bit device. Slide 000101 A 4-bit register Reading from the right, each bit is worth double the one preceding it. The sequence, reading from the right is: 1,2,4,8, ... If we had more bits, it would continue: ... 16, 32, 64, etc. 8 4 2 1 4 1 is ON is ON Slide 000110 Binary Numbers The register shown on the right represents the binary number 0101 This has ones in the 1 and 4 cells, and zeroes in the others. The number represented is 5 8 4 2 1 0101 4 1 4+1 = 5 Slide 000111 Counting in Binary Counting is an automatic process Follow the sequence... Slide 001000 Counting in Binary A pulse enters on the right Slide 001001 Counting in Binary To begin with the first cell was OFF It is flipped to ON Slide 001010 Counting in Binary Another pulse enters on the right Slide 001011 Counting in Binary The first cell was ON. It is flipped to OFF The pulse moves to the next cell on the left Slide 001100 Counting in Binary The next cell on the left was OFF That cell is flipped to ON Slide 001101 Counting in Binary Another pulse enters from the right Slide 001110 Counting in Binary The first cell was OFF It is flipped to ON Slide 001111 Counting in Binary Another pulse enters from the right Slide 010000 Counting in Binary The first cell was ON, and is flipped to OFF The pulse moves to the second cell Slide 010001 Counting in Binary The second cell was ON, and is flipped to OFF the pulse moves to the third cell Slide 010010 Counting in Binary The third cell was OFF and is flipped to ON Slide 010011 Counting in Binary 0001 0010 Follow the sequence on the right, and try to continue it. you will see that the switching creates a pattern off ON/OFF in each column 0011 0100 0101 0110 Slide 010100 Counting in Binary The 1’s column alternates 1,0,1,0 etc. The 2’s column starts at 2 and alternates two 1’s, two 0’s The 4’s column starts at 4, and alternates four 1’s, four 0’s The 8’s column starts at 8 and alternates eight 1’s eight 0’s 0001 0010 0011 0100 0101 0110 Slide 010101 Decimal Numbers By decimal, we simply mean that the numbers are written in powers of ten These are 1, 10, 100, 1000, etc. So that: 100 352 = 300 + 50 + 2 10 1 3 5 2 Slide 010110 Binary Numbers By Binary, we mean that numbers are written in powers of two These are 1, 2, 4, 8, 16 etc. So that: 16 8 4 1 0 1 10100 = Which is 16 + 4 = 20 2 1 0 0 Slide 010111 Converting Binary to Decimal Example: 101101 Reading from right to left the columns are 1,2,4,8 etc. i.e. 32 1 16 0 8 1 4 1 2 0 1 1 So the number in decimal notation is: 32 + 8 + 4 + 1 = 45 Slide 011000 How do we convert Decimal to Binary? There is a specific technique which allows us to do this. It involves repeatedly dividing a number by two and noting the remainder. Slide 011001 Converting Decimal to Binary: An example Convert 117 to binary: 117÷ 2 = 58 remainder 58 ÷ 2 = 29 remainder 29 ÷ 2 = 14 remainder 14 ÷ 2 = 7 remainder 7 ÷ 2 = 3 remainder 3 ÷ 2 = 1 remainder 1 ÷ 2 = 0 remainder 1 0 1 0 1 1 1 In binary the number is: 1110101 Slide 011010 Adding In Binary Addition in binary is a direct counterpart of what happens at the processor level. First of all we will look at a numerical example Slide 011011 Adding in Binary There are only four possible combinations. The first three are “obvious” The last one is special (remember 1 + 1 = 2, which is 10 in binary) 0+0=0 0+1=1 1+0=1 1 + 1 = 0, carry 1 Slide 011100 Adding in Binary Adding 10111 + 11101 0 1 1+1=2 This is 10 in Binary Put 0 in the answer, carry 1 Slide 011101 Adding in Binary Adding 10111+ 11101 00 1 1 1 + 0 + 1= 2 This is 10 in Binary Put 0 in the answer, carry 1 Slide 011110 Adding in Binary Adding 10111+ 11101 100 1 1 1 1 + 1 + 1= 3 This is 11 in Binary Put 1 in the answer, carry 1 Slide 011111 Adding in Binary Adding 10101+ 11101 100 1 1 1 Carry on with this… Slide 100000 Adding in Binary The answer: 10111+ 11101 110100 1 1 1 1 1 Slide 100001 The Binary Adder We will add 0011 0110 (3) (6) Slide 100010 The Binary Adder Starting with the end column, top cell is ON This pulse enters into the bottom cell Slide 100011 The Binary Adder The bottom cell was OFF The pulse causes it to flip to ON Slide 100100 The Binary Adder The next top cell was ON The pulse enters into the bottom cell Slide 100101 The Binary Adder The bottom cell was ON The pulse flips it to OFF The pulse moves to the next cell Slide 100110 The Binary Adder The next cell is ON The pulse flips it to OFF The pulse moves to the next cell Slide 100111 The Binary Adder The next cell is OFF The pulse flips it to ON Slide 101000 The Binary Adder The bottom line now reads: 1001 This is 8 + 1= 9 Slide 101001 Bits and Bytes We have seen that a 4-bit register can count from 0 to 15 [0000] [1111] This means that it has 16 different states. Slide 101010 Bits and Bytes Each bit in the register can be ON or OFF. This means that there are two possibilities for each cell That is, altogether 2x2x2x2 = 16 states 2 2 2 2 2 x 2 x 2 x 2 = 24 Slide 101011 Bits and Bytes The number of possible states of registers of other sizes can be worked out in the same way For example an 8-bit register (byte) has 2x2x2x2x2x2x2x2= 28 = 256 different states. Bits States 1 2 4 8 16 32 2 4 16 256 65,536 4,294,987,296 Slide 101100 Megabits and Kilobytes A Kilobyte is 210 bytes. This is the nearest power of two to 1000. In fact 210 = 1024 A megabit is 220 bits. This is the nearest power of 2 to 1 million. In fact 220 = 1048576 Slide 101101 Other Bases Decimal and Binary are two different number bases used by the computer, but there are others An important one is Hexadecimal which has 16 separate characters: 0,1,2,3,4,5,6,7, 8,9,A,B,C,D,E,F Slide 101110 Hexadecimal The extra letters are so that the numbers 10-15 can be written using one character each. This means that A8BC is a number written in Hexadecimal. These numbers are written in base 16, so that a number like 9E means the 9 is 9 x 16 = 144 the E is 14 x 1 = 14 Altogether this would be 158 Dec 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hex 0 1 2 3 4 5 6 7 8 9 A B C D E F Slide 101111 Summary A bit has two states, ON or OFF, which means that at the core of a computer we need to use binary coding of numbers (powers of two) Registers count and add using in binary code There are algorithms for converting decimal to binary and vice-versa Binary addition has only four possible addition pairs, and a “carrying rule” Slide 110000