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 在多处理器环境下,锁定总线,保证指令执行的原子性
相关推荐
ujainu10 小时前
Flutter + OpenHarmony 游戏开发进阶:主菜单架构与历史最高分持久化
flutter·游戏·架构·openharmony
qq_3129201114 小时前
Nginx+Keepalived双主架构:消除单点故障的最佳实践
运维·nginx·架构
Jia ming15 小时前
内存架构解析:UMA与NUMA对比
架构
爱内卷的学霸一枚15 小时前
现代微服务架构实践:从设计到部署的深度解析
windows·微服务·架构
迎仔16 小时前
13-云原生大数据架构介绍:大数据世界的“弹性城市”
大数据·云原生·架构
ALex_zry18 小时前
分布式缓存与微服务架构的集成
分布式·缓存·架构
贾修行18 小时前
企业级网络安全架构实战:从防火墙部署到远程办公全解析
web安全·架构·智能路由器
一只专注api接口开发的技术猿19 小时前
淘宝商品详情API的流量控制与熔断机制:保障系统稳定性的后端设计
大数据·数据结构·数据库·架构·node.js
小马爱打代码19 小时前
熔断限流从入门到实战:打造高可用微服务架构
微服务·云原生·架构
斯普信专业组20 小时前
Nacos-MCP 融合架构:运维nacos的MCP服务项目
运维·nacos·架构