|
主题 : : 检测点3.2 [待解决] |
回复[ 8次 ]
点击[ 634次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2009-06-16 22:49 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:4
注册日期:2009-06-09 13:56 |
如何知道10000H~1000FH中的8个字被逆序复制到20000H~2000FH中去了,不理解?
请高手写出详细的解释,谢谢了! | | |
|
|
|
|
[第1楼]
[ 回复时间:2009-06-19 12:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:4
注册日期:2009-06-09 13:56 |
我觉得答案应该是:
(1) mov ax,2000
mov ss,ax
mov sp,10
(2) mov ax,1000
mov ss,ax
mov sp,0
可是不知道怎么在debug中实验它? | | |
|
|
|
|
[第2楼]
[ 回复时间:2009-06-19 17:04 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-02-21 13:58 |
回复:[第1楼]
------------------
第一个为什么是
mov sp,10 而不是 mov sp,0 ? | | |
|
|
|
|
[第3楼]
[ 回复时间:2009-06-19 17:07 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-02-21 13:58 |
回复:[第1楼]
------------------
明白了,应该是 10
刚刚糊涂了。。。 | | |
|
|
|
|
[第4楼]
[ 回复时间:2009-06-27 21:00 ]
[引用]
[回复]
[ top ] | |
荣誉值:6
信誉值:5
注册日期:2009-05-25 11:39 |
我答案刚开始做出来了。可以越想愈糊涂。。
MOV AX,1000H
MOV DS,AX
MOV AX,2000H
MOV SS,AX
MOV SP,0010H
PUSH [0]
...........
...........
...........
PUSH [0] 的意思不是将内存地址10000H的数据压入栈吗?那是不是就是说我只要在内存空间里建了栈.他就把数据压进去,不管我栈是建在什么位置?? | | |
|
|
|
|
[第5楼]
[ 回复时间:2009-07-15 19:34 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-06-02 18:30 |
我觉得答案应该是:
(1) mov ax,2000
mov ss,ax
mov sp,10
(2) mov ax,1000
mov ss,ax
mov sp,0
------------------
回复:第二处SP怎么是0呢?怎么不是FFFE呢?
它的栈顶应该在1FFFE那啊。 | | |
|
|
|
|
[第6楼]
[ 回复时间:2009-07-17 02:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:2
注册日期:2009-07-15 01:04 |
回复:[第5楼]
------------------
POP是先读数据,PUSH是先移动SP两个不一样 | | |
|
|
|
|
[第7楼]
[ 回复时间:2010-01-17 15:18 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-01-15 15:10 |
这才是正确答案吧:
(1) mov ax,2000H
mov ss,ax
mov sp,2010H
(2) mov ax,1000
mov ss,ax
mov sp,0
搞不明白你们的为什么第一个是10的呢, | | |
|
|
|
|
[第8楼]
[ 回复时间:2010-01-17 15:22 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2010-01-15 15:10 |
这才是正确答案吧:
(1) mov ax,2000H
mov ss,ax
mov sp,2010H
(2) mov ax,1000
mov ss,ax
mov sp,0
搞不明白你们的为什么第一个是10的呢,
------------------
回复:这才是正确答案吧:
(1) mov ax,2000H
mov ss,ax
mov sp,2010H
(2) mov ax,1000
mov ss,ax
mov sp,0
搞不明白你们的为什么第一个是10的呢,
------------------
回复:是10 前面还有个段地址200 | | |