1、在执行 mov ax,6 之后,ax值为0006
2、call ax,这条指令 相当于两条指令:
push ip
jmp ax
关于push ip ,IP指向的不是3,而是5,所以,要将0005压入栈中。而第九章有说明:jmp ax ,相当于 mov IP ax ,因此,IP的值为0006。
3、在执行了call ax之后,指令要转到 mov bp,sp开始执行。
而sp,在执行call ax之后,(sp)=(sp)-2 ,也就是说,指针要向栈顶方向移动2个字节,也就是移动到刚才压入栈中的0005的保存00数字的内存单元的上方,并将SP的值赋给BP,这个值是多少,并不重要,我们只需要知道:
4、在执行add ax,[bp]的时候,CUP寻址,是从00 05 的00对应的地址开始,因此,[bp]的内容,对应的就是0005
因此,ax = 0006+ 0005 = 000B