逆向基础--汇编基础(字与物料地址) (004)

news/2025/11/2 11:55:08/文章来源:https://www.cnblogs.com/MrHSR/p/19181483

逆向基础--汇编基础(字与物料地址) (004)

一.字的存储

  我们听过字节的概念,1个字节等于8比特位,那么字和字节的关联是1个字等于2个字节。比特记为bit,字节记为Byte,字记为word,所以有如下关系:

  1Byte=8bits, 1word=2Bytes=16bits

  而8060CPU出于兼容性的考虑,一次性可以处理两种尺寸的数据:字节以及数据

  一个寄存器可以存储一个字数据,例如数据2000 D,其二进制数值为:0000 0111 1101 0000,存储格式如下:

image

  上述是从寄存器出发,描述了一个16位数据在寄存器中的存储格式,而我们在使用汇编的过程中还会操作内存,那么在内存中一个字又可以用怎么样的格式体现?

  内存单元是字节单元,也就是说一个字节单元对应一个内存单元当我们要保存一个字数据时,应该用两个地址连续的内存单元来保存。数据的低字节存放在低地址单元中,高字节存放在高地址单元中,假设我们从0地址开始存放2000 D(对应16进制 07D0 H),其中07是高字节,D0是低字节,内存单元是以16进制来体现的。如下所示:

image

  上图中用0、1两个单元用来存储一个字,同理也可以把2、3看成一个字单元 。

  字单元(wrod)是指:一种用来存储字型数据的内存单元。

  字 (Word):一个硬件和性能概念,是CPU的“标准数据集装箱”,大小固定,追求处理效率。

   一个16位的cpu,1字有2个字节的存储大小。

  一个32位的cpu ,1字有4个字节的存储大小。

  一个64位的cpu,1字有8个字节的存储大小。

   总结:内存单元属于内存,内存的最小单位是内存单元,每个单元用于存储一个字节 。 假设一台电脑有 8G内存 = 约85亿个内存单元(8 × 1024³ × 1024 × 1024个字节),每个内存单元都有唯一的地址,1个内存单元 = 1个字节 = 8个二进制位,  内存中实际存储的是二进制,但是以16进制体现(这是因为二进制表示太长,不便于人类阅读和书写。16进制是二进制的紧凑表示)。

      字长(Word Size)直接决定了CPU一次能处理的数据块有多大,以及能直接寻址的内存空间有多大。对于64位的cpu,一次能处理8个字节的数据,吞吐量提高了。

      通俗讲:字长好比高速公路,16位是2车道,32位是 4车道,64位是 8车道。车道越多,一次性能并行通过的车辆(数据)就越多,交通效率(计算速度)自然越高。 

 

二.物理地址与段地址

  CPU在访问内存单元之前,应该要给出内存单元的地址。所有的内存单元构成的存储空间是一个线性空间。每一个内存单元在这个空间中都有一个唯一的地址,称为物料地址。

  线性空间:内存单元按顺序排列是一维的空间,每个内存单元都有一个连续的地址编号,从0开始一直到内存的最大容量。这种线性结构使得CPU可以通过一个唯一的地址(物理地址)来访问每个内存单元。

  那么8086CPU具备如下特性:

    1) 一次最多可以处理16位的数据

    2)寄存器的最大宽度是16位

    3)寄存器和运算器之间的通路(传输的意思)为16位

  也就是说,8086CPU内部一次性能处理的数据长度最大为16位。它的地址总线是20位,在内部有一个地址加法器可以将两个16位地址合成一个20位的物理地址,示意图如下:

image

  当CPU要操作内存时,内部有如下事件发生:

    1) CPU中相关部件提供了两个16位地址,一个称为段地址,一个称为偏移地址

    2)段地址和偏移地址经过内部总线送入地址加法器

    3)地址加法器将两个16位地址合成一个20位的物料地址(用于找16位的内存单元,在8086CPU中字长为2字节,占用两个内存单元共16位)

    4)地址加法器将20位的物料地址通过内部总线送入输入输出控制电路

    5)输入输出控制电路将20位地址送入地址总线

    6)20位物理地址被地址总线送到存储器

  地址加法器采用:物料地址=段地址*16+偏移地址的方法来合成物料地址,这样一个16位机就可以访问20位地址,寻址能力(CPU能管理和访问多大的内存空间)也从64kb扩大成1MB。

  其中64kb是指H:0 -- 65535的地址编号,  而20位是指0 --(2的20次方)

  如果是10进制那么1 *10=10,如是是16进制那么12H*16=120H。

  例如:CPU要访问地址为123C8H的内存单元,地址加法器的工作过程为:

image

    20位的物料地址是指:段地址 × 16 + 偏移地址,下面用一个更生动的比喻来理解: 

