h212寻址方式汇编.ppt

h212寻址方式汇编

例2.10 直接寻址 (段间) ·MODEL MEDIUM ·CODE CODE1 地 址 机器码 ·STARTUP 1D24:0010 8BF7 MOV SI,DI 1D24:0012 EA0A00251D JMP FAR PTR NEXT ;转CODE2段标号NEXT处 1D24:0017 B210 MOV DL,10H ┆ 地 址 机器码 ·CODE CODE2 1D25:000A 8ACA NEXT:MOV CL,DL 1D25:000C 32D2 XOR DL,DL ·EXIT END 等价于JMP 1D25: 000A 三、间接寻址(段内、段间) 间接寻址分段内和段间间接寻址, 指令中以间接方式给出转移指令的目标地址, 转移指令的目标地址,通常存放在数据段。若采用 (E) BP寻址,指令目标地址放在堆栈段。使用段超越前缀,也可以存放在其它段。 例2.11 间接寻址(段内、段间) ·MODEL MEDIUM 地 址 操作数 ·DATA 1D26:0000 0800251D BUF DD NEXT ;标号NEXT的地址 ·CODECODE1 地 址 机器码 ·STARTUP 1D24:0010 BB0000 MOV BX,OFFSET BUF 1D24:0013 FF2F JMP FAR PTR[BX] ;转移到CODE2段 标号NEXT处 1D24:0015 B210 MOV DL,10 ┆ ·CODE CODE2 1D25:0008 8ACA NEXT: MOV CL,DL 1D25:000A 32D2 XOR DL,DL ·EXIT END 2.1.3 堆栈地址寻址 堆栈段用于暂存数据,并且为程序保存返回地址。堆栈的存取方式不同于一般数据段,堆栈采用先进后出的存取方式。 使用PUSH指令将操作数压入堆栈,使用POP指令从堆栈中弹出操作数。堆栈栈顶指针为(E)SP。 在16位指令模式下,堆栈地址由SS×10H+SP形式。 在32位指令模式下,段寄存器SS存放段选择符,通过段选择符访问段描述符,获取32位段址,ESP存放偏移地址。 使用PUSH 源操作数 指令,向堆栈压入一个字的具

文档评论(0)

1亿VIP精品文档

相关文档