汇编指令符号大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
80X86 汇编指令符号大全
+、-、*、/∶算术运算符。
&∶宏处理操作符。宏扩展时不识别符号和字符串中的形式参数,如果在形式参数前面加上一个& 记号,宏汇编程序就能够用实在参数代替这个形式参数了。
$∶地址计数器的值——记录正在被汇编程序翻译的语句地址。每个段均分配一个计数器,段内定义的所有标号和变量的偏移地址就是当前汇编地址计数器的值。
?∶操作数。在数据定义语句中,操作数用?,其作用是分配并保留存储空间,但不存入确定的数据。
=∶等号伪指令——符号定义。对符号进行定义和赋值,功能与EQU相似,但允许(重复)再定义。
:∶修改属性运算符(操作符)——段操作符。用来临时给变量、标号或地址表达式指定一个段属性(不用缺省的段寄存器),自动生成一个“跨段前缀字节”。注意,段寄存器CS和ES 不能被跨越,堆栈操作时也不能跨越SS。
;∶注释符号。
%∶特殊宏操作符,用来将其后的表达式(通常是符号常数,不能是变量名和寄存器名)转换成它所代表的数值,并将此数值的ASCII码嵌入到宏扩展中。
( )∶1.运算符——用来改变运算符的优先级别。2.教材符号,表示括号内存储单元(或寄存器)的内容。
< >∶宏调用时用来将带间隔符(如空格,逗号等)的字符串(作为实参)括起来。
[ ]∶1.运算符。方括号括起来的数是数组变量的下标或地址表达式。带方括号的地址表达式必须遵循下列原则,①只有BX、BP、SI、DI这四个寄存器可在方括号内出现;②BX或BP 可单独出现在各方括号中,也可以与常数、SI或DI一起出现在方括号内,但不允许BX和BP出现在同一个方括号内;③SI和DI可以单独出现在各方括号内,也可以与常数、BP或BX一起出现在方括号内,但不允许SI和DI出现在同一个方括号内;④一个方括号内包含多个寄存器时,它们只能作加法运算;⑤若方括号内包含基址指针BP,则隐含使用堆栈段寄存器SS提供段基址,否则均隐含使用数据段寄存器DS提供段基址。2.教材符号,表示其中的内容可省略。
.LIST∶伪指令。用于打开列表文件输出。
.RADIX∶伪指令。把缺省的基数改为2-16范围内的任意基数。.RADIX不影响DD、DQ、DT伪指令,在这些伪指令中,输入的数值只要没有加上数据类型就认为是十进制数。
.XLIST∶伪指令。用于关闭列表文件输出。
%OUT∶伪指令。在汇编时显示其后的信息。
AAA∶指令助记符——加法运算后的ASCII调整(非压缩的BCD码)。无操作数,调整的
加法结果在AL中。AF和CF的状态改变说明结果大于9。检查AL的低四位是否为合法的
BCD码(0-9),如果合法就清除AL的高四位以及AF和CF标志。当AL的低四位表示的数
大于9或AF=1时,将AL加6,AH加1 ,并使AF和CF置位,清除AL中的高四位。
任何一个A—F之间的数加上6 以后,都会使AL低4位产生0-9之间的数,从而达到调整
的目的。
AAD∶指令助记符——除法的ASCII调整(非压缩的BCD码)。在执行除法操作前,必须
利用AAD指令将非压缩型BCD码表示的数转换成二进制数送AL。步骤是,先将被除数的
高位数(AH中的内容)乘以10,然后加到AL的低位数中,接着将AH清零。
AAM∶指令助记符——乘法的ASCII调整(非压缩的BCD码)。用于将字节乘法的积转换
成两个合法的十进制非压缩码。AAM不带操作数,假定成绩在AH和AL中,并将调整后的
非压缩码送回AH和AL。为了保证AAM得到正确的结果,原乘数和被乘数必须是合法的非
压缩码。指令执行时,AAM 用10(0AH)除AL寄存器,并将除得的商和余数分别送AH
和AL寄存器,实现转换。
AAS∶指令助记符——减法运算后的ASCII调整(非压缩的BCD码)。检查AL的低四位
是否为合法的BCD码(0-9),如果合法就清除AL的高四位以及AF和CF标志。当AL的
低四位表示的数大于9或AF=1时,将AL减6,AH减1 ,并使AF和CF置1,清除
AL中的高四位。
80X86 汇编指令符号大全(下)
JLE∶指令助记符——(有符号数比较)小于或等于转移(等价于JNG)。当SF和OF异号或ZF=1时转移(段内直接短转移)。
JMP∶指令助记符——无条件转移。无条件转移到指令所指示的目标地址,并从该地址开始执行。
目标地址可以从指令中直接得到,也可以从指令中给定的寄存器或存储器中得到。
一、段内直接短转移JMP SHORT 标号。标号是转移的目的地址,由它确定一个8位位移量。
这个位移量被加到IP寄存器中。位移量是一个带符号数,负数表示向前转移,正数表示向后转移。
转移范围是—128至+127。
二、段内直接近转移JMP NEAR PTR 标号。标号是转移的目的地址,由它确定一个16位位
移量。这个位移量被加到IP寄存器中。位移量是一个带符号数,负数表示向前转移,正数表示向后转移。转移范围是—32768至+32767。
三、段内间接转移①JMP AX (段内寄存器间接转移);②JMP [BX](段内存储器间接转移)。
将指令中给定的寄存器或存储单元中的内容送到IP中。
四、段间直接转移JMP FAR PTR 标号。标号为符号地址。
JNB∶无符号数条件转移指令助记符——(无符号数比较)不低于转移(等价JAE)。CF=0,或
ZF=1 则转移(段内直接短转移)。
JNBE∶无符号数条件转移指令助记符——(无符号数比较)不低于且不等于转移(等价JA)。CF=0,且ZF=0 则转移(段内直接短转移)。
JNC∶简单条件转移指令助记符——前次操作无进或进位位转移。CF=0 则转移(段内直接短转移)。
JNE∶简单条件转移指令助记符——不相等转移(同JNZ)。前次操作结果不等于0,ZF=0 则转移(段内直接短转移)。
JNG∶指令助记符——(有符号数比较)不大于转移(等价于JLE)。当SF和OF异号或ZF=1时转移(段内直接短转移)。
JNGE∶指令助记符——(有符号数比较)不大于且不等于转移(等价于JL)。当SF和OF异号,且ZF=0 时转移(段内直接短转移)。
JNL∶指令助记符——(有符号数比较)不小于时转移(等价于JGE)。当SF和OF同号,或ZF =1,则转移(段内直接短转移)。
JNLE∶指令助记符——(有符号数比较)不小于且不等于转移(等价JG)。SF和OF同号,且ZF =0 时转移。
JNO∶简单条件转移指令助记符——前次操作无溢出转移。OF=0 则转移(段内直接短转移)。
JNP∶简单条件转移指令助记符——奇校验转移。PF=0 则转移(段内直接短转移)。
JNS∶简单条件转移指令助记符——前次操作结果为正数转移。SF=0 则转移(段内直接短转移)。
JNZ∶简单条件转移指令助记符——不相等转移(同JNE)。ZF=0 则转移(段内直接短转移)。
JO∶简单条件转移指令助记符——前次操作溢出转移。OF=1 则转移(段内直接短转移)。
JP∶简单条件转移指令助记符——偶校验转移。前次操作结果中1的个数是偶数,PF=1 则转移(段内直接短转移)。
JPE∶简单条件转移指令助记符——偶校验转移。前次操作结果中1的个数是偶数,PF=1 则转移(段内直接短转移)。
JPO∶简单条件转移指令助记符—奇校验转移。PF=0 则转移(段内直接短转移)。
JS∶简单条件转移指令助记符——前次操作结果为负数转移。SF=1 则转移(段内直接短转移)。
JZ∶简单条件转移指令助记符——相等转移(同JE)。ZF=1 则转移(段内直接短转移)。