Intel386汇编指令摘要

2.6.4 Intel386汇编指令摘要

在阅读Linux源代码时,你可能遇到很多汇编指令,有些是你熟悉的,有些可能不熟悉,在此简要列出一些常用的386汇编指令及其功能。

1. 位操作指令

    指令                                   功能

    BT                              位测试

       BTC                                   位测试并求反

       BTR                                   位测试并复位

       BTS                                          位测试并置位

2.控制转移类指令

    指令                                        功能

       CALL                                 调用过程

      JMP                                          跳转

       LOOP                                用ECX计数器的循环

       LOOPNZ/LOOPNE     用ECX计数器且不为0的循环/用ECX计数器且不等的循环

       RET                                   返回

3. 数据传输指令

   指令                                    功能

       IN                                  从端口输入

       LEA                                   装入有效地址

       MOV                                  传送

OUT                                  从段口输出

POP                                          从堆栈中弹出

POPA/POPAD                  从栈弹出至所有寄存器

PUSH                                 压栈

PUSH/PUSHAD        所有通用寄存器压栈

XCHG                                交换

4.标志控制类指令

    指令                                     功能

       CLC                                   清0进位标志

CLD                                   清0方向标志

CLI                                    清0中断标志

LAHF                                 将标志寄存器装入AH寄存器

POPF/POPFD                  从栈中弹出至标志位

PUSHF/PUSHFD             将标志压栈

       SAHF                          将AH寄存器存入标志寄存器

       STC                                   置进位标志

       STD                            置方向标志

       STI                             置中断标志

5.逻辑类指令

    指令                                功能

       NOT                       与         

       AND                           非

       OR                              或

       SAL/SHL                     算术作移/逻辑左移

       SAR                                   算术右移

       SHLD                          逻辑右移

       TEST                          逻辑比较

       XOR                           异或

6.串操作指令

       指令                                                  功能

     CMPS/CMPSB/CMPSW/CMPSD            比较串操作数

INS/INSB/INSW/INSD                         输入串操作数

LODS/LODSB/LODSW/LODSD           装入串操作数

MOVS/MOVSB/MOVSW/MOVSD   传送串操作数

REP                                                        重复

REPE/REPZ                                     相等时重复/为0时重复

SCAS/SCASB/SCASW/SCASD      扫描串操作数

STOS/STOSB/STOSW/STOSD        存储串操作数

7.多段类操作指令

     指令                          功能

CALL                        过程调用

INT                             中断过程的调用

INTO                          溢出中断过程的调用

IRET                          中断返回

JMP                                 跳转

LDS                                   将指针转入DS

LES                            将指针转入ES

LFS                                   将指针转入FS

LGS                                 将指针转入GS

LSS                           将指针转入SS

MOV                           段寄存器的传送

POP                                   从栈弹出至段寄存器

PUSH                         压栈

RET                                   返回

8.操作系统类指令

   指令                             功能

   APPL                调整请求特权级

   ALTS                                   清任务切换标志

   HLT                              暂停

   LAR                           加载访问权

   LGDT                           加载全局描述符表

   LIDT                              加载中断描述符表

   LLDT                           加载局部描述符表

   LMSW               加载机器状态字

   LSL                           加载段界限

   LTR                              加载任务寄存器

   MOV                            特殊寄存器的数据传送

   SGDT                           存储全局描述符表

   SIDT                            存储中断描述符表

   SMSW                          存储机器状态字

   STR                              存储任务寄存器

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值