Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Computer Systems 2009-2010 Week 7: Looping and Input/Output with 3-bit Alma Whitfield."— Presentation transcript:

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

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

3 3 Quick Quiz 2. How many bits can each memory location hold? a) 3 b) 8 c) 10 d) 16 Each location can hold one instruction. Each instruction is 8 bits long

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

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

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

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

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

9 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 10 Repetition and selection in 3-bit programs These next instructions provide these facilities JMP- repetition JEZ- repetition and selection

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

12 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 13 Repetition and selection in 3-bit programs An finite loop Demo jez.tbt

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

15 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 16 JEZ Given the following program...... what will happen?

17 17 We have now covered all eight instructions: the instruction set MnemonicBrief meaning 000STPhalt 001LDDload accumulator direct 010LDIload accumulator immediate 011STDstore accumulator direct 100ADDadd to accumulator 101SUBsubtract from accumulator 110JMPjump to next instruction 111JEZjump to next instruction if contents of accumulator is zero

18 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 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 20 Inputting and outputting data Outputting Data Inputting Data Using the hard disc Saving / Opening

21 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 22 Memory mapped locations Memory location addresses Purpose 18 - 25Display memory 26Sets display mode 27-28Network interface card 29Hard disc buffer 30Printer buffer 31Keyboard

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

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

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

26 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 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 28 STD 31? Memory Address 31 is mapped to an input device, what happens if you try STD 31? a) 3BIT will perform an illegal operation and close down b) Nothing will happen c) The value in the accumulator will be copied to address location 31 as normal d) 31 will be copied into the accumulator

29 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? a) Ask b) Use

30 30 Outputting: STD 30

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

32 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 33 LDD 30? Memory Address 30 is mapped to an output device, what happens if you try LDD 30? a) 3BIT will perform an illegal operation and close down b) Nothing will happen c) The value in the accumulator will be copied to address 30 d) The value in memory address 30 will be copied into the accumulator

34 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 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 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 37 STD 29? Memory Address 29 is mapped to an input device, what happens if you try STD 29? a) 3BIT will perform an illegal operation and close down b) Nothing will happen c) The value in the accumulator will be copied to address 29 as normal d) 29 will be copied into the accumulator

38 38 What ends up in the AC? 0 LDD 29 1 STD 30 2 STP 15 33 65 0 a) 29 b) 0 c) 15 d) 30 Data File

39 39 What about now? 0 LDD 29 1 STD 30 2 JEZ 4 3 JMP 0 4 STP a) 29 b) 0 c) 15 d) 30 15 33 65 0 Data File

40 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 41 3-bit is not so complicated?


Download ppt "Computer Systems 2009-2010 Week 7: Looping and Input/Output with 3-bit Alma Whitfield."

Similar presentations


Ads by Google