32位元應用程式
维基百科,自由的百科全书
32位元應用程式 是指那些在 32位元平面位址空間(平面記憶體模式)的軟體。
N-位元 處理器 | |||||
---|---|---|---|---|---|
4位元 | 8位元 | 16位元 | 32位元 | 64位元 | 128位元 |
N-位元應用程式 | |||||
16位元 | 32位元 | 64位元 | |||
N-位元資料大小 | |||||
4位元 | 8位元 | 16位元 | 32位元 | 64位元 | 128位元 |
nibble | 位元組 8位元 |
字組 | 雙字組 | qword | |
這些定義是於現在的 x86 世界。參考連結的文章討論於其他架構的意義。 |
在電腦架構中,32位元是一種形容詞,用來描述最多為32位元(4位元組)寬的整數,記憶體位址或其他資料的單元,或者是描述以這種大小的暫存器,記憶體匯流排,或者資料匯流排為基礎的CPU和算術邏輯單元。
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位元是用來作為新的軟體發者使用。
本文參考素材源自「FOLDOC」,在GFDL下授權。 This article was originally based on material from the Free On-line Dictionary of Computing and is used under the GFDL. |