32比特
在计算机体系结构中,32位系统是指以处理器、内存和其他以32位为单元处理数据的主要系统组件组成的的计算机系统。[1][2]与较小的位宽相比,32位计算机可以更有效地执行大型计算,并在每个时钟周期处理更多的数据。典型的32位个人计算机具有32位地址总线,允许访问高达4 GiB的内存,远远超过前几代系统架构允许的容量。[3]因此,32比特也是一种称呼电脑世代的名词。
微处理器 |
---|
字 |
应用 |
二进制浮点精度 |
数据大小 |
原理解释
32比特可以保存的整数范围是0到4294967295,或使用二的补数是-2147483648到2147483647。因此,32比特内存地址可以直接访问4 GiB以字节寻址的内存。
外部的内存和数据总线通常都比32比特还宽,但是两者在处理器内部保存或是操作时都当作32比特的数量。举例来说,Pentium Pro处理器是32比特机器,但是外部的地址总线是36比特宽,外部的数据总线是64比特宽。32比特应用程序是指那些在32比特平面地址空间(平面内存模式)的软件。
32比特应用程序
32比特应用程序这个名词的出现,是由于原先为Intel 8088和Intel 80286微处理器所撰写的DOS和微软Windows。这些是16比特的区段地址空间寻址的微处理器。拥有大于64KB 的程序和数据因此必须要经常地在不同区段间切换。相对于其他的机器运作,这些操作是相当的耗时,因此应用程序的性能可能变得较差。再者,使用到区段的编程比起平面内存空间的方式,会导致某些编程语言上的复杂性,像是C语言和C++语言的“内存模式”。 在 IBM 兼容系统上,从16比特软件转移到32比特软件,随着 Intel 80386 微处理器的推出而变成可能。这个微处理器和他的后代支持16比特和32比特节区的区段内存空间(更精确地说,是有16或32比特地址偏移量的区段)。如果全部的32比特区段的基底地址都设置为0,那么区段寄存器就不用明确地使用,这些区段可以被遗忘掉,处理器就像是拥有一个简单的线性32比特地址空间。然而为了兼容性的因素,大多数软件仍以16比特模式撰写。
像是Windows或是OS/2操作系统提供了也让16比特(区段)程序可以像32比特程序运行的可能性。前者16比特的兼容性之所以存在是因为要提供向前兼容性,而后者32比特是用来作为新的软件发者使用。
64比特操作系统中的32比特
在Windows操作系统中常以“x86”表示。
参考资料
- Prosise, Jeff. . PC Magazine. 1995-11-07: 321–322 [2022-11-30].
- Buchanan, William. . Burlington: Elsevier Science. 1997: 230. ISBN 978-0-08-054137-2. OCLC 854975383.
- Venkateswarlu, N.B. . S. Chand Publishing. 2012: 143. ISBN 978-81-219-4047-4.
- IT之家. . 搜狐. [2017-09-30]. (原始内容存档于2020-11-16).