原来的16位寻址(64KB):就像你只有一个16位的编号,只能管理一个很小的阅览室(64KB)里的书。8086的分段寻址(1MB):段地址(Segment):就像图书馆的楼层号或区域号(比如“2楼”或“A区”)。这个区域很大,而且起始位置是固定的。× 16 :这个操作相当于说,每个“区域”的起点都在一个很大的、对齐的位置上(比如,1区从0号书架开始,2区从10000号书架开始,3区从20000号书架开始...)。偏移地址(Offset):这是在你指定的区域内部的具体书架号。合成物理地址:你想找一本书,管理员需要先知道你它在哪个区域(段地址),然后在这个区域内找到具体的书架(偏移地址)。最终位置 = 区域的起始位置 + 区域内的书架号通过这种方式,使用两个16位的数字(区域号、书架号),组合起来就可以在远超64KB的整个1MB图书馆里定位任何一本书了。

   总结:通俗来说,街道就是整个内存空间(如8G内存空间),如果你想访问街道某栋房子(每栋楼是内存单元,可以单独寻址的“房子”是1个字节,意味着有80亿套这样的房子),你只需要说出门牌号(物理地址就是房子的门牌号,从0开始一直到80亿左右的一个唯一数字)即可。 

       一个8G的内存,有80亿个内存单元编号,20位的寻址无法覆盖8GB的内存。

        ---32位寻址:2^32 = 4,294,967,296 字节 = 4GB。

        ---64位寻址:2^64 = 18,446,744,073,709,551,616 字节 = 16EB(1EB=1024TB)。所以8GB的内存需要64位寻址。

    如果是16位寻址,最多生成65535的内存单元编号。只能覆盖64kb的内存空间。

    如果是20位寻址,最多生成2^20的内存单元编号,覆盖1MB的内存空间。

    如果是32位寻址,最多生成2^32 的内存单元编号,覆盖4GB的内存空间。

    如果是64位寻址,最多生成2^64的内存单元编号, 覆盖16EB的内存空间(cpu架构:windows系统x86-64,移动或mac的ARM64,目前市场64位是最见的)。

 

   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/953473.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年11月脸部泛红产品推荐榜:五款抗泛红精华横向对比与评价

秋风一起,脸颊就像被悄悄点燃:空调房一待就红,换季风一吹更红,口罩戴久了还伴随刺痒。很多人把“脸红”当成小事,直到拍照必须开美颜、开会不敢脱口罩、护肤品一上脸就刺痛,才意识到“泛红”其实是屏障受损的求救…

2025年11月美国投资移民机构评价榜:和中领衔十强深度对比

站在2025年四季度的时间点,计划通过EB-5或其他投资路径移居美国的家庭,普遍面临三大现实:排期长度仍存不确定性、项目合规审查趋严、服务机构信息过载却缺乏横向对比。对于高净值人群而言,一次决策涉及资金占用少则…

2025年11月脸部泛红产品推荐榜:敏感肌修护精华排名解析

秋风一起,脸颊就“报警”:冷风一吹、空调一烘,两坨高原红准时上线,拍照靠滤镜、出门靠口罩。你可能是刚入职场预算有限的社畜,也可能是产后屏障受损的新手妈妈,或者刷酸翻车、医美后脸像“关公”的护肤爱好者。大…

2025年11月脸部泛红产品推荐榜:敏感肌泛红精华实测排行

每到换季或熬夜后,脸颊突然发热、泛红、紧绷甚至刺痛,是敏感肌人群最熟悉的“警报”。2025年《中国皮肤性病学杂志》发布的敏感肌流行病学调查显示,18—45岁城市女性中,自述“面部易泛红”比例已升至46.7%,其中超…

1072:鸡尾酒疗法

【题目描述】 鸡尾酒疗法,指“高效抗逆转录病毒治疗”。人们在鸡尾酒疗法的基础上又提出了很多种改进的疗法。为了验证这些治疗方法是否在疗效上比鸡尾酒疗法更好,可用通过临床对照实验的方式进行。假设鸡尾酒疗法的…

2025年11月智能学习机品牌推荐:新课标同步学习机口碑排名榜

孩子放学回家,作业堆成山,家长却抽不出时间辅导;新课标变化快,旧资料跟不上;网课多而杂,难以判断哪些真正适合自家娃。这些场景几乎每天都在有学龄儿童的家庭上演。教育部数据显示,2024年全国中小学生日均在线学…

[SWPUCTF 2022 新生赛]funny_php WP

[SWPUCTF 2022 新生赛]funny_php WP 初看代码,发现获取 flag 的条件。 if(isset($_SESSION[L1])&&isset($_SESSION[L2])&&isset($_SESSION[L3])){include(flag.php);echo $flag; }$_SESSION[L1]=1 的…

