微机原理与接口技术课件6.ppt
文本预览下载声明
第2章 指令系统 3.4、符号扩展指令 字节扩展为字格式: CBW 指令作用:把AL中的符号位扩展到AH 字扩展为双字格式:CWD 指令作用:把AX中的符号位扩展到DX 第2章 指令系统 3.4、符号扩展指令 例:在数据段内,自1000H开始的3个16位有符号数A,B,C,分别为7856H,CB9AH,3412H,编程实现(A X B + C)/ A,结果的余数存入AX,商存入DX 第2章 指令系统 逻辑运算及移位指令 逻辑运算指令包含: 逻辑与指令 逻辑或指令 逻辑非指令 逻辑异或指令 测试指令 第2章 指令系统 4.1、逻辑与指令 指令格式: AND OPD, OPS 指令作用:实现目标操作数与源操作数的按位相与,结果送回目标操作数 OPD = OPD OPS 按位与主要用于实现对目标操作数的一些位清零 第2章 指令系统 4.1、逻辑与指令 示例: AND AX, 1234H AND AL, BH AND AX, [BX] AND BYTE PTR 1000H, 12H AND [DI], CX 第2章 指令系统 4.2、逻辑或指令 指令格式: OR OPD, OPS 指令作用:实现目标操作数与源操作数的按位相或,结果送回目标操作数 OPD = OPD | OPS 按位与主要用于实现对目标操作数的一些位置1 第2章 指令系统 4.3、逻辑非指令 指令格式: NOT OPD 指令作用:实现目标操作数按位取反 OPD = ~OPD 示例: NOT AX NOT BL NOT BYTE PTR [3000H] 第2章 指令系统 4.4、逻辑异或指令 指令格式: XOR OPD, OPS 指令作用:实现目标操作数与源操作数的按位相或,结果送回目标操作数 OPD = OPD ^ OPS 按位与主要用于实现对目标操作数的一些位取反 第2章 指令系统 4.5、测试指令 指令格式: TEST OPD, OPS 指令作用:实现目标操作数与源操作数的按位相与,结果不保存,但影响标志位 主要用于检测目标操作数的一些位是否为期望值 第2章 指令系统 逻辑运算及移位指令 移位指令包含: 逻辑左移指令 逻辑右移指令 算术左移指令 算术右移指令 循环左移指令 循环右移指令 带进位循环左移指令 带进位循环右移指令 第2章 指令系统 5.1、逻辑左移 指令格式: SHL OPD, COUNT 指令作用:将目标操作数左移COUNT位,移除位到CF,低位补0 第2章 指令系统 5.1、逻辑左移 注意事项: 当移位次数大于1时,移位次数必须放入CL中 SHL AX, 3 MOV CL,3 SHL AX,CL 第2章 指令系统 5.2、逻辑右移 指令格式: SHR OPD, COUNT 指令作用:将目标操作数右移COUNT位,移除位到CF,高位补0 第2章 指令系统 5.3、算术左移 指令格式: SAL OPD, COUNT 指令作用:同SHL 第2章 指令系统 5.4、算术右移 指令格式: SAR OPD, COUNT 指令作用:将目标操作数右移COUNT位,最高位补符号位,移出位到CF中 第2章 指令系统 5.5、循环左移 指令格式: ROL OPD, COUNT 指令作用:将目标操作数左移COUNT位,移除位用于填补最低位,同时移除位进入CF 第2章 指令系统 5.6、循环右移 指令格式: ROR OPD, COUNT 指令作用:将目标操作数右移COUNT位,移除位用于填补最高位,同时移除位进入CF 第2章 指令系统 5.7、带进位循环左移 指令格式: RCL OPD, COUNT 指令作用:将目标操作数左移COUNT位,移除位进入CF,同时用CF填补空出位 第2章 指令系统 5.8、带进位循环右移 指令格式: RCR OPD, COUNT 指令作用:将目标操作数右移COUNT位,移除位进入CF,同时用CF填补空出位 第2章 指令系统 转移控制指令 指令包含: 无条件转移指令 条件转移指令 循环控制指令 字程序调用 第2章 指令系统 转移控制指令 转移指令中的操作数 指出需要跳转到的目标地址,该地址一般用标号指出 JMP L1 ADD AX,AX ADD AX,AX L1: MOV CX,0 第2章 指令系统 6.1、无条件转移指令JMP 指令格式: JMP OPD 指令作用:直接跳转到OPD所标识的指令 该指令实质是改变
显示全部