Week 15- Fetch Execute Cycle Work through the five tasks below, for each task write down the methods, results, any observations you made and a conclusion (however simple). At the end all the task, try writing an overall conclusion. Remember when writing the methods you can refer back to previous methods. Aims: To show the fetch execute-cycle in action At the end of the practical you should be able to: o Discuss what the fetch part of the fetch-execute cycle. o Discuss some of the factors that effects what happens during the execute portion of the cycle. o Discuss what the role of the control unit is. o Discuss what the parts of an instruction are. To practice documenting and drawing conclusions of experiments. Task 1 Open the jasper program You should see this on the screen Task 2 JASPer is simplified and stylised model of a processor, showing the key components in a processor. The black and white boxes are registers. Go to file openhello.jas Go to fileswitch state Go to processorgo What should have happened was you got the following screen. A box should have appeared that said ‘Processor halted at 000E’. Click ok and by going to fileswitch state go back to the earlier screen. This was an example of the running a program under this JASPer system. Task 3 Go to Processorregister and change the values till they look like those below and click ok: All numbers in the JASPer system are in Hexadecimal. Now go to processorfetch cycle and note what happens to the various boxes. You should see: The contents of the PC (program counter) get transferred to the MAR (Memory Address Register). The contents of the PC are changed by 1 Data is passed into memory and data is then passed into the Memory Data Register (MDR). What has been passed into memory and where does the data that was passed into memory come from? The contents of the MDR are passed to the Instruction Register (IR). Part of the data in the IR (the first two numbers) is passed into the control Unit (CU). The number that is passed in to the CU is called the opcode the rest of the number in the IR is the operand. What did you see have to the text in the CU after the opcode entered? Task 4 Now go to processorexecute cycle This performs the action for the instruction. Try repeating this action for the first instruction it should do the same thing (for this instruction) every time. In this case instruction puts the operand from IR into the Stack Pointer (SP). Task 5 (the even more difficult bit!) Go through the process of processorfetch cycle and then processorexecute cycle for two instructions. So for instruction MOVE #data,b after press processorexecute cycle what did the system do? The operand 20 (in hexadecimal) from the IR was copied to register b. So for instruction MOVE (b),a after press processorexecute cycle what did the system do? This one is a lot harder for this you need to know that putting something in brackets means the contents of memory location point to by what is in the bracket. So for example (0010) would mean the contents of memory 0010. In this case it means the memory location pointed to by register b which is 20 or 0020, so this instruction means copy the contents of memory location 0020 into register a. To see what is in the memory, go to memoryview. You should see that at memory location 0020, 0048 is stored, this is then copied into register a. Draw some conclusions about these two parts of the fetch-execute cycle.