1.基本概念
位(bit/b): 数据存储的最小单位,一个位的取值只能是0或1
字节(Byte/B): 1个字节等于8位,即1Byte=8bit
字长: 在计算机中,一串数码作为一个整体来处理或运算的,称为一个字。字的位数称为字长;字通常分若干个字节。
存储位元、存储单元、存储器:
存储容量: 存储容量是主存中能存放二进制代码的总位数,即存储容量=存储单元个数×存储字长(每个存储单元的位数),也可用字节总数来表示: 存储容量=存储单元个数*存储字长/8
地址线: 存储单元的个数=2^地址线的条数
数据线: 数据线确定存储字长,数据线的条数=字长的位数。
举例:2114芯片大小为1K×4b,含义为:
1K | 存储单元的个数位2^10个 |
---|---|
4b | 每个存储单元有4位 |
2.按字寻址和按字节寻址
2.1 按字节寻址
一组地址线的每个不同状态对应一个字节的地址,存储空间的最小编址单位是字节。
例如,对24位地址线的主存而言(也就是有24根地址线),按字节寻址,每根线有两个状态,那么24根地址线组成的地址信号就有224个不同的状态,每个状态对应一个字节的地址空间的话,那么24根地址线的可寻址空间为224B,即16MB
2.2 按字寻址
一组地址线的每个不同状态对应一个字的地址,存储空间的最小编址单位是字。
一个字由若干个字节构成,所以计算机在寻址过程中会区分字里面的字节,即会给字里面的字节编址,这样就会占用部分地址线,例如有24根地址线,机器字长为16位,若按字寻址的话,16位=2个字节,需要占用一根地址线用来字内寻址,这样就剩下23根地址线,故按字寻址范围是223W(W是字长的意思),也就是8MW。【真正用于按字寻址的地址线只有24-1=23根】
例题
设有一个1MB容量的存储器,字长为32位,问按字节寻址、按字寻址的寻址范围以及各自的寻址范围的大小是多少?
1MB=2^20B ① 1字节=1B=8b=8位 ②1字=32位=32b=4B
(1)按字节编址
寻址范围:0~(220-1),【2^20B / 1B = 2^20】,即需要20根地址线才能完成对1MB空间的编码,即地址寄存器为20位
寻址范围大小:2^20=1M
(2)按字编址
寻址范围:0~(218-1),【2^20B / 4B = 2^18】,即至少需要18根地址线才能完成对1MB空间的编码。
寻址范围大小:2^18=256K