汇编语言学习整理

命令 功能 注释举例
add ADD DATA[SI],AL 向data的第si位加 AL的值

sub

SUB  AL,37h

dec

减  -1  
inc 加  +1  
mov 移动、获取

MOV BX,BUFFER

LEA   BX,BUFFER = MOV  BX. OFFSET BUFFER

mov送值,lea送地址

LEA

目的地址传送指令

取有效地址指令

     

JMP

无条件转移
向后引用的标号可以不写运算符 SHORT
target :…               ;先定义标号 target
:                            ;相对位移量不超过-128~+ 127
JMP target              ;后引用标号 target
向前引用的标号应当写明运算符 SHORT
JMP SHORT target   ;先引用标号 target
:                             ;相对位移量不超过-128~+ 127
target :…                ;此处定义标号 target
 

JNE/JNZ

JS

扫描二维码关注公众号,回复: 9108452 查看本文章

JNS

JP/JPE

JNP/JPO

JO

JNO

JC

JNC

JB/JNAE

JAE/JNB

JA/JNBE

JBE/JNA

JG/JNLE

JGE/JNL

JL/JNGE

JLE/JNG

JCXZ

不等于 / 非零转移 JNE/JNZ (ZF) 1
负转移 JS (SF) 1
正转移 JNS (SF) 0
偶转移 JP/JPE (PF) 1
奇转移 JNP/JPO (PF) 0
溢出转移 JO (OF) 1
不溢出转移 JNO (OF) 0
进位转移 JC (CF) 1
不进位转移 JNC (CF) 0
低于 / 不高于或不等于转移 JB/JNAE (CF) 1 无符号数
高于或等于 / 不低于转移 JAE/JNB (CF) 0 无符号数
高于 / 不低于或不等于转移 JA/JNBE (CF) 0 (ZF) 0 无符号数
低于或等于 / 不高于转移 JBE/JNA (CF) 1 (ZF) 1 无符号数
大于 / 不小于或不等于转移 JG/JNLE (SF) (OF) (2F) 0 带符号数
大于或等于 / 不小于转移 JGE/JNL (SF) (OF) 带符号数
小于 / 不大于或不等于转移 JL/JNGE (SF) (OF) (ZF) 0 带符号数
小于或等于 / 不大于转移 JLE/JNG (SF) (OF) (ZF) 1 带符号数
CX 等于零转移 JCXZ (CX) 0
   
 
     
HLT 停止  
     
NEG 求负数或绝对值  
CMP 比较
执行比较指令 CMP 后,被比较的两个操作数内容均保持不变,而比较结果反映在标志寄存器中
MUL/IMUL 有符号/无符号乘法  
DIV/IDIV 无符号除法/带符号  
     
CBW 字节扩展 change byte(8bit) to word(16bit)
CWD 字扩展 change word to double word(32bit)
     
ADD  

OR

 
XOR 异或  
NOR  
     
SHL 左移 shift left
SHR 右移 0100 -> 0010
SAR 算数右移 0100 ->0110
ROL/RCL 循环左移  
ROR/RCR 循环右移  

循环控制指令
loop            本指令的操作是先将 CX 的内容减 1,如结果不等于零,则转到指令中指定的短标号处;否则,顺序执行下一条指令。
loope/loopz        本指令的操作是先将 CX 的内容减 1,如结果不等于零,且零标志(ZF)=1 则转移到指定的短标号。 值等于零的情况
loopne/loopnz    本指令的操作是先将 CX 的内容减 1,如结果不等于零,且零标志(ZF)=0 则转移到指定的短标号。值不等于零的情况

过程调用指令
call                    相当于调用一个固定的函数
过程返回指令
ret                        类似于函数里的return

串操作指令共有以下五条:串传送指令(MOVS)、串装入指令(LODS)、串送存指令(STOS)、串比较指令(CMPS)和串扫描指令(SCAS)。


一般情况下,汇编语言的语句可以由 1~4 部分构成:
[名字:] 助记符 [操作数] [;注释] 
其中带方括号的部分表示任选项,既可以有,也可以没有。如:
LOOPER: MOV AL,DATA[SI] ;取一个字节数
DATAl DB 0F8H,60H,0ACH,74H,3BH ;定义数组

发布了64 篇原创文章 · 获赞 3 · 访问量 4585

猜你喜欢

转载自blog.csdn.net/qq_37631516/article/details/103184200