计算机中的字大小是什么意思?

kof*_*rts 43 cpu-word computer-architecture

我试图弄清楚"单词"是什么意思,我查看了维基,定义含糊不清.所以我的问题是什么是"字大小"?它是数据总线,地址总线的长度吗?

ᴇʟᴇ*_*ᴀтᴇ 46

"字大小"是指计算机的CPU一次性处理的位数(这些天,通常是32位或64位).数据总线大小,指令大小,地址大小通常是字大小的倍数.

只是为了混淆问题,为了向后兼容,Microsoft Windows API将WORD定义为16位,将DWORD定义为32位,将QWORD定义为64位,而不管处理器如何.

  • 知道为什么它被称为“单词”而不是“字母”吗? (3认同)
  • WORD = 16位是Intel术语。现代的x86 CPU从8086演进而来,寄存器宽度和总线宽度实际上是16位。386添加了32位模式,但没有删除16位模式,因此Intel通过为所有将来的x86坚持8086定义来保持理智。例如[AVX512BW添加了对8位(B)和16位(W)元素进行操作的SIMD指令。](https://en.wikipedia.org/wiki/AVX-512#New_instructions_in_AVX-512_BW,_VBMI_and_DQ)。这是术语上的一个小怪癖,而不是一个主要的头痛(例如,相同的asm指令根据您所处的模式,是否意味着不同的事情)。 (2认同)

Fou*_*ine 8

考虑以下:

CPU(处理器)、RAM(主存储器)、I/O 设备(鼠标、键盘、打印机)、总线(数据传输组件)。

您希望这些计算机部件如何通信和传输数据?您肯定需要固定大小的位才能被视为单个数据单元。

为此,计算机科学家同意将此单元标准化为 32 位或 64 位(取决于制造商的选择)。

他们给这个单位取了个名字,叫它一个词。

因此,字只不过是从计算机组件移动到另一个计算机组件的数据单元(一组位(零和一的信号电荷))。

例如,总线是用 32 位(4 字节)构建的,有些是用 64 位(8 字节)构建的。同样,CPU(硬件)和操作系统(软件)都是用 32 位或 64 位构建的。

它恰好是名为 Word 的标准单位,大小为 32 位或 64 位。

Ps: Word 是在计算机内部移动的众多数据大小单位之一,不同的计算机组件使用不同的大小来传输数据(代表零和一的信号电荷),例如 RAM 可以使用 64 位的大小,而总线可以使用32 位。硬件设计人员在设计组件架构时考虑到这些大小差异,要么仅在 CPU 上实现 32 位字大小,而在 RAM 上实现 64 位字大小,要么在所有组件上实现相同大小,等等。字大小曾经是 8 位(1 个字节),但现在大多数计算机组件(例如 CPU 或 RAM,或总线等)上的注释单元大小最多为 64 位。

  • 像 USB 主机控制器这样的 I/O 设备不需要具有与 CPU 字大小相同的宽度的 I/O 寄存器。字节是基本单位;字长甚至不是 64 位架构上的寄存器宽度。例如,在 64 位 MIPS 上,`dadd` 是(双字加法)是 64 位加法的指令。或者在现代 x86 CPU 中,数据在比整数寄存器宽得多的总线上在内部移动,例如 Haswell/Skylake 中 L1d 和 L2 之间的 64 字节(完整缓存线)路径:[缓存怎么能这么快?](/ /electronics.stackexchange.com/a/329955) (2认同)
  • 几乎所有现代 CPU 都原生支持单字节存储(1990 年代初期的 DEC Alpha 是最新的主流例外)请参阅 [现代 x86 硬件不能将单字节存储到内存吗?](//stackoverflow.com/q/46721075 )。因此,即使在 CPU 和内存之间,对于未缓存的存储,传输大小也不是严格固定在字大小或总线宽度上。 (2认同)
  • 您可能已经知道其中的一些内容,并为初学者进行了简化。但是一个过于简单的答案会给人一种错误的印象,即单词非常重要会导致错误的想法,例如`uint8_t`对于*所有*用途来说本质上是缓慢的。最好说这个词有点含糊。 (2认同)

Hot*_*cks 6

答案是 - 不像以前那么多.回过头来,计算机只能加载/存储完整的"单词"内存,每个内存为16/24/32/36/48位(取决于特定的机器).人们必须围绕目标机器的字大小仔细地构建他们的程序设计.

但是,任何更多的计算机都可以访问单个字节,或者可以访问几十个字节长的数据字符串,只需一个相对无缝的操作.比技术字大小更重要的是存储器总线宽度,它决定了在一个存储器"周期"中CPU和存储器之间可以传输多少字节.

因此,"字大小"有点无意义,并且(正如另一个答案所暗示的)像微软这样的公司通常会以任意方式定义它,与任何事物都没有真正的关系.


小智 6

字的大小意味着没有。由微处理器作为一个单元处理的数据位。