2025年11月合肥律师事务所推荐榜:多维度实力对比与口碑评价

在合肥快速融入长三角一体化、商事活动日益频繁的背景下,企业与个人对“靠谱律师”的需求已从“熟人介绍”转向“数据化筛选”。用户常见场景包括:股权纠纷急需冻结对方资产、建设工程款拖欠需快速立案、婚姻家事涉及…

map[]使用补充

map[]使用补充map<ll,ll> m; // 这里的ll应该是long long的别名,但没有定义for(int i=0;;i++){ // 这是一个无限循环,没有终止条件cout<<m[i]; // 当访问不存在的键时,map会自动插入该键并将值初始化…

2025年11月婚礼前美白产品推荐榜:淡斑提亮精华口碑排行

婚礼前三个月,新娘护肤进入“冲刺期”,肤色暗沉、痘印色斑成为镜头前的最大焦虑。美白产品能否在有限时间内提亮肤色、淡化色斑,同时不刺激敏感肌,是准新娘们反复比对的核心痛点。2025年《中国美妆消费趋势报告》显…

2025年11月仓储管理系统推荐榜:鸿链云仓领衔十强对比评测

一、引言 仓储管理系统已成为供应链降本增效的核心枢纽,对同时管理多仓、多货主、多品类的企业尤为关键。2025年四季度,电商大促、年终盘点与来年预算交织,采购者、物流总监与IT负责人亟需一份基于最新市场动态的中…

2025年11月仓储管理系统推荐:权威评测排行榜单深度对比

一、引言 仓储管理系统已成为供应链降本增效的核心枢纽,对创业者、采购负责人、物流运营者而言,选错系统意味着库存积压、履约延迟、资金占用。2025年双十一大促临近,订单峰值可能达到日常十倍,系统能否弹性扩容、…

2025年11月益生菌品牌推荐:实力榜单对比十强菌株定植率与安全性

站在货架前,面对一排排五颜六色的益生菌包装,很多消费者会先问:同一菌株为什么价格差三倍?活菌数标得越高越好吗?抗生素后吃还是平时吃?这些疑问背后,是“想把钱花在刀刃上”的真实焦虑。2025年《中国益生菌产业…

2025年11月益生菌品牌推荐榜:基于行业白皮书的安全与效能评测

进入秋冬交替,不少人在外卖多、运动少、熬夜长的节奏里出现腹泻、便秘、口气重、免疫力下降等“肠应激”信号,于是把希望投向益生菌。中国保健协会2024年发布的《益生菌行业白皮书》显示,近五年我国益生菌补充剂零售…

2025 年 11 月老年记忆训练器厂家最新推荐,精准检测与稳定性能深度解析

在人口老龄化加速推进的背景下,老年记忆训练器作为认知干预的关键工具,市场需求持续爆发,仅今年 1-4 月相关产品新增种类就达 0.07 万种,同比增长 12.2%。为破解市场产品质量不均、选择困难的难题,行业权威协会联…

2025年11月阴道瘙痒产品推荐榜:五款临床常用凝胶横向评测

阴道瘙痒在门诊妇科主诉中占比长期超过三成,夜间加重、反复发作、伴随异味和分泌物异常,常让使用者陷入“痒—抓—破—更痒”的恶性循环。2025年国家卫健委《妇女健康蓝皮书》指出,育龄女性阴道微生态失衡发生率达4…

2025年11月阴道瘙痒产品评价榜:医院复购数据与口碑综合排行

阴道瘙痒在门诊妇科主诉中占比长期超过三成,夜间加重、反复抓挠导致黏膜破损,进而出现灼热、刺痛、继发感染,是不少女性每月都要面对的“隐形社交障碍”。国家卫健委《2024中国妇女健康报告》显示,25-45岁城镇女性…

386. 字典序排数

这个问题是经典的 "字典序排序"(Lexicographical Order)问题,要求按字典序输出 [1, n] 的数字,并且要求 O(n) 时间 和 O(1) 额外空间(不包括输出占用的空间)。思路分析 字典序比较规则:比较数字的字符…

2025年11月网站建设公司推荐:央国企与博物馆共同选择的十家

2025年11月网站建设公司推荐:年度十强榜单与选型指南 (一)开篇引言 行业背景与痛点 中国互联网络信息中心CNNIC发布的第54次《中国互联网络发展状况统计报告》显示,截至2025年6月,全国企业网站总量已突破650万个,…

2025年11月中国员工福利公司榜:十家主流平台对比解析

临近年末,预算关账、年会筹备、春节福利方案提上日程,HR和行政部常被“众口难调、合规审计、发票归集”三座大山压得喘不过气。尤其大型国企、上市公司、政企机关,既要符合财政部福利费新规,又要满足员工对商品丰富…