鱼C论坛

 找回密码
 立即注册
查看: 3968|回复: 2

[学习笔记] 《零基础入门学习汇编语言》第八第九讲加检测点2.2

[复制链接]
发表于 2017-6-23 22:10:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 shuiyu 于 2017-12-18 16:00 编辑

小白刚学,不对的请各位大佬指正,谢谢

由于这三个模块联系比较紧密,所以集合起来发一个帖子了

第八讲
一、
(1)物理地址:CPU访问内存单元时要给出内存单元的地址。所有的内存单元构成的存储空间是一个一维的线性空间。我们将这个唯一的地址称为物理地址。
(2)16位结构的CPU:运算器一次最多可以处理16位的数据、寄存器的最大宽度为16位、寄存器和运算器之间的通路是16位的。
(3)8086CPU给出物理地址的方法:8086CPU采用一种在内部用两个16位地址合成的方法来形成一个20位的物理地址。
        具体情况:
        1.CPU中的相关部件提供两个16位的地址,一个称为段地址,另一个称为偏移地址;
        2.段地址和偏移地址通过内部总线送入一个称为地址加法器的部件;
        3.地址加法器将两个16位地址合并成一个20位的地址;

二、地址加法器工作原理
(1)地址加法器合成物理地址的方法:物理地址=段地址×16+偏移地址   
(2)“段地址×16”有一个更为常用的说法就是数据左移4位。(二进制位)
        1.一个数据的二进制形式左移1位,相当于该数据乘以2;
        2.一个数据的二进制形式左移N位,相当于该数据乘以2的N次方;
        3.地址加法器如何完成段地址×16的运算?以二进制形式存放的段地址左移4位。
        4.一个数据的十六进制形式左移1位,相当于乘以16;
        5.一个数据的十进制形式左移1位,相当于乘以10;
        6.一个数据的n进制形式左移1位,相当于乘以n。

第九讲
三、段的概念
(1)内存并没有分段,段的划分来自于CPU,由于8086CPU用“(段地址×16)+偏移地址=物理地址”的方式给出内存单元的物理地址,使得我们可以用分段的方式来管理内存.
(2)在编程时可以根据需要,将若干地址连续的内存单元看作一个段,用段地址×16定位段的起始地址(基础地址),用偏移地址定位段中的内存单元。
(3)偏移地址为16位,变化范围为0~FFFFH,仅用偏移地址来寻址最多可寻64K个内存单元即64k,一个段的长度最大为64K。(2^16)
        比如:给定段地址1000H,用偏移地址寻址,CPU的寻址范围为:10000H~1FFFFH。
(4)CPU可以用不同的段地址和偏移地址形成同一个物理地址。
(5)“数据在21F60H内存单元中。”对于8086PC机的两种描述:
        1.数据存在内存2000:1F60单元中;
        2.数据存在内存的2000段中的1F60H单元中。

检测点2.2
(1) 给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为 0010H 1000FH
解:(段地址×16)+偏移地址=物理地址
        段地址x16为:0010H
        偏移地址变化范围为0h~ffffh
        FFFF+0010H得:1000FH
        所以加上偏移地址变化范围CPU的寻址范围为:0010H~1000FH

(2) 有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元。则SA应满足的条件是:最小为 1001H
最大为 2000H
解:这题我是反过来想的,当段地址给定为 1001H 以下和 2000H 以上,CPU无论怎么变化偏移地址都无法寻到20000H单元。
最小段地址肯定要求CPU的寻址范围为:10010H~2000FH,根据(段地址×16)+偏移地址=物理地址,所以最小段地址为1001H.为什么不是1000H呢?如果段地址为1000H,CPU的寻址范围为:10000H~1FFFFH,最大也到不了20000H吧,所以只能是1001H为最小段地址
最大段地址肯定要求CPU的寻址范围为:20000H~2FFFFH,根据(段地址×16)+偏移地址=物理地址,所以最大段地址为2000H.




谢谢小甲鱼带来的视频教程,感谢!!


   
本节结束,多谢览阅!
小白刚学,不对的请各位大佬指正,谢谢

评分

参与人数 1鱼币 +5 收起 理由
小甲鱼 + 5 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-28 01:46:04 | 显示全部楼层
终于找到一个正确答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-10 16:06:10 | 显示全部楼层
谢谢,你和我做的答案一样,找了好久有点怀疑自己了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-23 19:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表