
Concept explainers
Explanation of Solution
Trace out for given “Example 4.3”:
Tracing the program is the process of documenting the state of the various aspects of the execution of the program over assembly instruction. Every instruction has the process like fetch, store, and decode which are used to determine the desired outcome to execute the program.
This tracing has address, label, instruction, RTN, and values of each registers. The trace out for given code “example 4.3” is as follows:
Instruction: Load X
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 100 | - | - | - | - | |
Fetch | MARßPC | 100 | - | 100 | - | - |
IRßM[MAR] | 100 | 110C | 100 | - | - | |
PCßPC+1 | 101 | 110C | 100 | - | - | |
Decode | MARßIR[11-0] | 101 | 110C | 10C | - | - |
(Decode IR[15-12] | 101 | 110C | 10C | - | - | |
Get operand | MBRßM[MAR] | 101 | 110C | 10C | 000C | - |
Execute | ACßAC-MBR | 101 | 110C | 10C | 000C | 000C |
Instruction: Subt Y
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 101 | 110C | 10C | 000C | 000C | |
Fetch | MARßPC | 101 | 110C | 101 | 000C | 000C |
IRßM[MAR] | 101 | 410D | 101 | 000C | 000C | |
PCßPC+1 | 102 | 410D | 101 | 000C | 000C | |
Decode | MARßIR[11-0] | 102 | 410D | 101 | 000C | 000C |
(Decode IR[15-12] | 102 | 410D | 10D | 000C | 000C | |
Get operand | MBRßM[MAR] | 102 | 410D | 10D | 0014 | 000C |
Execute | ACßAC-MBR | 102 | 410D | 10D | 0014 | FFF8 |
Instruction: Skipcond 400
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 102 | 410D | 10D | 0014 | FFF8 | |
Fetch | MARßPC | 102 | 410D | 102 | 0014 | FFF8 |
IRßM[MAR] | 102 | 8400 | 102 | 0014 | FFF8 | |
PCßPC+1 | 103 | 8400 | 102 | 0014 | FFF8 | |
Decode | MARßIR[11-0] | 103 | 8400 | 400 | 0014 | FFF8 |
(Decode IR[15-12] | 103 | 8400 | 400 | 0014 | FFF8 | |
Get operand | Not necessary | 103 | 8400 | 400 | 0014 | FFF8 |
Execute | Do nothing | 103 | 8400 | 400 | 0014 | FFF8 |
Instruction: Jump Else
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 103 | 8400 | 400 | 0014 | FFF8 | |
Fetch | MARßPC | 103 | 8400 | 103 | 0014 | FFF8 |
IRßM[MAR] | 103 | 9108 | 103 | 0014 | FFF8 | |
PCßPC+1 | 104 | 9108 | 103 | 0014 | FFF8 | |
Decode | MARßIR[11-0] | 104 | 9108 | 108 | 0014 | FFF8 |
(Decode IR[15-12] | 104 | 9108 | 108 | 0014 | FFF8 | |
Get operand | Not necessary | 104 | 9108 | 108 | 0014 | FFF8 |
Execute | PCßIR[11-0] | 108 | 9108 | 108 | 000C | FFF8 |
Instruction: Load Y
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 108 | 9108 | 108 | 000C | FFF8 | |
Fetch | MARßPC | 108 | 9108 | 108 | 000C | FFF8 |
IRßM[MAR] | 108 | 110D | 108 | 000C | FFF8 | |
PCßPC+1 | 109 | 110D | 108 | 000C | FFF8 | |
Decode | MARßIR[11-0] | 109 | 110D | 10D | 000C | FFF8 |
(Decode IR[15-12] | 109 | 110D | 10D | 000C | FFF8 | |
Get operand | MBRßM[MAR] | 109 | 110D | 10D | 0014 | FFF8 |
Execute | ACßMBR | 109 | 110D | 10D | 0014 | 0014 |
Instruction: Subt X
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 109 | 110D | 10D | 0014 | 0014 | |
Fetch | MARßPC | 109 | 110D | 109 | 0014 | 0014 |
IRßM[MAR] | 109 | 410C | 109 | 0014 | 0014 | |
PCßPC+1 | 10A | 410C | 109 | 0014 | 0014 | |
Decode | MARßIR[11-0] | 10A | 410C | 10C | 0014 | 0014 |
(Decode IR[15-12] | 10A | 410C | 10C | 0014 | 0014 | |
Get operand | MBRßM[MAR] | 10A | 410C | 10C | 000C | 0014 |
Execute | ACßAC-MBR | 10A | 410C | 10C | 000C | 0008 |
Instruction: Store Y
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 10A | 410C | 10C | 000C | 0008 | |
Fetch | MARßPC | 10A | 410C | 10A | 000C | 0008 |
IRßM[MAR] | 10A | 210D | 10A | 000C | 0008 | |
PCßPC+1 | 10B | 210D | 10A | 000C | 0008 | |
Decode | MARßIR[11-0] | 10B | 210D | 10D | 000C | 0008 |
(Decode IR[15-12] | 10B | 210D | 10D | 000C | 0008 | |
Get operand | Not necessary | 10B | 210D | 10D | 000C | 0008 |
Execute | MBRßAC | 10B | 210D | 10D | 0008 | 0008 |
(Changes Y) | M[MAR]ßMBR | 10B | 210D | 10D | 0008 | 0008 |
Instruction: Halt
Step | RTN | PC | IR | MAR | MBR | AC |
(initial values) | 10B | 210D | 10D | 0008 | 0008 | |
Fetch | MARßPC | 10B | 210D | 10B | 0008 | 0008 |
IRßM[MAR] | 10B | 7000 | 10B | 0008 | 0008 | |
PCßPC+1 | 10C | 7000 | 10B | 0008 | 0008 | |
Decode | MARßIR[11-0] | 10C | 7000 | 000 | 0008 | 0008 |
(Decode IR[15-12] | 10C | 7000 | 000 | 0008 | 0008 | |
Get operand | Not necessary | 10C | 7000 | 000 | 0008 | 0008 |
(Changes Y) | Terminate program | 10C | 7000 | 000 | 0008 | 0008 |
Explanation:
From above tables, the register values is based on instruction and each register value being modified according to the micro operation. The new values are shaded in above table which is based on instruction execution.
Want to see more full solutions like this?
Chapter 4 Solutions
Essentials of Computer Organization and Architecture
- Describe three (3) Multiplexing techniques common for fiber optic linksarrow_forwardCould you help me to know features of the following concepts: - commercial CA - memory integrity - WMI filterarrow_forwardBriefly describe the issues involved in using ATM technology in Local Area Networksarrow_forward
- For this question you will perform two levels of quicksort on an array containing these numbers: 59 41 61 73 43 57 50 13 96 88 42 77 27 95 32 89 In the first blank, enter the array contents after the top level partition. In the second blank, enter the array contents after one more partition of the left-hand subarray resulting from the first partition. In the third blank, enter the array contents after one more partition of the right-hand subarray resulting from the first partition. Print the numbers with a single space between them. Use the algorithm we covered in class, in which the first element of the subarray is the partition value. Question 1 options: Blank # 1 Blank # 2 Blank # 3arrow_forward1. Transform the E-R diagram into a set of relations. Country_of Agent ID Agent H Holds Is_Reponsible_for Consignment Number $ Value May Contain Consignment Transports Container Destination Ф R Goes Off Container Number Size Vessel Voyage Registry Vessel ID Voyage_ID Tonnagearrow_forwardI want to solve 13.2 using matlab please helparrow_forward
- a) Show a possible trace of the OSPF algorithm for computing the routing table in Router 2 forthis network.b) Show the messages used by RIP to compute routing tables.arrow_forwardusing r language to answer question 4 Question 4: Obtain a 95% standard normal bootstrap confidence interval, a 95% basic bootstrap confidence interval, and a percentile confidence interval for the ρb12 in Question 3.arrow_forwardusing r language to answer question 4. Question 4: Obtain a 95% standard normal bootstrap confidence interval, a 95% basic bootstrap confidence interval, and a percentile confidence interval for the ρb12 in Question 3.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





