一、状态寄存器
PSW(Program Flag)程序状态字寄存器,是一个16位寄存器,由条件码标志(flag)和控制标志构成,如下所示:
111
1
11
9 8 7 6 5 4 3 2 1 0
5 4 3 2 1 0
ODITSZA PF F F F F F F F 条件码:
①OF(Overflow Flag)溢出标志。溢出时为1,否则置0。 ②SF(Sign Flag)符号标志。结果为负时置1,否则置0. ③ZF(Zero Flag)零标志,运算结果为0时ZF位置1,否则置0. ④CF(Carry Flag)进位标志,进位时置1,否则置0.
⑤AF(Auxiliary carry Flag)辅助进位标志,记录运算时第3位(半个字节)产生的进位置。有进位时1,否则置0.
⑥PF(Parity Flag)奇偶标志。结果操作数中1的个数为偶数时置1,否则置0. 控制标志位:
⑦DF(Direction Flag)方向标志,在串处理指令中控制信息的方向。 ⑧IF(Interrupt Flag)中断标志。
CF ⑨TF(Trap Flag)陷井标志。 二、 直接标志转移
机指令器格式 码 JC 72 C=1 C=0 Z=1 有进位 无进位 JZ/J74 E JNZ/75 JNE JNP/IPJS 78 S=1 负号 O 三、间接标志转移
指令格式 JA/JNBE(比较无77 符号数) JAE/JNB(比较无73 符号数) JB/JNAE(比较无72 符号数) JBE/JNA(比较无76 C或Z=1 C=1 等于 <= 低于或等于/C=0 不低于 < 低于/不高于或C或Z=0 等于 >= 高于或等于/机器码 测试格式 如...则转移 > 高于/不低于或7B P=0 奇 Z=0 不为零/不等于 JP/JPE 7A P=1 偶 奇偶位为奇偶位为零/等于 JNO 71 O=0 无溢出 JNS JO 79 70 S=0 O=1 正号 有溢出 条件 测试如...则转移 格式 码 条件 移 指令机器测试如...则转JNC 73 符号数) JG/JNLE(比较带7F 符号数) JGE/JNL(比较带7D 符号数) JL/JNGE(比较带7C 符号数) JLE/JNG(比较带7E 符号数) 四、无条件转移指令JMP
机器指令格式 段内直接短转移 Jmp short 段内直接近转移Jmp near 段内间接转移Jmp word 段间直接(远)转址) 移Jmp far (CS)←(段地址) 段间间接转移(IP)←(EA) EA 执行操作 码 (IP)←(IP)+8位EB 位移量 (IP)←(IP)+16位E9 位移量 (IP)←(有效地址FF EA) (IP)←(偏移地(S异或O)或Z=1 S异或O=1 S异或O=0 (S异或O)或Z=0 不高于 > 大于/不小于或等于 >= 大于或等于/不小于 < 小于/不大于或等于 <= 小于或等于/不大于 说明 转移范围-128到+127字节 转移到段内的任一位置 Jmp dword
(CS)←(EA+2)
因篇幅问题不能全部显示,请点此查看更多更全内容