您的位置:首页精文荟萃破解文章 → 8088 汇编跳转

8088 汇编跳转

时间:2004/10/15 0:50:00来源:本站整理作者:蓝点我要评论(0)

 

8088 汇编跳转


一、状态寄存器


PSW(Program Flag)程序状态字寄存器,是一个16位寄存器,由条件码标志(flag)和控制标志构成,如下所示:





















15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0




















 

 

 

 

OF

DF

IF

TF

SF

ZF

 

AF

 

PF

 

CF


条件码:
①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)中断标志。
⑨TF(Trap Flag)陷井标志。


二、 直接标志转移(8位寻址)



























































指令格式

机器码

测试条件

如...则转移

 

 

指令格式

机器码

测试条件

如...则转移

JC

72

C=1

有进位

JNS

79

S=0

正号

JNC

73

C=0

无进位

JO

70

O=1

有溢出

JZ/JE

74

Z=1

零/等于

JNO

71

O=0

无溢出

JNZ/JNE

75

Z=0

不为零/不等于

JP/JPE

7A

P=1

奇偶位为偶

JS

78

S=1

负号

JNP/IPO

7B

P=0

奇偶位为奇

三、间接标志转移(8位寻址)

















































指令格式

机器码

测试格式

如...则转移

JA/JNBE(比较无符号数)

77

C或Z=0

>  高于/不低于或等于

JAE/JNB(比较无符号数)

73

C=0

>=  高于或等于/不低于

JB/JNAE(比较无符号数)

72

C=1

<  低于/不高于或等于

JBE/JNA(比较无符号数)

76

C或Z=1

<=  低于或等于/不高于

JG/JNLE(比较带符号数)

7F

(S异或O)或Z=0

>  大于/不小于或等于

JGE/JNL(比较带符号数)

7D

S异或O=0

>=  大于或等于/不小于

JL/JNGE(比较带符号数)

7C

S异或O=1

<  小于/不大于或等于

JLE/JNG(比较带符号数)

7E

(S异或O)或Z=1

<=  小于或等于/不大于

四、无条件转移指令(fisheep译 fisheep@sohu.com)







































操作码 伪码指令 含义

EB  cb
JMP rel8 相对短跳转(8位),使rel8处的代码位下一条指令

E9  cw
JMP rel16 相对跳转(16位),使rel16处的代码位下一条指令

FF  /4
JMP r/m16 绝对跳转(16位),下一指令地址在r/m16中给出

FF  /4
JMP r/m32 绝对跳转(32位),下一指令地址在r/m32中给出

EA  cb
JMP ptr16:16 远距离绝对跳转, 下一指令地址在操作数中

EA  cb
JMP ptr16:32 远距离绝对跳转, 下一指令地址在操作数中

FF  /5
JMP m16:16 远距离绝对跳转, 下一指令地址在内存m16:16中

FF  /5
JMP m16:32 远距离绝对跳转, 下一指令地址在内存m16:32中

五、16位/32位寻址方式(fisheep译 fisheep@sohu.com)




































































































































































































操作码

伪码指令

跳转含义

跳转类型

跳转的条件(标志位)

0F 87  cw/cd

JA rel16/32

大于

near

(CF=0 and ZF=0)

0F 83  cw/cd

JAE rel16/32

大于等于

near

(CF=0)

0F 82  cw/cd

JB rel16/32

小于

near

(CF=1)

0F 86  cw/cd

JBE rel16/32

小于等于

near

(CF=1 or ZF=1)

0F 82  cw/cd

JC rel16/32

进位

near

(CF=1)

0F 84  cw/cd

JE rel16/32

等于

near

(ZF=1)

0F 84  cw/cd

JZ rel16/32

为0

near

(ZF=1)

0F 8F  cw/cd

JG rel16/32

大于

near

(ZF=0 and SF=OF)

0F 8D  cw/cd

JGE rel16/32

大于等于

near

(SF=OF)

0F 8C  cw/cd

JL rel16/32

小于

near

(SF<>OF)

0F 8E  cw/cd

JLE rel16/32

小于等于

near

(ZF=1 or SF<>OF)

0F 86  cw/cd

JNA rel16/32

不大于

near

(CF=1 or ZF=1)

0F 82  cw/cd

JNAE rel16/32

不大于等于

near

(CF=1)

0F 83  cw/cd

JNB rel16/32

不小于

near

(CF=0)

0F 87  cw/cd

JNBE rel16/32

不小于等于

near

(CF=0 and ZF=0)

0F 83  cw/cd

JNC rel16/32

不进位

near

(CF=0)

0F 85  cw/cd

JNE rel16/32

不等于

near

(ZF=0)

0F 8E  cw/cd

JNG rel16/32

不大于

near

(ZF=1 or SF<>OF)

0F 8C  cw/cd

JNGE rel16/32

不大于等于

near

(SF<>OF)

0F 8D  cw/cd

JNL rel16/32

不小于

near

(SF=OF)

0F 8F  cw/cd

JNLE rel16/32

不小于等于

near

(ZF=0 and SF=OF)

0F 81  cw/cd

JNO rel16/32

未溢出

near

(OF=0)

0F 8B  cw/cd

JNP rel16/32

不是偶数

near

(PF=0)

0F 89  cw/cd

JNS rel16/32

非负数

near

(SF=0)

0F 85  cw/cd

JNZ rel16/32

非零(不等于)

near

(ZF=0)

0F 80  cw/cd

JO rel16/32

溢出

near

(OF=1)

0F 8A  cw/cd

JP rel16/32

偶数

near

(PF=1)

0F 8A  cw/cd

JPE rel16/32

偶数

near

(PF=1)

0F 8B  cw/cd

JPO rel16/32

奇数

near

(PF=0)

0F 88  cw/cd

JS rel16/32

负数

near

(SF=1)

0F 84  cw/cd

JZ rel16/32

为零(等于)

near

(ZF=1)

注:一些指令操作数的含义说明:
  rel8      表示 8 位相对地址
  rel16    表示 16 位相对地址
  rel16/32  表示 16或32 位相对地址
  r/m16    表示16位寄存器
  r/m32    表示32位寄存器

    
    
     
    
    
     

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 去除winrar注册框方法

最新文章 比特币病毒怎么破解 比去除winrar注册框方法 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据

人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程