指令类型
在 x86 架构中,汇编指令按功能可分为数据操作、流程控制、内存访问、系统控制 等类别
常见的数据传送类指令有mov、push、pop、Ida等。
常用的算术运行类指令有add、sub、mul、div、inc、dec、cmp等。
常用的逻辑运算类指令有and、or、xor、not、test等
常见的串指令则有movs、cmps、rep等。
常见的程序转移指令有jmp、jz、jnz、cal、ret、loop等。
常见的伪指令有proc、assume、end等。
数据传送指令(Data Transfer)

MOV不改变标志位,常用于初始化或数据转移;LEA计算地址但不访问内存。
算术运算指令(Arithmetic)

MOV EAX, 1000 ; 被乘数 MOV ECX, 500 ; 乘数 MUL ECX ; 结果高32位→EDX,低32位→EAX (EDX:EAX = 500,000)
逻辑与位操作指令(Bitwise)
XOR 清零:XOR EAX, EAX比 MOV EAX, 0更高效(机器码更短:31 C0vs B8 00 00 00 00)。
流程控制指令(Control Flow)

条件跳转本质:
CMP A, B= 计算 A - B并设置标志位 → 跳转指令检查标志位组合。
内存操作与栈指令(Memory & Stack)

CLD(清方向标志 DF=0 → 递增) / STD(设方向标志 DF=1 → 递减)
系统控制与中断指令(System)

高级扩展指令集(Modern x86)

调试与工具提示
反汇编查看:
GDB:disas /r function显示机器码及指令。
WinDbg:u 0x401000反汇编指定地址。
在线汇编器:
核心手册
Intel® 64 and IA-32 Architectures Software Developer Manuals
指令速查总结
🚚 通用数据传送指令速查表
| 指令 | 全称 | 功能说明 | 操作数格式 | 标志位影响 | 典型应用场景 |
|---|---|---|---|---|---|
| MOV | Move | 基础数据传送(寄存器/内存/立即数间复制) | MOV dst, src |
无 | MOV EAX, 10 |
| MOVSX |


1万+

被折叠的 条评论
为什么被折叠?



