
November 9th, 2010, 10:50 AM
|
|
Registered User
|
|
Join Date: Nov 2010
Posts: 1
Time spent in forums: 39 m 37 sec
Reputation Power: 0
|
|
Check this assembly program
[org 0x0100]
mov al, [num1]
mov bl, [num1+1]
mov bl, [num1+2]
add al, bl
mov ax, 0x4c00
int 0x21
num1: db 5, 10, 15, 0
After analysis you have to provide all information that is asked under:
al,bl and IP Register
You have to fill the table given below and write the values of al,bl and IP registers before and after execution of an instruction as you analyze in debugger. You also have to give reason that why the value of al,bl and IP registers change after a particular instruction. Give reason in corresponding column.
Instruction Before Execution After Execution(with Reasons)
Value of al Value of bl Value of IP Value of al Value of bl Value of IP
mov al,[num1]
0000 0000 0100 0005 0000 0103
mov bl,[num1+1]
0005 0000 0103 0005 000A 0107
add al,bl
0005 000A 0107 000F 000A 0109
mov bl,[num1+2]
000F 000A 0109 000F 000F 010D
add al,bl
000F 000F 010D 001E 000F 010F
mov [num1+3],al
001E 000F 010F 001E 000F 0112
You also have to provide the following information
Address of num1=0117
Address of num1+1=0118
Address of num1+2=0119
Address of num1+3=011A
Value of num1+3(at end of program) =?
|