32位汇编基础
来源:互联网 发布:java培训大概要多少钱 编辑:程序博客网 时间:2024/04/29 22:11
EAX 是Win32 API默认返回值存放处
ECX 是计数寄存器,可用于计算loop的循环次数
ESP 是堆栈指针
EBP 通常用来作为子程序局部变量指针
ESI 用于存放存储单元在段内的偏移量
mov ax,word prt[ebp-06]
将一个2字节的内存地址送入ax中
lea 寄存器,[ ]
装入有效地址,将一个存储单元的有效地址传送到目的操作数,举例:lea eax,[ebp-4c]
adc 操作对象1,操作对象2
功能:操作对象1=操作对象1+操作对象2+CF
sbb 操作对象1,操作对象2
功能:操作对象1=操作对象1-操作对象2-CF
inc
功能:++
dec
功能:--
cmp 操作对象1,操作对象2
功能:计算操作对象1-操作对象2,不会保存计算结果,但会改变相关标志寄存器的值
逻辑运算指令
and
or
xor
test
程序转移指令
call
retn/retf
je
jne
jb
jnb
ja
jna
leave
标志寄存器
ZF ZF标志位记录相关指令执行后,其结果是否为0。如果为0,那么ZF=1,如果结果不为0,那么ZF=0
PF PF标志是奇偶标志位,相关指令执行后,其结果的所有bit位中1的个数是否为偶数。如果1的个数为偶数,PF=1,如果为奇数,那么PF=0
SF SF是符号标志位,相关指令执行后,其结果是否为负。如果加过为负,SF=1;如果非负,SF=0
CF CF是进位标志位,在进行无符号数运算的时候,它记录了运算结果的最高有效位向更高的进位值,或从更高位的借位值。
ECX 是计数寄存器,可用于计算loop的循环次数
ESP 是堆栈指针
EBP 通常用来作为子程序局部变量指针
ESI 用于存放存储单元在段内的偏移量
mov ax,word prt[ebp-06]
将一个2字节的内存地址送入ax中
lea 寄存器,[ ]
装入有效地址,将一个存储单元的有效地址传送到目的操作数,举例:lea eax,[ebp-4c]
adc 操作对象1,操作对象2
功能:操作对象1=操作对象1+操作对象2+CF
sbb 操作对象1,操作对象2
功能:操作对象1=操作对象1-操作对象2-CF
inc
功能:++
dec
功能:--
cmp 操作对象1,操作对象2
功能:计算操作对象1-操作对象2,不会保存计算结果,但会改变相关标志寄存器的值
逻辑运算指令
and
or
xor
test
程序转移指令
call
retn/retf
je
jne
jb
jnb
ja
jna
leave
标志寄存器
ZF ZF标志位记录相关指令执行后,其结果是否为0。如果为0,那么ZF=1,如果结果不为0,那么ZF=0
PF PF标志是奇偶标志位,相关指令执行后,其结果的所有bit位中1的个数是否为偶数。如果1的个数为偶数,PF=1,如果为奇数,那么PF=0
SF SF是符号标志位,相关指令执行后,其结果是否为负。如果加过为负,SF=1;如果非负,SF=0
CF CF是进位标志位,在进行无符号数运算的时候,它记录了运算结果的最高有效位向更高的进位值,或从更高位的借位值。
- 32位汇编基础
- 32位的汇编!~~
- linux-32位汇编
- 32位汇编寄存器
- 32位汇编寄存器
- 32位汇编作业
- 32位汇编代码结构
- 32位汇编指令笔记
- 32位汇编语法总结
- 神州数码解密程序32位汇编版
- 32位CPU寄存器和汇编指令
- 32位CPU寄存器和汇编指令
- 32位汇编学习的一点心得
- 32位CPU寄存器和汇编指令
- 32位CPU寄存器和汇编指令
- [32位汇编系列]001- Hello World
- 32位嵌入式汇编――计时
- 32位CPU寄存器和汇编指令
- Log4j学习汇总—–配置详解
- Linux之进程组
- cocos2d-X 节点(UIInputManager.h)API
- cocos2d-X 节点(UILayer.h)API
- 喜欢的音乐
- 32位汇编基础
- linux驱动编译时make -C M= 解释
- redhat中libstd++.so.5找不到
- 乒乓缓冲类的设计(上)
- C# 线程练习1
- 乒乓缓冲类的设计(下)
- 百钱买百鸡——c语言算法实现
- Discuz! X3 瀑布流设置方法:
- A+B