汇编指令大全

上传人:206****923 文档编号:37682035 上传时间:2018-04-20 格式:DOC 页数:24 大小:69.50KB
返回 下载 相关 举报
汇编指令大全_第1页
第1页 / 共24页
汇编指令大全_第2页
第2页 / 共24页
汇编指令大全_第3页
第3页 / 共24页
汇编指令大全_第4页
第4页 / 共24页
汇编指令大全_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《汇编指令大全》由会员分享,可在线阅读,更多相关《汇编指令大全(24页珍藏版)》请在金锄头文库上搜索。

1、80888088 汇编指令表汇编指令表 一、数据传输指令一、数据传输指令 它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据. . 1.1. 通用数据传送指令通用数据传送指令. . MOVMOV 传送字或字节传送字或字节. . MOVSXMOVSX 先符号扩展先符号扩展, ,再传送再传送. . MOVZXMOVZX 先零扩展先零扩展, ,再传送再传送. . PUSHPUSH 把字压入堆栈把字压入堆栈. . POPPOP 把字弹出堆栈把字弹出堆栈. . PUSHAPUSHA 把把 AX,CX,DX,BX,SP,BP,SI,DIAX,CX,

2、DX,BX,SP,BP,SI,DI 依次压入堆栈依次压入堆栈. . POPAPOPA 把把 DI,SI,BP,SP,BX,DX,CX,AXDI,SI,BP,SP,BX,DX,CX,AX 依次弹出堆栈依次弹出堆栈. . PUSHADPUSHAD 把把 EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDIEAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI 依次压入堆栈依次压入堆栈. . POPADPOPAD 把把 EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAXEDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX 依次弹出堆栈依次弹出堆栈. . BSW

3、APBSWAP 交换交换 3232 位寄存器里字节的顺序位寄存器里字节的顺序 XCHGXCHG 交换字或字节交换字或字节.(.( 至少有一个至少有一个*作数为寄存器作数为寄存器, ,段寄存器不可作为段寄存器不可作为*作数作数) ) CMPXCHGCMPXCHG 比较并交换比较并交换*作数作数.(.( 第二个第二个*作数必须为累加器作数必须为累加器 AL/AX/EAXAL/AX/EAX ) ) XADDXADD 先交换再累加先交换再累加.(.( 结果在第一个结果在第一个*作数里作数里 ) ) XLATXLAT 字节查表转换字节查表转换. . BXBX 指向一张指向一张 256256 字节的表的起

4、点字节的表的起点, , ALAL 为表的索引值为表的索引值 (0-255,(0-255,即即 0-FFH);0-FFH); 返回返回 ALAL 为查表结果为查表结果. . ( ( BX+AL-ALBX+AL-AL ) ) 2.2. 输入输出端口传送指令输入输出端口传送指令. . ININ I/OI/O 端口输入端口输入. . ( ( 语法语法: : ININ 累加器累加器, , 端口号端口号DXDX ) ) OUTOUT I/OI/O 端口输出端口输出. . ( ( 语法语法: : OUTOUT 端口号端口号DX,DX,累加器累加器 ) ) 输入输出端口由立即方式指定时输入输出端口由立即方式指

5、定时, , 其范围是其范围是 0-255;0-255; 由寄存器由寄存器 DXDX 指定时指定时, , 其范围是其范围是 0-65535.0-65535. 3.3. 目的地址传送指令目的地址传送指令. . LEALEA 装入有效地址装入有效地址. . 例例: : LEALEA DX,stringDX,string ; ;把偏移地址存到把偏移地址存到 DX.DX. LDSLDS 传送目标指针传送目标指针, ,把指针内容装入把指针内容装入 DS.DS. 例例: : LDSLDS SI,stringSI,string ; ;把段地址把段地址: :偏移地址存到偏移地址存到 DS:SI.DS:SI. L

6、ESLES 传送目标指针传送目标指针, ,把指针内容装入把指针内容装入 ES.ES. 例例: : LESLES DI,stringDI,string ; ;把段地址把段地址: :偏移地址存到偏移地址存到 ES:DI.ES:DI. LFSLFS 传送目标指针传送目标指针, ,把指针内容装入把指针内容装入 FS.FS. 例例: : LFSLFS DI,stringDI,string ; ;把段地址把段地址: :偏移地址存到偏移地址存到 FS:DI.FS:DI. LGSLGS 传送目标指针传送目标指针, ,把指针内容装入把指针内容装入 GS.GS. 例例: : LGSLGS DI,stringDI,

7、string ; ;把段地址把段地址: :偏移地址存到偏移地址存到 GS:DI.GS:DI. LSSLSS 传送目标指针传送目标指针, ,把指针内容装入把指针内容装入 SS.SS. 例例: : LSSLSS DI,stringDI,string ; ;把段地址把段地址: :偏移地址存到偏移地址存到 SS:DI.SS:DI. 4.4. 标志传送指令标志传送指令. . LAHFLAHF 标志寄存器传送标志寄存器传送, ,把标志装入把标志装入 AH.AH. SAHFSAHF 标志寄存器传送标志寄存器传送, ,把把 AHAH 内容装入标志寄存器内容装入标志寄存器. . PUSHFPUSHF 标志入栈标

