汇编指令大全+很全的汇编指令.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:22 大小:270KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

汇编指令大全+很全的汇编指令.pdf

汇编指令大全+很全的汇编指令.pdf

预览

免费试读已结束,剩余 12 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

汇编汇编汇编指令大全汇编指令大全指令大全指令大全零零零、零、、、状状状状态态态态寄存器寄存器寄存器寄存器1MOVE数据传送指令MOV说明:格式:MOVOPRD1,OPRD21.OPRD1为目的操作数,可以是寄存器、存储器、累加器.功能:本指令将一个源操作数送到目的操作数OPRD2为源操作数,可以是寄存中,即OPRD1<--OPRD2.器、存储器、累加器和立即数.2.MOV指令以分为以下四种情况:<1>寄存器与寄存器之间的数据传送指令<2>立即数到通用寄存器数据传送指令<3>寄存器与存储器之间的数据传送指令<4>立即数到存储器的数据传送3.本指令不影响状态标志位2PUSH堆栈操作指令PUSH和POP说明:1.OPRD为16位(字)操作数,可以格式:PUSHOPRD是寄存器或存储器操作数.POPOPRD2.PUSH的操作过程是:(SP)<--(SP)-2,((sp))<--OPRD即先修功能:实现压入操作的指令是PUSH指令;实现弹出改堆栈指针SP(压入时为自动减操作的指令是POP指令.2),然后,将指定的操作数送入新的栈顶位置.此处的((SP))<--OPRD,也可以理解为:[(SS)*16+(SP)]<--OPRD或[SS:SP]<--OPRD3POPPOPPOP堆栈操作指令PUSH和POP说明:格式:PUSHOPRD1.OPRD为16位(字)操作数,可以是寄存器或存储器操作数.POPOPRD2.POP指令的操作过程是:POP功能:实现压入操作的指令是PUSH指令;实现弹出OPRD:OPRD<--((SP)),(SP)<--操作的指令是POP指令.(SP)+2它与压入操作相反,是先弹出栈顶的数顶,然后再修改指针SP的内容.3.示例:POPAXPOPDSPOPDATA1POPALFA[BX][DI]4.PUSH和POP指令对状态标志位没有影响.4XCHGXCHGXCHG数据交换指令XCHG说明:格式:XCHGOPRD1,OPRD2其中的OPRD1为目的操作1.OPRD1及OPRD2可为通用寄存数,OPRD2为源操作数器或存储器,但是两个存储器之间是不能用XCHG指令实现的.功能:将两个操作数相互交换位置,该指令把源操作数OPRD2与目的操数OPRD1交换.2.段寄存器内容不能用XCHG指令来交换.3.若要实现两个存储器操作数DATA1及DATA2的交换,可用以下指令实现:示例:PUSHDATA1页码,1/22PUSHDATA2POPDATA1POPDATA24.本指令不影响状态标志位.5XLATXLATXLAT查表指令XLAT说明:格式:XLATTABLE其中TABLE为一待查表格的首地1.在执行该指令前,应将TABLE址.先送至BX寄存器中,然后将待查字节与在表格中距表首地址位移功能:把待查表格的一个字节内容送到AL累加器量送AL,即(AL)<--((BX)+中.(AL)).2.本指令不影响状态标位,表格长度不超过256字节.6LAHFLAHFLAHF标志传送指令LAHF说明:该指令不影响FLAG的原来内容,AH只是复制了原FLAG的低8格式:LAHF位内容.功能:取FLAG标志寄存器低8位至AH寄存器.(AH)<--(FLAG)7~07SAHFSAHFSAHF标志传送指令SAHF说明:本指令将用AH的内容改写FLAG标志寄存器中的SF、ZF、格式:SAHFAF、PF、和CF标志,从而改变原来的标志位.功能:将AH存至FLAG低8位8PUSHFPUSHFPUSHF标志传送指令PUSHF格式:PUSHF功能:本指令可以把标志寄存器的内容保存到堆栈中去9POPFPOPFPOPF标志传送指令POPF说明:如果对堆栈中的原FLAG内容进行修改,如对TF等标志位进格式:POPF行修改,然后再弹回标志位寄存器FLAG.这是通过指令修改TF标功能:本指令的功能与PUSHF相反,在子程序调用和志的唯一方法.中断服务程序中,往往用PUSHF指令保护FLAG的内容,用POPF指令将保护的FLAG内容恢复.10LEALEALEA有效地址传送指令LEA说明:格式:LEAOPRD1,OPRD21.OPRD1为目的操作数,可为任意一个16位的通用寄存器.功能:将源操作数给出的有效地址传送到指定的的寄存器中.OPRD2为源操作数,可为变量名、标号或地址表达式.示例:LEABX,DATA1LEADX,BETA[BX+SI]LEABXBX,[BP],[DI]2.本指令对标志位无影响。11LDSLDSLDS从存储器取出32