進位制
在計算機中,除了二進制,比較常用的還有八進制和十六進制。
二進制
二進制是計算機內部運算中採用的進制,在這樣的進制系統下,只有 \(0,1\) 兩個數字,計算機內部的所有運算(包括位運算)都是在二進制的基礎上進行的。
但用二進制表示數字會讓數字過長,因此為了方便表示的需要,通常會把二進制數轉換為八進制或十六進制表示。
八進制
在八進制下,有 \(0,1,2,3,4,5,6,7\) 八個數字。
一般情況下,八進制數以 oxx(其中 o 為八進制的前綴,xx 代表八進制數)的形式來表示。
十六進制
在十六進制下,有 \(0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)\) 十六個數字。
十六進制與二進制相比,最大的優點就是表示的數字長度較短,一位十六進制數可以表示 4 位二進制數。
一般情況下,十六進制數以 0xdbf(其中 0x 為十六進制數的前綴)的形式來表示。
進制間的相互轉化
十進制轉二進制/八進制/十六進制
這裏以二進制為例來演示,其他進制的原理與其類似。
整數部分,把十進制數不斷執行除 2 操作,直至商數為 0。讀餘數從下讀到上,即是二進制的整數部分數字。小數部分,則用其乘 2,取其整數部分的結果,再用計算後的小數部分依此重複計算,算到小數部分全為 0 為止,之後從上到下,讀所有計算後整數部分的數字,即為二進制的小數部分數字。
1 2 3 4 5 6 7 8 9 10 11 | |
即 \(33.25 = (100001.01)_2\)
二進制/八進制/十六進制轉十進制
還是以二進制為例。
二進制數轉換為十進制數,只需將每個位的值,乘以 \(2^i\) 次即可,其中 \(i\) 為當前位的位數,個位的位數為 0。
1 2 3 | |
即 \((11010.01)_2 = (26.25)_{10}\)
二進制/八進制/十六進制間的相互轉換
一個八進制位可以用 3 個二進制位來表示(因為 \(2^3 =8\)),一個十六進制位可以用 4 個二進制位來表示(\(2^4 = 16\)),反之同理。
本页面最近更新:,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:OI-wiki
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用