计算机系统之汇编---IA32处理器数据格式及数据操作
计算机系统之汇编---IA32处理器数据格式及数据操作
IA32数据格式:
Intel用术语“字”表示16位数据类型,因此。称32位数为“双字”,称64位数为“四字”。
Char*这里指的是全部指针类型。注意:c语言新添加的long long是八字节,可是硬件IA32不支持这个类型。
寄存器(8个32位的寄存器,均以%e开头)
%eax、%ecx、%edx:调用者保存(数据)寄存器。当过程p调用q。q能够覆盖这些寄存器。可是不会改变p中的数据。
%ebx、%esi、%edi:被调用者保存(数据)寄存器。当过场p调用q。q必须在覆盖这些寄存器数据前。要把它们保存到栈,
并在调用结束返回时恢复它们,这些数据p或其它过程须要它们。
%esp、%ebp:有关栈指针的
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQva2VzaGFjb29raWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
大多数指令有一个或多个操作数。指示出运行一个操作中要引用的源数据值,以及放置结果的目标位置。
源数据值能够以常数形式给出。或从寄存器或存储器中读出,结果能够保存放在寄存器或存储器中。
操作数分三种:
>>>1. 马上数即常数,用$开头。后面加一个整数表示;
>>>2. 寄存器数,对字操作而言表示某个寄存器中的保存的值;对字节操作而言是8个单字节寄存器中的 一个,比方:%al(eax寄存器中的低8位)
>>>3. 存储器引用,依据计算出的有效地址来訪问存储器的某个位置。包含四部分:马上数偏移(lmm)、基址寄存器 Eb、变址寄存器 Ei、比例因子s。 有效地址被计算为 Imm + R[Eb] + R[Ei] * s。
(R[Eb]表示寄存器Eb的值,R[Ei]表示寄存器Ei的值。s的值仅仅能是1,2,4或者8) 下表中Mb[addr] 表示对存储器在存储器中从地址addr開始的b个字节值的引用。
有关操作数格式表
比如:地址0x100的值是56,那么操作数0x100的值就是56。属于绝对寻址;$0x100的值0x100,是马上数寻址;
计算机系统之汇编---IA32处理器数据格式及数据操作的更多相关文章
- Intel汇编语言程序设计学习-第二章 IA-32处理器体系结构-下
2.2 IA-32处理器体系结构 如前所述,IA-32是指始于Intel386直到当前最新的奔腾4的系列的处理器(额...这本书是什么时候写的啊,表示现在应该是I7啊),在IA-32的发展过程中,I ...
- 为什么在保护模式下IA-32处理器最高可访问4GB的内存
在保护模式下,IA-32处理器可访问最高达4GB的内存,这是32位无符号二进制整数地址能够寻址的上限. 今天看汇编的时候发现书里带过一句,不太明白为什么内存上限是4GB,就搜了一下,总结了一下答案. ...
- [svc]二三层数据格式&&三层数据如何匹配路由
网络知识拾遗 tcpip的4&7层模型 PDU数据包在不同层的不同称呼 物理层(一层)PDU指数据位(Bit). 数据链路层(二层)PDU指数据帧(Frame). 网络层(三层)PDU指数据包 ...
- layui中使用自定义数据格式对数据表格进行渲染
1.引入 <link rel="stylesheet" href="../layui/css/layui.css"> <script src= ...
- SQL不同服务器数据库之间的数据操作整理(完整版)
---------------------------------------------------------------------------------- -- Author : htl25 ...
- (转)JSON数据格式和js操作json总结
原:http://niutuku.com/tech/javaScript/273643.shtml JSON数据格式和js操作json总结 来源:niutuku.com | vince ...
- SQLServer服务器数据库之间的数据操作(完整版)
分类: 数据库开发技术 ---------------------------------------------------------------------------------- -- Au ...
- 转载-SQL不同服务器数据库之间的数据操作整理(完整版) .
---------------------------------------------------------------------------------- -- Author : htl25 ...
- solr数据操作
本文介绍solr的基本数据操作,基于solr 8.2.solr支持多种数据格式,包括XML,JSON,CSV等,并提供多种脚本和工具来操作数据.本文讲解curl请求和JSON数据格式的处理方式. 本文 ...
随机推荐
- SELECT使用子查询
SELECT使用子查询 SELECT使用子查询,该子查询会执行多次, 次数是由记录数量决定.效率比较低,不推荐使用. //查询部门编号,工资大于等于2000的人数, //工资小于2000的人 ...
- WINSERVER-IIS-无法启动
报错信息:无法启动计算机上的服务W3SVC 开始百度,多数教程是这样写的 修复错误 运行命令提示符 fsutil resource setautoreset true c:\ 打开运行输入 servi ...
- HDU 4339 Contest 4
树状数组,主要是抓住要求连续1的个数.这样,初始时,相同的加1,不同的加0. 查询时,用二分搜索右边界.就是比较当前mid-l+1的值与他们之间1的个数(这可以通过树状数组求区间和得出),记录右边界即 ...
- Android动态加载字节码
概述 面对App业务逻辑的频繁变更,如果每一次改变都对App进行一次升级,会降低App的用户体验,那么App进行模块化升级(这里与增量升级是不同的)是很好的解决方案,让用户在完全无感觉的情况下改变Ap ...
- [TS] Class Properties Public, Private and Read Only Modifiers
In the constructor, we want to set the prop to readonly, you need to do like this: class Superhero { ...
- Linux下永久改动MAC地址和ifconfig命令总结
1. 固定一个MAC地址,特别是在使用多个虚拟机的时候 linux环境下: 用root身份登录,在/etc/rc.d/rc.local里加上这三句 ifconfig eth0 down ifconfi ...
- NYOJ 815 三角形【海伦公式】
/* 关键点:海伦公式 解题人:lingnichong 解题时间:2014-10-04 21:48:47 解题体会:海伦公式的使用 */ 三角形 时间限制:1000 ms | 内存限制:65535 ...
- _00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用)
博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...
- 制作可以SSH的Docker容器
以 Ubuntu 16.04为例: Docker里的root密码是随机的, 用passwd来设置新的密码 安装完SSH_SERVER后, 默认是不能用root登录的. vi /etc/ssh/sshd ...
- 【原创】rman备份出现ORA-19625
[oracle@sunny stage]$ rman target / Recovery Manager: Release 10.2.0.1.0 - Production on Sun Mar 18 ...