計算機中各種進制?一、計算機中進制之間的關系和轉換,今天小編就來聊一聊關于計算機中各種進制?接下來我們就一起去研究一下吧!
一、計算機中進制之間的關系和轉換
1、計算機中常見的進制
我們的日常生活中常見的十進制,計算機的運行計算基礎就是基于二進制來運行,可以簡單地理解為:1代表通電(開),0代表斷電(關),隻是用二進制執行運算,用其他進制表現出來。十六進制常見于内存地址,注冊表regedit,MAC地址等。 而計算機中八進制比較少見也不常用,一般用于某些編程語言。
計算機本身使用的就是二進制,但是使用起來很不方便的,十六進制或八進制可以很好的解決這個問題(換算的時候1位十六進制數可以用4位二進制數代替,1位八進制數可以用3位二進制數代替)。因為進制越大,數的表達長度也就越短,例如:二進制數111111111111用十六進制表示為FFF,這樣更簡短,比較節省空間,方便讀,也方便記。
2、十進制、二進制、十六進制、八進制之間對照表
3、二進制、八進制、十六進制數轉換成十進制
十進制可以有多位組成,根據十進制的運算規則:逢10進1,借1當10,從右向左依次為個位、十位、百位、千位、萬位...
(1024)10 = 1×10^3 0×10^2 2×10^1 4×10^0
= 1000 0 20 4
=(1024)10
由此類似,那麼二進制的運算規則:逢2進1,借1當2,也可以由多位數組成,從右向左分别為1位、2位、4位、8位、16位...
為什麼稱二進制的位數為1位、2位、4位...?
這其實要從十進制的角度看二進制各位數得出的名稱,如下表:
從上表可以看出,當二進制産生進位時,代表的十進制數為2、4、8、16、32、64、128...
二進制雖然隻有0和1兩個數字,但是由于數字所處的位置不同,表示的數據也不同
例如:
二進制數 “1101”這個二進制數共有4位,由3個1和1個0組成,比如數字1所處位置不同,所代表的大小也不同,其所處位置稱作權。從右向左順序各個位置表示十進制的含義:
第一個1表示:1的個數
第二個0表示:2的個數
第三個1表示:4的個數
第四個1表示:8的個數
(在此可以類比十進制1101,由1個1000,1個100,0個10,1個1組成。)
所以,二進制數1101由1個8,1個4,0個2,1個1組成。按各位的權力列出:
(1101)2 = 1×2^3 1×2^2 0×2^1 1×2^0
= 8 4 0 1
=(13)10
這種權展開式可以很方便将二進制轉換為十進制。
同理,将八進制數1024轉換為十進制數
(1024)8 = 1×8^3 0×8^2 2×8^1 4×8^0
= 512 0 16 4
=(532)10
将十六進制數2B5F轉換為十進制數
(2B5F)16 = 2×16^3 B×16^2 5×16^1 F×16^0
= 2×16^3 11×16^2 5×16^1 15×16^0
= 8192 2816 80 15
=(11103)10
由此我們可以得到一個非十進制數轉換為十進制數的自定義公式:
(X)Z = Xn-1×Z^n-1 Xn-2×Z^n-2 … X1×Z^1 X0×Z^0
=(Y)10
X表示一個非二進制(多位),Y表示一個十進制數(多位),Z表示各進制的基數,n表示位數。
4、十進制轉換成二進制、十六進制、八進制
十進制轉換成二進制整數就通常采用“除2取餘,逆序排列”的方法。具體做法是用2整除十進制整數,可以得到一個商和餘數,再用2去除商,又會得到一個商和餘數,如此反複,直到商為0停止。再把先得到的餘數作為二進制低位有效位,後得到的餘數作為二進制高位有效位,依次排列。
舉個示例:将十進制“11”轉換為二進制
将十進制11轉換為二進制數為1011,表示為:(11)10 =(1011)2
同樣的,十進制轉換為十六進制,采用“除16取餘,逆序排列”的方法,十進制轉換為八進制采用“除8取餘,逆序排列”的方法。
5、進制之間轉換小技巧
1位十六進制等于4位二進制
1位八進制等于3位二進制
由于十六進制和八進制的基數問題(太大或不太好算),它們的“幂次方”和“除基數取餘”計算起來比較麻煩,為了方便計算,通常建議先把它們轉換位二進制後再繼續轉換為相應的進制。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!