学习汇编图文. 寄存器的特殊用法

在这里插入图片描述
在这里插入图片描述
32位 X86处理器

操作模式

1.保护模式
处理器的原生状态.所有的指令和特征都是可用的.分配给程序独立内存区域被称为段,处理器会阻止程序使用自身段范围之外的内存
2.实地址模式
程序需要直接访问系统内存和硬件设备
3.系统管理模式
向操作系统提供实现诸如电源管理和系统安全等功能的机制
4.虚拟8086模式
程序崩溃了或者向系统内存区域写数据,不会影响同一个时间内执行的其他程序

寄存器
在这里插入图片描述

寄存器的特殊用法

乘除指令默认使用EAX. 常被称为 拓展累加器
Cpu默认使用ECX位循环计数器
ESP用于寻址堆栈,常称为 拓展堆栈指针寄存器
ESI EDI用于高速存储器传输指令.常称为 拓展原变址与拓展目的变址
EBP 引用堆栈中的函数参数和局部变量常称为 拓展堆栈指针寄存器
EIP寄存器中包含下一条执行指令的地址
EFLAGS寄存器 包含 独立的二进制位,控制Cpu的操作

CF(进位标志位) 无符号算术运算结果太大了.设置该标志位
OF(溢出标志位) 有符号算术运算结果太大或者太小,设置该标志位
SF(符号标志位) 算术或逻辑产生负结果,设置该标志位
ZF(符号标志位)算术或逻辑产生0时,设置该标志位
PF(奇偶校验标志位) 包含偶数个1时,值为1.如果数据有可能被修改或损坏时,该标志为用于进行错误检测
AC(辅助进位标志位)算术操作在8位操作数中产生了位3向位4的进位时,设置该标志位

通用寄存器主要用于 算术运算,数据传输和逻辑操作
段寄存器存放预先分配的内存区域的基址


伪指令不在运行时执行.用来定义变量,宏和子程序
例子1:
myVar DWORD 26
mov eax,myVar

.code 伪指令标识的程序区段包含了可执行的指令.
.stack 伪指令标识的程序区段定义了运行时堆栈,并设置其大小

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值