x86 架构下一些常用的汇编指令英文全称与功能简述

汇编语言中的汇编指令众多,以下列举 x86 架构下一些常见的汇编指令:

指令类别 指令 英文全称 功能简述
数据传送 MOV Move 将源操作数复制到目标操作数
LEA Load Effective Address 加载有效地址到指定寄存器
PUSH Push onto the stack 将操作数压入堆栈
POP Pop from the stack 从堆栈弹出操作数到指定位置
算术运算 ADD Addition 加法运算
SUB Subtraction 减法运算
MUL Multiply 无符号乘法运算
IMUL Integer Multiply 有符号乘法运算
DIV Divide 无符号除法运算
IDIV Integer Divide 有符号除法运算
逻辑运算 AND Logical AND 逻辑与运算
OR Logical OR 逻辑或运算
XOR Exclusive OR 逻辑异或运算
NOT Logical NOT 逻辑非运算
控制转移 JMP Jump 无条件跳转
JZ Jump if Zero 结果为零则跳转
JNZ Jump if Not Zero 结果不为零则跳转
CALL Call a subroutine 调用子程序
RET Return from a subroutine 从子程序返回
串操作 MOVS Move String 移动字节串 / 字串
CMPS Compare String 比较字节串 / 字串
SCAS Scan String 扫描字节串 / 字串中的特定值
处理器控制 CLC Clear Carry Flag 清除进位标志位
STC Set Carry Flag 设置进位标志位
CLI Clear Interrupt - Enable Flag 清除中断允许标志位
STI Set Interrupt - Enable Flag 设置中断允许标志位

这只是汇编指令的一部分,实际上还有如循环控制指令(LOOP 等)、位操作指令(如 SHL - Shift Left 等)等许多其他指令,并且不同的汇编器和 CPU 架构也会有一些特殊指令。

以下是一些更多的汇编语言指令

指令类别 指令 英文全称 功能描述
数据传送 MOVSX Move with Sign - extension 将源操作数传送到目标操作数,同时进行符号扩展
MOVZX Move with Zero - extension 将源操作数传送到目标操作数,同时进行零扩展
算术运算 INC Increment 将操作数的值加 1
DEC Decrement 将操作数的值减 1
NEG Negate 求操作数的相反数
逻辑运算 TEST Test 对两个操作数进行逻辑与操作,但不保存结果,只设置标志位
SHL Shift Left 将操作数左移指定的位数
SHR Shift Right 将操作数右移指定的位数,无符号数逻辑右移
SAR Shift Arithmetic Right 将操作数算术右移指定的位数,用于有符号数
ROL Rol 循环左移操作数
ROR Rot Right 循环右移操作数
控制转移 JA Jump if Above 当无符号数比较结果为大于时跳转
JAE Jump if Above or Equal 当无符号数比较结果为大于等于时跳转
JB Jump if Below 当无符号数比较结果为小于时跳转
JBE Jump if Below or Equal 当无符号数比较结果为小于等于时跳转
JG Jump if Greater 当有符号数比较结果为大于时跳转
JGE Jump if Greater or Equal 当有符号数比较结果为大于等于时跳转
JL Jump if Less 当有符号数比较结果为小于时跳转
JLE Jump if Less or Equal 当有符号数比较结果为小于等于时跳转
LOOP Loop 循环指令,循环次数由 CX 寄存器决定
LOOPE/LOOPZ Loop while Equal/Loop while Zero 当标志位 ZF = 1 且 CX > 0 时循环
LOOPNE/LOOPNZ Loop while Not Equal/Loop while Not Zero 当标志位 ZF = 0 且 CX > 0 时循环
串操作 STOS Store String 将 AL/AX/EAX 中的值存储到指定的内存单元串中
LODS Load String 将指定内存单元串中的值加载到 AL/AX/EAX 中
处理器控制 HLT Halt 使处理器进入暂停状态
WAIT Wait 使处理器进入等待状态,直到收到信号
ESC Escape 处理器交权给外部设备,用于协处理器操作
LOCK Lock 在多处理器环境下,锁定总线,保证指令执行的原子性
相关推荐
赤生云电竞30 分钟前
GPU算力共享平台架构实践:任务分发与资源隔离的关键配置
算法·架构·gpu算力
一条Go3 小时前
OnCall 时段路由:跨午夜、左闭右开与「Local 不是时区」
后端·架构·github
Dawson Zhu4 小时前
【LLM推理与Serving⑨】业务模型推理引擎开发:以BEV自动驾驶为例的专用推理实践
人工智能·语言模型·架构·aigc·agi
Anymous4 小时前
我手写的 Redis 锁,输给了 10 秒的 TTL
后端·架构
草莓熊Lotso5 小时前
【C++ 基于微服务的即时通讯系统】文件存储子服务实战:UUID生成、文件IO封装与全接口单元测试
开发语言·网络·数据库·c++·微服务·架构·单元测试
蜀黍@猿6 小时前
ARM 汇编入门(十):标量浮点与 VFP 指令全解析
汇编·arm开发·stm32·mcu
非优秀程序员16 小时前
第04章 邮箱大战,163 与 QQ 的暗战|《互联网产品恩仇录》
java·vue.js·架构
Dawson Zhu20 小时前
【LLM推理与Serving⑪】MoE推理与MLA:DeepSeek-V3架构下的显存与通信权衡
人工智能·语言模型·架构·aigc·agi
IT规划师1 天前
NET10 高并发架构契约与落地实现
架构·.net
浪遏1 天前
08|允许 AI 写文档之后,授权和审核怎样才算数
架构