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 在多处理器环境下,锁定总线,保证指令执行的原子性
相关推荐
一水鉴天3 小时前
整体设计 之 绪 思维导图引擎 之 引 认知系统 之 序 认知元架构 从 三种机器 和 PropertyType 到认知 金字塔 之2(豆包助手)
架构·认知科学
程思扬7 小时前
利用JSONCrack与cpolar提升数据可视化及跨团队协作效率
网络·人工智能·经验分享·docker·信息可视化·容器·架构
从零开始学习人工智能8 小时前
快速搭建B/S架构HTML演示页:从工具选择到实战落地
前端·架构·html
小小工匠8 小时前
架构思维: 高并发场景下的系统限流实战
架构·限流算法·限流实战
流影ng10 小时前
【HarmonyOS】MVVM与三层架构
华为·架构·harmonyos
虫小宝12 小时前
返利app的消息队列架构:基于RabbitMQ的异步通信与解耦实践
分布式·架构·rabbitmq
梦中的天之酒壶13 小时前
多级缓存架构
缓存·架构
眠りたいです14 小时前
基于脚手架微服务的视频点播系统-数据管理与网络通信部分的预备工作
c++·qt·ui·微服务·云原生·架构·媒体
sheepwjl15 小时前
《嵌入式硬件(十二):基于IMX6ULL的时钟操作》
汇编·arm开发·单片机·嵌入式硬件·时钟·.s编译
虫小宝16 小时前
返利软件的分布式缓存架构:Redis集群在高并发场景下的优化策略
分布式·缓存·架构