|
主题 : : 关于检测点2.2 的问题 [待解决] |
回复[ 7次 ]
点击[ 576次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2011-04-22 18:09 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-04-15 20:16 |
看了很久也没明白 ,到底是怎么回事 。不知道有没有老师给讲解一下 | | |
|
|
|
|
[第1楼]
[ 回复时间:2011-09-09 15:47 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-09-06 09:59 |
1.给定段地址为0001H,仅通过改变偏移地址寻址,CPU的寻址范围为(00010H)到(1000FH)。
分析:偏移地址的范围是 0000H--FFFFH,给定了段地址那么就有 0001H*16+0000H 到 0001H*16+FFFFH,即00010H到1000FH。
2.有一数据存放在内存20000H单元中,现给定段地址SA,若想用偏移地址寻到此单元。则SA应满足的条件是:最小为(),最大为()。
分析:物理地址=SA*16+EA
20000H=SA*16+EA
SA=(20000H-EA)/16
SA=2000H-EA/16
EA取最大值时,SA=2000H-FFFFH/16=1001H
EA取最小值时,SA=2000H-0H/16=2000H
提示,反过来思考一下当段地址给定为多少,CPU无论怎么变化偏移地址都无法寻到20000H单元?
分析:那么 就是 根据2题,当SA>2000H || SA<1001H 的时候无法寻到20000H。
答案如有错误或大家如有疑问,均可留言。 | | |
|
|
|
|
[第2楼]
[ 回复时间:2011-09-11 21:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-08-21 21:07 |
我做出的答案是
第一题:10H-FFFFFH
第二题:1001H-2000H | | |
|
|
|
|
[第3楼]
[ 回复时间:2011-10-09 15:37 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-10-05 14:00 |
SA=(20000H-EA)/16
SA=(20000H-FFFFH)/16
SA=(10001H)/16=1000.1H
我有疑问。。。。这么算就是1000.1H , 大侠帮忙讲解下这个最小值的求法,为何不一样呢?
我知道肯定没有小数,所以结果应该是1000H,但是如果SA=1000H的话它寻不到20000H,
最多1000H * 16 +FFFFH=1FFFFH,就差1到20000H。人为的把SA加1?? | | |
|
|
|
|
[第4楼]
[ 回复时间:2011-10-22 12:15 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-10-22 08:37 |
EA最大值应该是2000H ,EA最小值应该1001H | | |
|
|
|
|
[第5楼]
[ 回复时间:2011-10-22 12:16 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-10-22 08:37 |
EA最大值应该是2000H ,EA最小值应该1001H
------------------
回复:打错应是SA | | |
|
|
|
|
[第6楼]
[ 回复时间:2012-05-12 18:42 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-05-11 16:45 |
|
|
|
|
|
[第7楼]
[ 回复时间:2012-05-20 23:19 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2012-05-20 23:04 |
ffff/16用计算器算出来的结果是ba2,ffff/16本质上是不是指右移4位,然后就成了fff~~ | | |