8、志入栈. . POPFPOPF 标志出栈标志出栈. . PUSHDPUSHD 3232 位标志入栈位标志入栈. . POPDPOPD 3232 位标志出栈位标志出栈. . 二、算术运算指令二、算术运算指令 ADDADD 加法加法. . ADCADC 带进位加法带进位加法. . INCINC 加加 1.1. AAAAAA 加法的加法的 ASCIIASCII 码调整码调整. . DAADAA 加法的十进制调整加法的十进制调整. . SUBSUB 减法减法. . SBBSBB 带借位减法带借位减法. . DECDEC 减减 1.1. NECNEC 求反求反( (以以 0 0 减之减之).). CMP

9、CMP 比较比较.(.(两两*作数作减法作数作减法, ,仅修改标志位仅修改标志位, ,不回送结果不回送结果).). AASAAS 减法的减法的 ASCIIASCII 码调整码调整. . DASDAS 减法的十进制调整减法的十进制调整. . MULMUL 无符号乘法无符号乘法. . IMULIMUL 整数乘法整数乘法. . 以上两条以上两条, ,结果回送结果回送 AHAH 和和 AL(AL(字节运算字节运算),),或或 DXDX 和和 AX(AX(字运算字运算),), AAMAAM 乘法的乘法的 ASCIIASCII 码调整码调整. . DIVDIV 无符号除法无符号除法. . IDIVIDIV

10、 整数除法整数除法. . 以上两条以上两条, ,结果回送结果回送: : 商回送商回送 AL,AL,余数回送余数回送 AH,AH, ( (字节运算字节运算);); 或或 商回送商回送 AX,AX,余数回送余数回送 DX,DX, ( (字运算字运算).). AADAAD 除法的除法的 ASCIIASCII 码调整码调整. . CBWCBW 字节转换为字字节转换为字. . ( (把把 ALAL 中字节的符号扩展到中字节的符号扩展到 AHAH 中去中去) ) CWDCWD 字转换为双字字转换为双字. . ( (把把 AXAX 中的字的符号扩展到中的字的符号扩展到 DXDX 中去中去) ) CWDECW

11、DE 字转换为双字字转换为双字. . ( (把把 AXAX 中的字符号扩展到中的字符号扩展到 EAXEAX 中去中去) ) CDQCDQ 双字扩展双字扩展. . ( (把把 EAXEAX 中的字的符号扩展到中的字的符号扩展到 EDXEDX 中去中去) ) 三、逻辑运算指令三、逻辑运算指令 ANDAND 与运算与运算. . OROR 或运算或运算. . XORXOR 异或运算异或运算. . NOTNOT 取反取反. . TESTTEST 测试测试.(.(两两*作数作与运算作数作与运算, ,仅修改标志位仅修改标志位, ,不回送结果不回送结果).). SHLSHL 逻辑左移逻辑左移. . SALSA

12、L 算术左移算术左移.(=SHL).(=SHL) SHRSHR 逻辑右移逻辑右移. . SARSAR 算术右移算术右移.(=SHR).(=SHR) ROLROL 循环左移循环左移. . RORROR 循环右移循环右移. . RCLRCL 通过进位的循环左移通过进位的循环左移. . RCRRCR 通过进位的循环右移通过进位的循环右移. . 以上八种移位指令以上八种移位指令, ,其移位次数可达其移位次数可达 255255 次次. . 移位一次时移位一次时, , 可直接用可直接用*作码作码. . 如如 SHLSHL AX,1.AX,1. 移位移位11 次时次时, , 则由寄存器则由寄存器 CLCL

13、给出移位次数给出移位次数. . 如如 MOVMOV CL,04CL,04 SHLSHL AX,CLAX,CL 四、串指令四、串指令 DS:SIDS:SI 源串段寄存器源串段寄存器 : :源串变址源串变址. . ES:DIES:DI 目标串段寄存器目标串段寄存器: :目标串变址目标串变址. . CXCX 重复次数计数器重复次数计数器. . AL/AXAL/AX 扫描值扫描值. . D D 标志标志 0 0 表示重复表示重复*作中作中 SISI 和和 DIDI 应自动增量应自动增量; ; 1 1 表示应自动减量表示应自动减量. . Z Z 标志标志 用来控制扫描或比较用来控制扫描或比较*作的结束作

14、的结束. . MOVSMOVS 串传送串传送. . ( ( MOVSBMOVSB 传送字符传送字符. . MOVSWMOVSW 传送字传送字. . MOVSDMOVSD 传送双字传送双字. . ) ) CMPSCMPS 串比较串比较. . ( ( CMPSBCMPSB 比较字符比较字符. . CMPSWCMPSW 比较字比较字. . ) ) SCASSCAS 串扫描串扫描. . 把把 ALAL 或或 AXAX 的内容与目标串作比较的内容与目标串作比较, ,比较结果反映在标志位比较结果反映在标志位. . LODSLODS 装入串装入串. . 把源串中的元素把源串中的元素( (字或字节字或字节) )逐一装入逐一装入 ALAL 或或 AXAX 中中. . ( ( LODSBLODSB 传送字符传送字符.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号