实验二
前提:1.关于D命令
D命令是查看内存单元的命令,方式为:d 段地址:偏移地址
debug在执行“d 1000:0”的命令时,会先将段地址送入到寄存器中,比如这样:
发现4个段寄存器CS,DS,SS,ES都没有改变
然而再次进行-d,
发现段地址依然是1000,此处???
使用D命令最好事先指定段寄存器。
2.在E,A,U命令中使用段寄存器
同D命令
3.在这里,指出了在DEBUG里,a命令写的:
mov ax,2000
* mov ss,ax
& mov sp,10
此处的&行会在*行执行后自动执行,不会在用t命令逐一运行时出现。
实验任务:
1.按照正常操作运行后:
此处ax=3130
ax=6462
bx=3534
bx=6c6a
sp=00fe
此处sp=00fc
sp=00fe,ax=6c6a
sp=0100,bx=6462
总结:
在对ss操作语句的下一行sp语句不会出现在t单步进行中,但会直接执行。
发现段寄存器的特性以及尝试使用ss:sp操作栈,实践会让理论更进一步。