预备知识
1),2)
"D 1000:0"负责让用户看到1000:0开始的内存单元,该命令的实质是CPU执行了一段程序,这段程序负责把"1000"这个段地址送入某个段寄存器。这样CPU才能从段寄存器中读出"1000"。
那么问题来了,"1000"被放入了哪个寄存器呢?
SS不可以,它负责指向栈顶。
CS不可以,他负责指向代码段的段地址。
答案是DS。事实上,A,E,R,U指令对段寄存器的控制都是通过DS实现的。

从上图中我们可以发现D命令改变后DS的值似乎并未改变,是书上错了吗?不,事实上这据指令确实有修改ds,但是执行-d 1000:0其实也就是是执行一个小小的程序,可以看做是发生一个中断,ds在这个小程序中被改变,但指令执行完之后必然是会恢复为原来的值的
3)

Debug的T命令在执行修改寄存器SS的指令时,下一条指令也紧接着被执行
实验任务
1)
ax=58EA
ax=5CCA
bx=30F0
bx=6022

内存单元[num]的段地址为寄存器DS值,偏移地址为num
SP=00FE,修改的内存单元为220FE,其内容为5CCA
SP=00FC,修改的内存单元为220FC,其内容为6021
SP=00FA,修改的内存单元为220FE,其内容为6021
SP=00FC,修改的内存单元为22100其内容为5CCA

验证了push,pop操作每次控制两个字节(一个字)的说法。
SP=00FE,修改的内存单元为220FE,其内容为30F0
SP=00FC,修改的内存单元为220FC,其内容为2F31

注意高低字节单元存放的字节。
2)
中断问题(待补充)
