32位汇编基础_cpu 寄存器
2024-08-21 00:29:28
32位通用寄存器
EAX EBX
ECX EDX
EBP ESP
ESI EDI
八个寄存器都可以作为普通的数据寄存器使用。
但有的有特殊的用途:
但有的有特殊的用途:
EAX 为累加器,
ECX 为计数器,
EBX,EBP 为基址寄存器,
ESI,EDI 为变址寄存器,
EBP 还可以是基指针,
ESP 为堆栈指针
16位通用寄存器
AX(累加器):一般用来存放参加运算的数据和结果,在乘、除法运算、I/O操作、BCD数运算中有不可替代的作用。
BX(基址寄存器):可作为数据寄存器,也可存放内存的逻辑偏移地址,而AX,CX,DX则不能。
CX(数据寄存器):即可作为数据寄存器,又可在串指令和移位指令中作为计数器。
DX(数据寄存器):除可作为通用寄存器外,还在乘、除法运算、带符号数的扩展指令中有特殊用途。
SI (源变地址寄存器):多用于存放内存的逻辑地址(隐含的逻辑段地址在数据段寄存器中),也可存放数据。
DI (目标变址寄存器):多用于存放内存的逻辑偏移地址(隐含的逻辑段地址在数据段寄存器中),也可存放数据。
BP(基址指针):用于存放内存的逻辑偏移地址(隐含的逻辑段地址在堆栈段寄存器中)。
SP(堆栈指针):用于存放栈顶的逻辑偏移地址(隐含的逻辑段地址在堆栈段寄存器中)。
16位段寄存器
CS(代码段寄存器):存放程序代码段起始地址的高16位。
DS(数据段寄存器):存放数据段起始地址的高16位。
SS(堆栈段寄存器):存放堆栈段起始地址的高16位。
ES(扩展段寄存器):存放扩展数据段地址的高16位。
最新文章
- CentOS下安装setuptools、pip和virtualenv
- 搭建XMPP协议,实现自主推送消息到手机
- XCode帮助文档离线下载解决办法
- CVT电子集团--笔试部分试题
- JQuery DataTable插件
- 错误处理try catch
- mybatis随笔四之MapperProxy
- 201521123039 《java程序设计》第十一周学习总结
- Asp.net Core2.0 缓存 MemoryCache 和 Redis
- linux文件与目录的创建
- nginx解决跨域
- bootstrap-datetimepicker.js的漢化注意點
- ServletContextListener的作用
- windows安装mysql8
- 6.装配Bean基于注解
- NDK 开发实例一(Android.mk环境配置下)
- 2018.11.24 poj3261Milk Patterns(后缀数组)
- 怎样使用Fiddler获取WebApi的token值?
- vue-cli脚手架安装
- google protocol buffer的原理和使用(三)
热门文章
- 【bzoj5170】Fable(树状数组)
- vue-Treeselect实现组织机构(员工)下拉树的功能
- 记一次Servlet中getAttribute的错误.
- HDU 1317 XYZZY(floyd+bellman_ford判环)
- Android多个Module统一配置相同jar或库的版本号
- Looper.loop() android线程中的消息循环
- 史上最强大的40多个纯CSS绘制的图形[转]
- 谈谈刚接触sea.js框架得看法
- 用Python操作Named pipe命名管道,实用做法——os.read 或 os.write
- <;NET CLR via c# 第4版>;笔记 第7章 常量和字段