1 / 22
文档名称:

汇编语言常见指令.docx

格式:docx   大小:1,591KB   页数:22页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

汇编语言常见指令.docx

上传人:Alone-丁丁 2022/2/26 文件大小:1.55 MB

下载得到文件列表

汇编语言常见指令.docx

文档介绍

文档介绍:汇编语言常见指令
设:(AX)= 8060H,(DX)=1234H
执行下列指令后
CBW
;(AX)= 0060H
设:(AX)= 8060H,(DX)=1234H
执行下列指ment):减一指令
格式:DEC dest
功能:dest←dest-1
dest(目的操作数):8/16位的寄存器/存储器
例:DEC CX ;CX←(CX) -1,16位运算
DEC X ;X←(X)-1,运算位数由X的类型确定
说明:
会影响标志OF, ZF, SF, PF, AF,但是CF标志不受影响;
减量指令常常用来修改计数器和存储器指针的值。
(4)NEG(Negate):求补指令(求相反数)
格式:NEG dest
功能:dest←0-dest
dest(目的操作数):8/16位的寄存器/存储器
例:
NEG Z ;Z←-Z,运算位数由Z的类型确定
说明:
会影响标志OF, ZF, SF, PF, AF, CF

(1)MUL(Unsigned Multiplication):无符号数乘法
格式:MUL src
src(源操作数):8位/16位的寄存器/存储器
功能:8位源操作数时:AX←(AL)×源操作数
16位源操作数时:DX, AX←(AX)×源操作数

说明:
两个N位操作数相乘,得到2N位的乘积;
如果乘积的高N位为0,则CF=OF=0,否则CF=OF=1。其余

标志位无意义。
上述说明中N=8或16。
(2)IMUL(Signed Integer Multiplication):有符号数乘法
格式:IMUL src
src(源操作数):8位/16位的寄存器/存储器
功能:8位源操作数时:AX←(AL)×源操作数
16位源操作数时:DX, AX←(AX)×源操作数
说明:
两个N位操作数相乘,得到2N位的乘积;
如果乘积高N位为低N位的符号扩展,则CF=OF=0,否则
CF=OF=1,其余标志位无意义。
上述说明中N=8或16。

DIV(Unsigned Division):无符号除法
格式:DIV src
src(源操作数):8位/16位的寄存器/存储器
功能:8位源操作数时: (AX)÷源操作数,AL←商,AH←余数
16位源操作数时:(DX, AX)÷源操作数,AX←商,DX←余数
说明:
两个N位操作数相除,应首先把被除数零扩展为2N位;
例如,要进行除法(AX)÷(BX),假设AX、BX内均为无符号数:
MOV DX, 0 ;32位被除数高16位清零
DIV BX ;(DX, AX)÷BX,AX←商,DX←余数
如果(2N位)÷(N位)的商大于2N-1,会产生“除法溢出”错误。
上述说明中N=8或16。
IDIV(Signed Integer Division):有符号数除法
格式:IDIV src
src(源操作数):8位/16位的寄存器/存储器
功能: 8位源操作数时:(AX)÷源操作数,AL←商,AH←余数
16位源操作数时:(DX, AX) ÷源操作数,AX←商,DX←余数
15. 基本循环指令
格式:LOOP 标号
功能:CX←(CX)-1
如果(CX)≠ 0,转向“标号”处执行,否则执行下一条指令。
说明:
LOOP可以改变指令的执行次序,称为“控制转移指令”;
LOOP指令使一段程序重复地执行,称为“循环”。
重复执行的次数由CX寄存器中的值决定。CX寄存器因此称为
“计数器”。
16.
反汇编
‘-U ’ 、 ‘-U 偏移地址’
显示寄存器内容
‘-R ’ 、 ‘-R 寄存器名’
单步执行指令
‘-T ’ 、 ‘-T 指令条数’ 、 ‘-P ’
全速执行指令
‘-G ’ 、 ‘-G 终止地址’、 ‘-G=起始地址’
‘-G=起始地址 终止地址’
显示数据段内容
‘-D ’ 、 ‘-D 起始地址’、 ‘-D 起始地址L字节数’
修改数据段内容
‘-E 起始地址 数据1 数据2 …’
‘-F 起始地址L字节数 数据1 数据2 …’
退出
‘-Q ’