Question
0) address starts at 0x2000, but PC=3 (address 0x2003) (1) stack 1 (@1) has value 6 (2) stack 2 (@2) has value 1 (3) command
0) address starts at 0x2000, but PC=3 (address 0x2003) (1) stack 1 (@1) has value 6 (2) stack 2 (@2) has value 1 (3) command load (0xa0) from 0x2001 to register AX (AX=6), PC=4 (address 0x2004) (4) command store (0xb8) the value in 0x2001 to register BX at 0x8001 (BX=6), PC=5(address 0x2005) (5) command substract (0xc0) the value 1 in 0x2002 from the register AX, PC=6 (address 0x2006) (6) command jump (0x2b) to 0xC=12 if the result in AX is zero, PC=7 (address 0x2007) (7) command store (0xb8) the value into register CX at 0x8006 (CX=5), PC=8 (address 0x2008) (8) command mul (0xf0) the value of register AX by the value in register Bx at 0x8001, AX=5*6=30, PC=9 (address 0x2009) (9) command store (0xb8) the value of register AX in register BX at 0x8001 (Bx=30), PC=10 (address 0x200a) (10) command load (0xa0) the value in register CX at 0x8006 to register AX (AX=CX=5), PC=11 (address 0x200b) (11) command jump (0x20) to address 0x5 (0x2005), PC=5 (address 0x2005) (12) command halt (0x1) is exit. The program looped 6 times to exit.
When exit, AX=0, BX=720, CX=1, DX=0, PC=12, CA = SI= OV = 0, ZE = EV = 1
Lab exercise:
Q1. Click menu
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started