鱼C论坛

 找回密码
 立即注册
查看: 1709|回复: 3

t命令执行了两步

[复制链接]
发表于 2015-1-19 14:20:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 mhhnjuol 于 2015-1-19 14:21 编辑

assume cs:code, ds:a,  ds:b, ds:d

a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
d segment
db 0,0,0,0,0,0,0,0
d ends

code segment

start :
mov ax, a
mov ds , ax
mov ax, b
mov es, ax
mov ax, d
mov ss, ax
mov cx, 8
mov bx, 0
s:mov al, [bx]
add  al, es:[bx]
mov ss:[bx], al
inc bx
loop s
mov ax, 4c00H
int 21H
code ends
end start

在debug执行mov ss,ax时,下一条指令mov cx, 8也会被一起执行,这是为什么,求解答

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-1-19 21:08:03 | 显示全部楼层
用t执行完mov ss,ax以后,下条指令自动执行,不管你是什么指令,全是一起执行的,栈操作后有一个SP+2或者-2,那是CPU自动执行的,所以后面的指令也一并执行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-1-20 11:20:08 | 显示全部楼层
谢谢啦,终于懂了:big
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-1-20 18:40:04 | 显示全部楼层
栈操作后有一个SP+2或者-2,那是CPU自动执行的,所以后面的指令也一并执行.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 18:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表