4

内存可能是字节可寻址或字(2字节,4字节等)可寻址的(如果我在这里错了,请纠正我)。

这(字节可寻址或字可寻址)是否取决于处理器架构?如果是,在什么情况下我们选择字节可寻址存储器,在什么情况下我们选择字可寻址存储器?

原因是什么?换句话说,为什么内存字节是可寻址的(如果是这样的话),为什么是字可寻址的(如果是这样的话)及其原因。我在这个网站上看到了一些关于字节可寻址内存的问题,但没有人提供这些问题的答案。

4

1 回答 1

4

显然,不同的软件需要使用不同类型和大小的数据/变量进行操作,并且通常需要在同一代码中使用多个不同的数据/变量进行操作。

能够直接和整体访问这些变量,无论大小如何,都可以简化编程,因为您无需将 4 个 8 位字节粘合在一起以形成 32 位值或类似地提取单个 8 位值从 32 位内存位置。

就本机支持的数据大小而言,存在的处理器不是很灵活。例如,定点数字信号处理器。有些只能以 16 位字和 32 位双字的形式直接访问内存。我认为它们中没有 8 位字节寻址并不是一个大问题,因为它们被期望进行大量的信号处理而不是通用的并且适合通用计算,而且信号样本很少是 8 位的(这太粗略了),通常它们是 16 位的。

在硬件中支持更少的数据大小和其他功能使该硬件更简单、更便宜(包括消耗的能量),如果我们谈论的是成千上万的设备,这一点就变得很重要。

不同的问题需要不同的解决方案,因此多种多样。

于 2012-03-27T20:32:29.597 回答