Question: The Step key (F8 - step over) executes one instruction at a time, without stepping thru the code of a called procedure. The Run key

 The Step key (F8 - step over) executes one instruction at
a time, without stepping thru the code of a called procedure. The

The Step key (F8 - step over) executes one instruction at a time, without stepping thru the code of a called procedure. The Run key (F9) enables you to execute the program up to the next breakpoint (breakpoints are set by the F2 key which acts as a toggle key) or to the end of the program (if no breakpoints are set). In general, to re-start execution of the program at the beginning. without exiting the debugger, select the RUN menu, and select Program Reset from this menu. To quit the debugger, type in ALT-X 1. Look at the data segment of the program in the lower pane of the CPU window. Start at location ds:0000. Find the string "Enter integer " What is the address(offset) of the beginning of this string? This is the address(offset) of the beginning of the main program data segment. Each character occupies one byte. What is the internal representation of ' E ' in hex? 45 h 'n'? 6Eh t? 74h 'e'? 65h 'r'? 72h The string "Enter integer \#" followed by ": " has how many characters altogether? 16 The variable N follows the prompt string(s). The variable N occupies how many bytes? What is the address(offset) of N? Give the addresses for all bytes: .0014.0013 Variable MAX follows N. Give the addresses(offset) of all the MAX bytes: State the addresses(offset) of all the bytes of variable Count: State the addresses(offset) of all the bytes of variable Limit: What Hex number is initially stored in Count? What Hex number is stored in Limit? Is the Hex value of Limit equal to 10? Explain. The items listed in the data section of the main program follow immediately after one another in the data segment of memory. Find all of these items. At what address(offset) does the main program data section end? At what address(offset) does the data section of the GREET procedure begin? At what address(olfset) does it end? 2. Set a breakpoint on the instruction "mov N, ax' that follows the first "Cal GetDec' instructon in the program. Execute the program up to and including the Call GetDec instruction and enter the number 5 when prompted for an integer. After the Call GetDec instruction, the ax register holds: What does this number represent (where did it come from)? After the next instruction (mov N, ax) executes, N holds: Affer the "mov N, ax" instruction has executed, look at the data segment of the CPU window. When the "mov N, ax" instruction is executed, the value of ax is stored at (oopied into) what address(offset) in the data segment? After the next instruction ("mov Max, ax) executes, Max holds: After the next instruction ("inc Count ") executes, Count holds: Execute the next instruction "mov dx, OFFSET MsgEcho: The dx register now holds: What does this number match and represent? Where do we look in the CPU window to verify this, and what do we check? What does "OFFSET" mean? Three instructions later, "mov ax, N" is executed in preparation for printing N to the screen. Why is it necessary to move N back into the ax register, when it was already in the ax register a few instructions back? Explain. 3. Set a breakpoint in the WHILE01 loop on the instruction immediately following the IF-THEN-ENDI structure, the instruction "mov dx, OFFSET MsgEcho". Execute to the breakpoint and enter the number 3 when prompted. When execution stops at the breakpoint, N holds: Max holds: The Step key (F8 - step over) executes one instruction at a time, without stepping thru the code of a called procedure. The Run key (F9) enables you to execute the program up to the next breakpoint (breakpoints are set by the F2 key which acts as a toggle key) or to the end of the program (if no breakpoints are set). In general, to re-start execution of the program at the beginning. without exiting the debugger, select the RUN menu, and select Program Reset from this menu. To quit the debugger, type in ALT-X 1. Look at the data segment of the program in the lower pane of the CPU window. Start at location ds:0000. Find the string "Enter integer " What is the address(offset) of the beginning of this string? This is the address(offset) of the beginning of the main program data segment. Each character occupies one byte. What is the internal representation of ' E ' in hex? 45 h 'n'? 6Eh t? 74h 'e'? 65h 'r'? 72h The string "Enter integer \#" followed by ": " has how many characters altogether? 16 The variable N follows the prompt string(s). The variable N occupies how many bytes? What is the address(offset) of N? Give the addresses for all bytes: .0014.0013 Variable MAX follows N. Give the addresses(offset) of all the MAX bytes: State the addresses(offset) of all the bytes of variable Count: State the addresses(offset) of all the bytes of variable Limit: What Hex number is initially stored in Count? What Hex number is stored in Limit? Is the Hex value of Limit equal to 10? Explain. The items listed in the data section of the main program follow immediately after one another in the data segment of memory. Find all of these items. At what address(offset) does the main program data section end? At what address(offset) does the data section of the GREET procedure begin? At what address(olfset) does it end? 2. Set a breakpoint on the instruction "mov N, ax' that follows the first "Cal GetDec' instructon in the program. Execute the program up to and including the Call GetDec instruction and enter the number 5 when prompted for an integer. After the Call GetDec instruction, the ax register holds: What does this number represent (where did it come from)? After the next instruction (mov N, ax) executes, N holds: Affer the "mov N, ax" instruction has executed, look at the data segment of the CPU window. When the "mov N, ax" instruction is executed, the value of ax is stored at (oopied into) what address(offset) in the data segment? After the next instruction ("mov Max, ax) executes, Max holds: After the next instruction ("inc Count ") executes, Count holds: Execute the next instruction "mov dx, OFFSET MsgEcho: The dx register now holds: What does this number match and represent? Where do we look in the CPU window to verify this, and what do we check? What does "OFFSET" mean? Three instructions later, "mov ax, N" is executed in preparation for printing N to the screen. Why is it necessary to move N back into the ax register, when it was already in the ax register a few instructions back? Explain. 3. Set a breakpoint in the WHILE01 loop on the instruction immediately following the IF-THEN-ENDI structure, the instruction "mov dx, OFFSET MsgEcho". Execute to the breakpoint and enter the number 3 when prompted. When execution stops at the breakpoint, N holds: Max holds

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!