|
主题 : : 本单检测题中关于ax值的一道题 [待解决] |
回复[ 6次 ]
点击[ 474次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2009-11-30 16:55 ]
[引用]
[回复]
[ top ] | |
荣誉值:3
信誉值:0
注册日期:2009-10-27 16:12 |
原题如下:
assume cs:code
code segment
start: mov ax,3
jmp s1
s: mov bx,0
mov ax,bx
s1: mov cx,3
s2: add ax,2
loop s2
s3: mov ax,4c00h
int 21h
code ends
end s
上面代码执行s3处的指令之前,ax的值是____。
1、 9
2、 6
3、 5
4、 2
这一小题我的答案是__2__
我看到有人答第一个选项9的
我只问一句:
第一:程序入口处是S,意思是不是说,在S段之前的那些程序不会执行,除非后面遇到跳转???
~~~~~~
~~~~~~
PS:jmp 这个跳转指令前面没学过....
假设,程序入口处是标记start处,那么,在执行过程中,各段的执行顺序应该是什么样子的???
执先到JMP S1,的时候,跳转到S1处,这个段的程序执行完之后,是否应该执行s?
当执行完S之后,此时的S1还会不执行?还是说,
JMP跳转指令之后,就按顺序往下执行??? | | |
|
|
|
|
[第1楼]
[ 回复时间:2009-12-01 15:03 ]
[引用]
[回复]
[ top ] | |
荣誉值:188
信誉值:4
注册日期:2009-07-05 19:26 |
我只问一句:
第一:程序入口处是S,意思是不是说,在S段之前的那些程序不会执行,除非后面遇到跳转???
==================================================================================
就这题来讲理解没错
PS:jmp 这个跳转指令前面没学过....
==================================================================================
这个指令在第二章就有介绍过的,再看下书P32页吧
假设,程序入口处是标记start处,那么,在执行过程中,各段的执行顺序应该是什么样子的???
==================================================================================
入口为START处,执行顺序如下,S段将不会被执行,最终ax值为9
assume cs:code
code segment
start: mov ax,3
s1: mov cx,3
s2: add ax,2
loop s2
s3: mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第2楼]
[ 回复时间:2009-12-01 15:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:3
信誉值:0
注册日期:2009-10-27 16:12 |
谢谢楼上的,我理解了,程序至上而下运行,因为遇到指令JMP S1,这时,程序会跳到S1处,然后继续向下运行。。。
jmp 这个指令第二篇讲的是改变cs:ip的值,那jmp S1的意思就应该是说:无条件跳转至S1处.是这样理解的吧?
如果遇到的不是跳转指令,而只是调用,这时候运行过S1之后,还会继续运行S段,对吧? | | |
|
|
|
|
[第3楼]
[ 回复时间:2009-12-01 15:42 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-11-24 14:20 |
|
|
|
|
|
[第4楼]
[ 回复时间:2009-12-01 16:45 ]
[引用]
[回复]
[ top ] | |
荣誉值:3
信誉值:0
注册日期:2009-10-27 16:12 |
|
|
|
|
|
[第5楼]
[ 回复时间:2009-12-16 11:05 ]
[引用]
[回复]
[ top ] | |
荣誉值:62
信誉值:0
注册日期:2009-12-03 13:14 |
引用2楼
如果遇到的不是跳转指令,而只是调用,这时候运行过S1之后,还会继续运行S段,对吧?
-------------------------------------------------------------------
那要看具体的指令了,而且不仅仅是看指令,明白返回指令为什么会返回原来的地方执行,CS:IP又是通过什么途径获得返回地址的,这样就心里就有底了,一点愚见 | | |
|
|
|
|
[第6楼]
[ 回复时间:2009-12-16 13:06 ]
[引用]
[回复]
[ top ] | |
荣誉值:3
信誉值:0
注册日期:2009-10-27 16:12 |
谢谢楼上的,现在学到第十章再回过头来看这题,就明白了 | | |