在使用8个地址位和16位架构的存储器单元中可以存储多少字节?

时间:2015-04-11 03:13:42

标签: memory

我需要帮助理解记忆。在使用8个地址位和16位架构的存储器单元中可以存储多少字节?

我认为它是2 ^ 8 = 256.这是正确的吗?

编辑:我的意思是256

2 个答案:

答案 0 :(得分:2)

取决于。

首先,“16位架构”太模糊,不能成为这个问题的有用表征。像这样的表征通常是指寄存器和数据路径的宽度(例如在ALU中),而不是如何寻址存储器。

其次,答案实际上取决于地址是字节地址还是“字”地址。自1980年代以来设计的AFAIK“几乎所有”新处理器/指令集架构都使用了字节地址。但在此之前,地址通常会处理高达60位(或可能更多)的字。

但假设字节寻址,则8位地址允许您寻址2 ^ 8个字节;即256个字节。

另一方面,如果我们假设使用16位字进行字寻址,则8位地址将寻址256个字......即512字节。

答案 1 :(得分:0)

基本答案是2 ^位数。然而,很久以前,十六位系统提出了通过段访问超过2 ^ 16内存的方法。虽然应用程序一次只能访问2 ^ 16个字节,但更改硬件寄存器中的值允许应用程序更改正在访问的更大地址空间的2 ^ 16个字节。

您通常会执行

之类的操作
  1. 将缓冲区1映射到地址空间。
  2. 将读取操作排入缓冲区。
  3. 将另一个缓冲区2映射到地址空间。
  4. 读取操作完成 - 映射缓冲区1,以便可以访问数据。