鱼C论坛

 找回密码
 立即注册
查看: 2638|回复: 9

[已解决]刚开始学汇编,想问一下王爽老师的监测点2.2第一个问题

[复制链接]
发表于 2020-2-26 10:56:33 | 显示全部楼层 |阅读模式

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

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

x
刚开始学汇编,想问一下王爽老师的监测点2.2第一个问题。
我自己写的答案是 00010H  到1000FH,看完答案后发现是 0010H 到 1000FH ,
我想问一下,为什么第一个答案是四位数字,第二个是五位啊?
0001H*16不是向左偏移一位变成00010吗?为什么要删除一个0?
求各位大牛回答我一下
最佳答案
2020-2-27 00:28:44
13977097047 发表于 2020-2-26 23:50
我是这样想的,0001H向左进位变成00010H,
然后偏移地址是0000H到FFFFH,答案是00010H到1000FH。

        00010H 其实就是 10H,任何数字的前导 0 都是无效的,之所以要写够 5 位数,那是为了强调这是一个 20 位的内存地址,籍以区别段 + 偏移形式的内存地址。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-2-26 11:07:08 | 显示全部楼层
        没人知道检测点 2.2 是什么,更没人关心检测点 2.2。在这里求助,关键是要把题目贴出来!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-26 14:51:24 | 显示全部楼层
检测点2.2是什么?还有,前面有几个0不都是一样的?你写8个0也好,都一样的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 14:54:23 | 显示全部楼层
本帖最后由 13977097047 于 2020-2-26 14:58 编辑


                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 15:13:43 | 显示全部楼层
jackz007 发表于 2020-2-26 11:07
没人知道检测点 2.2 是什么,更没人关心检测点 2.2。在这里求助,关键是要把题目贴出来!

抱歉,我发不了图,题目是这个:给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为   到      、
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 15:14:38 | 显示全部楼层
405794672 发表于 2020-2-26 14:51
检测点2.2是什么?还有,前面有几个0不都是一样的?你写8个0也好,都一样的值

抱歉,我发不了图,题目是这个:给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为   到      、
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-26 15:55:56 | 显示全部楼层
本帖最后由 jackz007 于 2020-2-26 16:03 编辑
13977097047 发表于 2020-2-26 15:13
抱歉,我发不了图,题目是这个:给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为   到       ...


        首先应该明白,段地址增加 1H,与偏移增加 10H 是同样的效果,明白这个关系,这道题就好办了。

        段地址 0001H:0000H 对应于 20 位内存地址 00010H,可以寻址 64 KB,这个范围如果用段 + 偏移来表示就是 0001H:0000H ~ 0001H:FFFFH,如果用 20 位地址来表示,那就是  00010H ~ 1000FH。其中,1000FH = 00010H + 0FFFFH
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-26 23:50:01 | 显示全部楼层
jackz007 发表于 2020-2-26 15:55
首先应该明白,段地址增加 1H,与偏移增加 10H 是同样的效果,明白这个关系,这道题就好办了。 ...

我是这样想的,0001H向左进位变成00010H,
然后偏移地址是0000H到FFFFH,答案是00010H到1000FH。

但是这道题书本答案是0010H到1000FH,
我想问下00010H和0010H是一样的意思吗?都是正确答案吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-27 00:28:44 | 显示全部楼层    本楼为最佳答案   
13977097047 发表于 2020-2-26 23:50
我是这样想的,0001H向左进位变成00010H,
然后偏移地址是0000H到FFFFH,答案是00010H到1000FH。

        00010H 其实就是 10H,任何数字的前导 0 都是无效的,之所以要写够 5 位数,那是为了强调这是一个 20 位的内存地址,籍以区别段 + 偏移形式的内存地址。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-2-27 10:15:05 | 显示全部楼层
0001H段。偏移地址也是四位,也是0000到FFFFH。题目显然是求总量。也就是说,它考的是你的16位计算,这个压根就是莫名其妙阴你一把。结果就是最大地址10H+FFFFH,这种题我才不会去算。但开始的格式你也看到了,写10H也行,写0010H也行,都一个意思。还是之前说的话,你写几个0都没事。但是要注意一点,地址是20位的,也就是五位数,你最多写成00010H,不能再加多,不然,表示的就不是地址了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-5 21:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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