Operating system 如何确定最佳(处理器)字大小?越大越好?

Operating system 如何确定最佳(处理器)字大小?越大越好?,operating-system,cpu,word,Operating System,Cpu,Word,我的理解是,处理器的字大小是该处理器在一次计算中处理的位数。这(目前)通常是32或64位。然而,我的研究表明,过去单词的大小较小,并且随着时间的推移逐渐增加 我还了解到,字大小决定了通过系统总线的数据传输、指令大小、地址大小等 鉴于此,如何确定最佳字长?字号越大越好吗?若否,原因为何 我怀疑字长越大并不总是越好,因为字长越大可能意味着一个总线周期(在总线上传输一个字所需的时间)越长 多谢各位 然而,我的研究表明,单词的大小在英语中较小 过去,并随着时间的推移逐渐增加 是的,非常正确。虽然Inte

我的理解是,处理器的字大小是该处理器在一次计算中处理的位数。这(目前)通常是32或64位。然而,我的研究表明,过去单词的大小较小,并且随着时间的推移逐渐增加

我还了解到,字大小决定了通过系统总线的数据传输、指令大小、地址大小等

鉴于此,如何确定最佳字长?字号越大越好吗?若否,原因为何

我怀疑字长越大并不总是越好,因为字长越大可能意味着一个总线周期(在总线上传输一个字所需的时间)越长

多谢各位

然而,我的研究表明,单词的大小在英语中较小 过去,并随着时间的推移逐渐增加

是的,非常正确。虽然Intel在16位和32位CPU方面做了开创性的工作(8086和80386处理器分别是同类处理器中的第一款),AMD创建了AMD64(也称为x86-64或简单的x64)体系结构,但对32位x86体系结构的扩展始于80386。英特尔创造了一个全新的东西,IA-64体系结构,但实际上没有人使用它

我怀疑字号越大并不总是越好,因为字号越大 字大小可能意味着一个总线周期(传输所需的时间 一个字穿过巴士)需要更长的时间

这是正确的,假设你的巴士没有你想要运输的基准面那么宽。通过16位总线发送32位数据确实需要更长的时间。但是,通过64位总线传输64位数据所需的时间与通过16位总线传输16位数据所需的时间相同

因此,字大小等于总线的宽度。在冯·诺依曼机器中,有三条总线,因此关于单词大小的实际定义存在一些争议,但通常情况下,数据总线的含义是什么

因此,这些年来单词大小的增加是由先进的技术造成的(相关:)。科学已经向前推进,目标是更好、更快的CPU

现在我们有64位CPU,但在它们的指令集中,立即操作数(文字)也被视为64位。这意味着,例如,将
0x1
加载到64位寄存器至少需要9个字节(立即操作数+操作码)。如果体系结构不提供特殊指令将一个符号或零扩展字节加载到64位寄存器中,这显然是不利的。因此,有一些方法可以改进这一点,特别是1指令集,它试图以增加执行时间为代价来减少代码大小

毕竟,没有“最佳字长”,这取决于应用程序和环境。有些程序需要速度,有些必须是小的


1我不知道为什么叫“拇指”,可能是因为说明书太小了,可以放在顶针里

然而,我的研究表明,单词的大小在英语中较小 过去,并随着时间的推移逐渐增加

是的,非常正确。虽然Intel在16位和32位CPU方面做了开创性的工作(8086和80386处理器分别是同类处理器中的第一款),AMD创建了AMD64(也称为x86-64或简单的x64)体系结构,但对32位x86体系结构的扩展始于80386。英特尔创造了一个全新的东西,IA-64体系结构,但实际上没有人使用它

我怀疑字号越大并不总是越好,因为字号越大 字大小可能意味着一个总线周期(传输所需的时间 一个字穿过巴士)需要更长的时间

这是正确的,假设你的巴士没有你想要运输的基准面那么宽。通过16位总线发送32位数据确实需要更长的时间。但是,通过64位总线传输64位数据所需的时间与通过16位总线传输16位数据所需的时间相同

因此,字大小等于总线的宽度。在冯·诺依曼机器中,有三条总线,因此关于单词大小的实际定义存在一些争议,但通常情况下,数据总线的含义是什么

因此,这些年来单词大小的增加是由先进的技术造成的(相关:)。科学已经向前推进,目标是更好、更快的CPU

现在我们有64位CPU,但在它们的指令集中,立即操作数(文字)也被视为64位。这意味着,例如,将
0x1
加载到64位寄存器至少需要9个字节(立即操作数+操作码)。如果体系结构不提供特殊指令将一个符号或零扩展字节加载到64位寄存器中,这显然是不利的。因此,有一些方法可以改进这一点,特别是1指令集,它试图以增加执行时间为代价来减少代码大小

毕竟,没有“最佳字长”,这取决于应用程序和环境。有些程序需要速度,有些必须是小的


1我不知道为什么叫“拇指”,可能是因为说明书太小了,可以放在顶针里

鉴于此,如何确定最佳字长

字长是处理器设计的一部分。它不一定是最优的。在过去,字长包括8、12、16、32、36和64位。字大小中的位数越多,处理器的实现就越复杂。64位加法(包括计算内存地址)所需的比较次数是16位加法的4倍

字号越大越好吗?若否,原因为何

“64万对任何人来说都应该足够了。”

曾经有一段时间,32位(4GB内存)被认为足以永久使用。64位需要多长时间