内存容量,末地址,首地址运算方法
  rdqBrlWEPFgb 2023年11月02日 49 0

内存容量=末地址-首地址+1

B13FF-A1000+1=10400

换算下:

10400=4*(16^2)+1*(16^4)

=2^10+2^16

=2^10*(1+2^6)

=2^10*65

内存是按字节编址的。记住几个常用的2的10次方为1024即1KB 故答案为65KB

首先你要知道 :存储地址=末地址-首地址+1

末地址=9FFFH,存储地址=32KB=2^15=8000H

首地址=9FFFH-8000H+1=2000H

内存是按字节编址的,所以单位是字节哈,1字节可是等于8位的。因为计算的范围一般比较小,所以就记住两个就够了。记住几个常用的2的10次方为1024即1KB
2的20次方=(2的10次方)的平方,即1MB就行了
如果要求更大的,那就再记住2的40次方=(2的10次方)的4次方=1GB,一般就够用了。

DFFFF-A0000 = 3FFFF
一眼看不出来大小滴,或许你要用笔算,不过用这个方法两眼就能看出来:
3FFFF展开为2进制就是2的18次方,是吧,即
2的10次方乘以2的8次方=1K*256即256KB
或者直接2的20次方/2的2次方=2的18次方。一般选就近原则。1MB/4=256KB
32K*8bit=256Kb=(256KB/8bit)
在网上找的另外一道题:
计算机SRAM容量为4K x 8,配置地址首地址为:06800H,则其末地址是多少
    a.38800H     B.10800H   C.077FFH   D.07800H 
分析:
    公式:
    内存容量=末地址-首地址+1
4K*8bit = 4KB即2的平方乘以2的10次方,2的12次方,12/4=3(转为16进制)即1000H
01000H=末地址-6800H+1H
    末地址=01000H+6800H-1H

    末地址=077FFH


32KB=215B,转换成十六进制:215B=8000H。根据内存容量=末地址-首地址+1这个公式可以得出末地址=8000H-0000H-1H=7FFFH

1312B换算成16进制为520H则有末=首+存-1,即560H+520H-1=A7FH



1.内存地址从A4000H到CBFFFH共有几个存储单元是怎么计算的?

:CBFFF-A4000+1=28000(十六进制) 

CBFFF-A4000+1
=CC000-A4000
=(CC-A4)*16^3
=(CC-A4)*2^12
=(2*16+8)*2^12
=40*2^12
=160*2^10 (B)
=160 (KB)

2.若内存按字节编址,用存储容量为32K×8比特的存储器芯片构成地址编号A0000H至DFFFFH的内存空间,则至少需要几片?

:内存空间是DFFFFH-A0000H+1 = 40000H 

 =4*16^4 

 = 2^18 = 2^10*256=256kb

256kb/32 = 8片

内存是按字节编址的,片子容量是32K*8比特,所以和片子的单位应该统一,故应该是用8片)

3.计算机SRAM 容量为4K x 8bit,配置地址首地址为:06800H,则其末地址是多少  ?

内存容量  =末地址-首地址+1  
4K*8bit = 4KB,

4K x 8bit = 2^12 = 1000H(注意,不是FFFH!!!)

末地址 = 容量+首地址-1

       = 1000H + 6800H - 1 

       = 077FFH 

4.若内存按字编址,某存储器的芯片容量为4K*4bit,用此芯片构成从80000H 到BFFFFH 的内存, 
要用( 128  )片这样的内存。某RAM 芯片有22 条地址线,8 条数据线,则该RAM 芯片容量为( 4MB  )  


这道题的第二问,只提供了地址线和数据线的个数,如何计算的容量?  

:容量=单元个数X 位宽,  


已知地址就知道单元格式是2^22=4M,已知数据线就知道位宽是8,那么容量=2^22 X 8 bit=4MB  

5.(2004 年5 月上午试题47.48)内存地址从4000H 到43FFH,共有( 1024  )个内存单元。若该内 存单元可存储16位二进制数,并用4 片存储器芯片构成,则芯片的容量是( 256*16bit  )

: 首先总容量是1024*16bit,而这些容量是有4 片组成的,那么一片的容量是256*16bit(因为内存单元 可存储16位二进制数,所以确定位宽16不变) 

存储容量的定义 :存储容量是指主存能存放二进制代码的总位数

存储器容量计算公式:

   按位计算 (b)   :        存储容量 = 存储单元个数 x 存储字长

   按字节计算(B):        存储容量 = 存储单元个数 x 存储字长 / 8


存储单元 :CPU访问存储器的最小单位,每个存储单元都有一个地址。

存储字长 :存储器中一个存储单元(存储地址)所存储的二进制代码的位数。

例题:一个存储器有16根地址线,8根数据线,求此存储器存储容量?

答:按位求取  2^16 x 8位 =64K x 8位 

      按字节求取   2^16 x 8位/8 = 64K x B = 64kB

分析:

存储单元与地址线的关系:  我们知道CPU访问存储器的最小单位是存储单元且每个存储单元都有一个地址,1 根地址线可以查找 2 个地址既2个存储单元,16根地址线则可以查找 2^16个存储单元。

存储字长与数据线的关系 :  我们知道存储字长是指存储器中一个存储单元(存储地址)所存储的二进制代码的位数,而二进制代码的位数是由数据线的根数决定的,也就是说: 存储字长 = 数据线根数

字节(B)与位(b)的关系  :    计算机里规定 1Byte = 8bit ,没有为什么就是这样规定定的!!!

所以存储器容量就有;两种表示方法 64K x 8位 = 64KB

我们常见的内存容量表示方法 是以字节为单位的。例如 1GB  ,4MB, 512KB

1GB = 10^3MB =10^6KB = 10^9B = 10^9 x 8b 

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

rdqBrlWEPFgb