学习汇编-32位
  JLRoSClrxNx7 2023年11月02日 84 0

数据类型

类型 用法
BYTE 8位无符号整数,B代表字节
SBYTE 8位有符号整数,S代表有符号
WORD 16位无符号整数
SWORD 16位有符号整数
DWORD 32位无符号整数,D代表双(字)
SDWORD 32位有符号整数,SD代表有符号双(字)
FWORD 48位整数(保护模式中的远指针)
QWORD 64位整数,Q代表四(字)
TBYTE 80位(10字节)整数,T代表10字节
REAL4 32位(4字节)IEEE短实数
REAL8 64位(8字节)IEEE长实数
REAL10 80位(10字节)IEEE扩展实数
简写
DB 8位整数
DW 16位整数
DD 32位整数
DQ 64位整数
DT 80位整数

指令操作数符号

x86指令格式:[label : ] mnemonic [operands] [ ; comment]

操作数 说明
reg8 8位通用寄存器:AH、AL、BH、BL、CH、CL、DH、DL
reg16 16位通用寄存器:AX、BX、CX、DX、SI、DI、SP、BP
reg32 32位通用寄存器:EAX、EBX、ECX、EDX、ESI、EDI、ESP、EBP
reg 通用寄存器
sreg 16位段寄存器:CS、DS、SS、ES、FS、GS
imm 8位、16位或32位立即数
imm8 8位立即数,字节型数值
imm16 16位立即数,字类型数值
imm32 32位立即数,双字型数值
reg/mem8 8位操作数,可以是8位通用寄存器或内存字节
reg/mem16 16位操作数,可以是16位通用寄存器或内存字
reg/mem32 32位操作数,可以是32位通用寄存器或内存双字
mem 8位、16位或32位内存操作数

条件跳转助记符

助记符 含义 标志位/寄存器
JA 无符号大于则跳转 CF=0 and ZF=0
JNA 无符号不大于则跳转 CF=1 or ZF=1
JAE 无符号大于等于则跳转 CF=0
JNAE 无符号不大于等于则跳转 CF=1
JB 无符号小于则跳转 CF=1
JNB 无符号不小于则跳转 CF=0
JBE 无符号小于等于则跳转 CF=1 or ZF=1
JNBE 无符号不小于等于则跳转 CF=0 and ZF=0
JG 有符号大于则跳转 SF=OF and ZF=0
JNG 有符号不大于则跳转 SF != OF or ZF=1
JGE 有符号大于或等于则跳转 SF=OF
JNGE 有符号不大于或等于则跳转 SF != OF
JL 有符号小于则跳转 SF != OF
JNL 有符号不小于则跳转 SF=OF
JLE 有符号小于或等于则跳转 SF != OF or ZF=1
JNLE 有符号不小于或等于则跳转 SF=OF and ZF=0
JE 等于则跳转 ZF=1/cmp 目的,源操作数相等
JNE 不等于则跳转 ZF=0/cmp 目的,源操作数不相等
JZ 为零则跳转 ZF=1
JNZ 不为零则跳转 ZF=0
JS 负数则跳转 SF=1
JNS 非负数则跳转 SF=0
JC 有进位则跳转 CF=1
JNC 无进位则跳转 CF=0
JO 溢出则跳转 OF=1
JNO 无溢出则跳转 OF=0
JP 奇偶位为1则跳转 PF=1
JNP 奇偶位为0则跳转 PF=0
JPO 奇校验则跳转
JPE 偶校验则跳转
JCXZ CX=0
JECXZ ECX=0
JRCXZ RCX=0
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2xk0JyO908yA   2024年05月17日   60   0   0 其他语言
JLRoSClrxNx7
作者其他文章 更多