1 / 41

Computer Systems 2009-2010

Computer Systems 2009-2010. Week 7: Looping and Input/Output with 3-bit Alma Whitfield. 3 bits are available for the op-codes with which 8 different patterns of 0s and 1s are possible. Quick Quiz. 1. How many different instructions does 3-bit use? 3 8 10 16.

Download Presentation

Computer Systems 2009-2010

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Systems2009-2010 Week 7: Looping and Input/Output with 3-bit Alma Whitfield

  2. 3 bits are available for the op-codes with which 8 different patterns of 0s and 1s are possible Quick Quiz 1. How many different instructions does 3-bit use? • 3 • 8 • 10 • 16

  3. Each location can hold one instruction. Each instruction is 8 bits long Quick Quiz 2. How many bits can each memory location hold? • 3 • 8 • 10 • 16

  4. Abbreviation for operation code Quick Quiz 3. Each instruction is split into two sections, the first section is known as what? • The operand • The opinstruction • The op-code • The opexecute

  5. The part that identifies what the op-code is to act upon Quick Quiz 4. Each instruction is split into two sections, the second section is known as what? • The operand • The opinstruction • The op-code • The opexecute

  6. Quick Quiz 5. Which CPU register contains the address of the next instruction to be executed? • Accumulator • Instruction Register • Program Counter • Index Register

  7. Quick Quiz 5. Which CPU register contains values brought from memory and perhaps added to or subtracted from by ADD and SUB instructions? • Accumulator • Instruction Register • Program Counter • Index Register

  8. Quick Quiz 5. Which CPU register holds a copy of the instruction currently being executed? • Accumulator • Instruction Register • Program Counter • Index Register

  9. Repetition in 3-bit programs • The instructions considered so far are: • LDD • LDI • STD • ADD • SUB • None of these enable instructions to be executed repeatedly inside loops

  10. Repetition and selection in 3-bit programs • These next instructions provide these facilities • JMP - repetition • JEZ - repetition and selection

  11. Flow chart START ADD 16 Repetition in 3-bit programs • An infinite loop • Demo

  12. JMP • JMP is the Jump command. • It changes the sequence of execution of the program by changing the contents of the program counter to the address specified • E.g. JMP 10, will cause the next instruction to be fetched from location with address 10 instead of the next one after the current address

  13. Repetition and selection in 3-bit programs • An finite loop • Demo jez.tbt

  14. Repetition and selection in 3-bit programs Flow chart START LDD 16 SUB 17 STD 16 True AC = 0? False STP

  15. JEZ • JEZ is similar to JMP but it will only jump if the AC is equal to zero • Jump if Equal to Zero • Thus selection is determined by whether the accumulator contains zero • All computers make decisions by comparing numbers. 3-bit does it by comparing the number in the accumulator with zero

  16. JEZ • Given the following program ... • ... what will happen?

  17. We have now covered all eight instructions: the instruction set

  18. CPU • The CPUs processing power is measured with a clock speed. • The higher the speed the quicker the CPU will process instructions • MHz • GHz

  19. 3-bit and the clock speed • 3-bit has a clock speed too. • By default it is set to 0.3 Hz • 1 Hz is a frequency of one instruction per second • so 0.3 Hz means each instruction takes about 3 seconds • Very slow, this is deliberate so that you can see the instructions being executed • real computers can execute billions of instructions per second • The clock speed can be set to: • 0.2 Hz • 0.3 Hz • 10 Hz • 50 Hz

  20. Inputting and outputting data • Outputting Data • Inputting Data • Using the hard disc • Saving / Opening

  21. Memory mapped input and output • Input concerns getting data into the computer • Output concerns getting data/information out of the computer • 3-bit uses memory mapping to provide input and output • Input is achieved by reading from a specific memory locations • Output is achieved by writing to specific memory locations

  22. Memory mapped locations

  23. Today • Location 31 Keyboard • Location 30 Printer • Location 29 Disk Buffer

  24. Next Week • Location 18 – 25 Display memory • Location 26 Screen Mode

  25. Week after Next • Location 27 and 28 Network Interface Card

  26. Keyboard • LDD 31 will copy what is in address 31 to the accumulator. • 31 is mapped to an input device, in this case the keyboard

  27. LDD 31 • Effectively, LDD 31 will: • ask the user for a value • store the value in address 31 • copy the value from memory address 31 to the accumulator

  28. STD 31? Memory Address 31 is mapped to an input device, what happens if you try STD 31? • 3BIT will perform an illegal operation and close down • Nothing will happen • The value in the accumulator will be copied to address location 31 as normal • 31 will be copied into the accumulator

  29. LDD 31 If there is a value already present in location 31, will it still ask the user for input or will it use the value already there? • Ask • Use

  30. Outputting: STD 30

  31. Outputting: STD 30 • Use STD 30 to send the contents of the accumulator to the printer

  32. Outputting: STD 30 • Effectively, STD 30 will: • copy what is currently in the accumulator to memory address 30 • copy what is in memory address 30 to the printer This button will clear any output occurred

  33. LDD 30? Memory Address 30 is mapped to an output device, what happens if you try LDD 30? • 3BIT will perform an illegal operation and close down • Nothing will happen • The value in the accumulator will be copied to address 30 • The value in memory address 30 will be copied into the accumulator

  34. The Hard Disc Your 3-bit programs can be saved and loaded as required You can also edit and open data files Contents of the data file are shown in this window

  35. LDD 29 • Data file input memory is mapped to: • Location 29 • Data files work using positional pointers • For the purpose of 3-bit, the pointer starts at the beginning of the file and moves down one line each time data is fetched

  36. Data • LDD 29 • This will fetch data from the data file • Put the data into memory address 29 • Copy the value in location 29 into the accumulator

  37. STD 29? Memory Address 29 is mapped to an input device, what happens if you try STD 29? • 3BIT will perform an illegal operation and close down • Nothing will happen • The value in the accumulator will be copied to address 29 as normal • 29 will be copied into the accumulator

  38. What ends up in the AC? 0 LDD 29 1 STD 30 2 STP Data File 15 33 65 0 29 0 15 30

  39. What about now? 0 LDD 29 1 STD 30 2 JEZ 4 3 JMP 0 4 STP Data File 15 33 65 0 29 0 15 30

  40. What have we covered? • STD 30 sends to printer • LDD 31 gets data from keyboard • We can save programs to hard disc • We can load programs from hard disc • We can read a data file with LDD 29

  41. 3-bit is not so complicated?

More Related