有一个32KB的存储器,用十六进制对它的地址进行编码,起始编号为0000H,末地址应是多少?要求写求解过程。
32KB的存储器,末地址应该是:0x7FFF。
计算过程:因为要满足32KB的存储器,同时又要满足起始编号为0000H。根据存储空间的大小等于末地址-首地址+1。
末地址=存储空间大小+首地址-1又因为首地址为0000H,所以说末地址等于存储空间大小-1。
所以末地址等于0x8000-1=0x7FFF。
扩展资料:
地址数:
该地址块的地址数N可以用N=2^(32-n)次方求出。
要求出首地址:
保持最左边的n位不变,并将靠右边的32-n位全部置为0。
要求出末地址:
我们保持最左边的n位不变,并将靠右边的32- n位全部置为1.
为提高存储器的性能,通常把各种不同存储容量、存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所存放的程序和数据按层次分布在各存储器中。
主要采用三级层次结构来构成存储系统,由高速缓冲存储器Cache、主存储器和辅助存储器组成。图中自上向下容量逐渐增大,速度逐级降低,成本则逐次减少。
2018-03-19
32K=32768=0x8000
实际地址从0x0000开始计算的,所以32K的末地址应是:
0x8000-1=0x7FFF
简单来说,比如,现在有一个32KB的存储器,如果分配每个存储单元存储一个byte,就是一个字节,8bit,
那么需要有32*1024个这样的存储单元(32KB=32*1024*8bit),
所以,相应对存储单元的地址编码要从0到32*1024-1,如果用16进制表示就是从0000H到7fffH。
实际地址从0x0000开始计算的,所以32K的结束地址是0x8000-1=0x7FFF