. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->基础知识
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  关于监测点1.1中第一题的寻址能力为8KB的小小看法  [待解决] 回复[ 6次 ]   点击[ 502次 ]  
hexon804
[帖 主]   [ 发表时间:2011-10-07 11:29 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-10-03 17:22
问题的产生是由于看了这篇帖子:http://www.asmedu.net/bbs/pasteinfo.jsp?part=1&level=book&kind=1002&qkSg=2&qID=53127&readSg=1
帖子中楼主认为如果内存单元不是1Byte,那么题目中的寻址能力8KB对应的地址总线宽度就不再是13了,根据帖子中的这句话而来(请大家想想,如果现在规定,一个内存单元不再是八位了,而是四位,那么大家怎么来表示寻址能力呢?按照前面的思维,应该是8K个0.5B?也就是4KB。又如果一个内存单元是十六位呢,8K个2B吗?也就是16KB。 你们看,同样的地址总线,在单个内存单元容量标准不同的时候,看上去寻址能力(个数)却跟着也发生变化了,这显然是不合理的一种表示方法。)

我觉得这好像挺有道理的,书上说的只是针对于存储单元为1Byte的存储器,如果现在存储器的存储单元不是1Byte,那么题目上写的寻址能力为8KB,那么对应的地址总线宽度就不再是13了(这个是根据存储单元为1Byte算出的,8*1024Byte = 2^3 *2^10 = 2^13Byte,然后将2^13Byte除以存储单元(我是这么理解的,不知道是否正确),然后得出2^13,说明有13根地址总线,宽度就等于地址总线数),假如现在的存储单元为2Byte,可以算出8KB = 8 * 1024Byte = 2^3 * 2^10Byte = 2^13Byte,然后2^13Byte / 2Byte = 2^12,那么它有12根地址总线,对应宽度为12,如果这么算没有错误的话,我觉得题目中的寻址能力为8KB应该改为寻址能力为8K个存储单元,这样无论存储器的存储单元是否为1Byte,那么对应的地址总线宽度应该都为13了:不知道这么想对不对?
还有一点就是不知道书中1.6节中所说的:“微型机存储器的存储单元可以存储一个Byte,即八个二进制位”这句话始终成立?
初学汇编,有错误还望各位指教,谢谢····
ymr
[第1楼]   [ 回复时间:2011-10-26 23:34 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-10-25 11:17
你好
    微型机存储器的存储单元可以存储一个Byte,即八个二进制位 1Byte=8Bit  这句话成立
     为什么1Byte=8Bit呢???
   Byte是字节的意思,而字节在早期计算机内部是用标准ASCII码来表示的
根据当时情况确定至多有128种需要表示的字符(当时是IBM的标准,现在普遍是255),
也就是2的7次方
用二进制的0和1来表示就需要7位,即7bit
此外,出于安全考虑,ASCII码还需加上一位奇偶校验位。
所以标准的ASCII码是8位,也就是8bit
我上面已说到了,字节是由标准ASCII码表示,一字节也就是一个ASCII码
亦即1Byte=8bit
zhgqr
[第2楼]   [ 回复时间:2011-10-31 17:14 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2007-07-17 19:22
hao
zhgqr
[第3楼]   [ 回复时间:2011-10-31 17:31 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2007-07-17 19:22
回复:[第1楼]
------------------
123
ljl
[第4楼]   [ 回复时间:2011-11-19 21:51 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-11-19 15:29
这个贴子需要留名的。
对于我这这个初学者来说。
8421
[第5楼]   [ 回复时间:2012-01-20 01:56 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2012-01-19 22:10
B只是一个单位,不管他是多少个bit,2^13寻址能力都是8*1024个单元(Byte)。假设B=4bit,那么8KB还是8KB而不是8KB*0.5=4KB,其实这个假设只是总的bit变了而不是存储单元变少了。
031003130
[第6楼]   [ 回复时间:2012-02-19 00:49 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2012-02-18 23:02
那句话对于8位cpu是成立 16位的话就是存储两个B
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved