- 計算機系統解密:從理解計算機到編寫高效代碼
- (美)喬納森·E.斯坦哈特
- 1053字
- 2021-09-27 16:56:58
1.9 命名位組
計算機不只是一個含有一堆毫無規則組織的位容器。設計計算機的人出于對成本的考慮,必須決定位的數量和組織方式。就像數字表示法一樣,人們嘗試過很多方法,但只有一些方法留存了下來。
位是很小的單位,所以把它們組合成更大的數據塊。例如,霍尼韋爾6000系列的計算機使用36位數據塊作為基本組織形式,并允許將這些數據塊分割成18位、9位以及6位數據塊,或組合成72位數據塊。第一款商用小型計算機DEC PDP-8(1965年推出)使用的是12位數據塊。隨著時間的推移,世界上已經確定8位數據塊為基本單位,稱為字節。
為了方便使用,不同大小的數據塊有不同的名稱。表1-10總結了現在一些常用數據塊的名稱和大小。
表1-10 位組的名稱

你可能會疑惑,為什么有半字、長字和雙字,卻沒有普通字?字用來描述特定計算機設計中事物的真實大小。真實大小指的是可以被快速操作的最大數據塊的大小。例如,雖然DEC PDP-11可以訪問字節、半字、長字,但它的內部組織結構為16位,因此DEC PDP-11的真實大小為16位。C和C++等編程語言允許將變量聲明為int
(整數的簡稱),這使它們的大小成為真實大小。你還可以使用一組受支持的特定大小來聲明變量。
有一些標準的術語,可以方便地指代大數。曾經有一個指代大數的標準,現在又換了一個新的標準。工程師們有一個習慣,就是找一些和他們想要的意思相近的詞,然后把這些詞當作他們想要的意思來使用。例如,在公制中,千(kilo)是千級單位,兆(mega)是百萬級單位,吉(giga)是十億級單位,而太(tera)是萬億單位。這些名詞被借用過來,稍稍改變,因為在計算機中使用的是底數2,而不是底數10。然而,當我們在計算中提到千位或千字節(K或KB)時,實際上并不是指1 000。我們指的是二進制中最接近1 000的數,也就是1 024或210。同理,兆字節(M或MB)是220,吉字節(G或GB)是230,太字節(T或TB)是240。
但有時我們確實指的是底數為10的版本。你需要了解語境,才能知道采用哪種含義。傳統上,底數為10的版本常用來表示磁盤驅動器的大小。一位美國律師假裝不知道這點,提起訴訟(Safier訴WDC),聲稱磁盤驅動器的內存比宣傳的要小。(在我看來,這就像那些聲稱2×4的木材實際尺寸不是2英寸乘4英寸[1]一樣愚蠢,因為這個尺寸一直都是指未刨光未加工的木材尺寸。)這場訴訟導致了新的IEC標準前綴的產生:kibi(KiB)表示210,mebi(MiB)表示220,gibi(GiB)表示230,tebi(TiB)表示240。這樣的表示慢慢地流行了起來。
術語字符經常與字節互換使用(將在下一節介紹),因為字符的代碼通常被設計成適應字節?,F在,隨著對非英語語言的更好支持,經常需要涉及多字節字符。
[1]1英寸=0.025 4米?!庉嬜?/p>
- Practical Data Analysis Cookbook
- Learn TypeScript 3 by Building Web Applications
- PHP程序設計(慕課版)
- Learning ArcGIS Pro 2
- Rake Task Management Essentials
- 面向STEM的Scratch創新課程
- 精通軟件性能測試與LoadRunner實戰(第2版)
- Python編程完全入門教程
- 深入理解Java7:核心技術與最佳實踐
- 概率成形編碼調制技術理論及應用
- Mastering JBoss Enterprise Application Platform 7
- Web Development with MongoDB and Node(Third Edition)
- 智能搜索和推薦系統:原理、算法與應用
- Java EE 8 and Angular
- 實驗編程:PsychoPy從入門到精通