为什么Word在x86汇编中是2个字节而不是4个字节?

时间:2014-12-31 09:12:56

标签: assembly x86 nasm

如果Word是特定处理器使用的自然数据单元,那么在x86处理器中它是4个字节,那么为什么在NASM和其他汇编器中DW(定义字)分配2个字节的内存而不是4个字节?

2 个答案:

答案 0 :(得分:4)

由于历史原因。 x86系列最初是一个16位架构(8086)。那是定义指令集的时间,所有其他处理器必须向后兼容。

80386是x86系列中的第一个32位处理器。

BTW我正在写assembler tutorial,我想我会把你的问题作为一个例子。谢谢!

答案 1 :(得分:1)

这是由于历史原因。 x86处理器系列的第一个成员是8086,而8086则主要是16位处理器。

作为历史旁注,原来字节意味着单词,因为起初,计算机只有一个宽度的数据可以处理,而字节就是那个宽度,那个宽度也被称为字符(这就是为什么一个字节在C)中称为char。然后计算机增长了,事情已成为事实上的标准......