基本知識
十進制
基數為10,逢10進1。在十進制中,一共使用10個不同的數字符號,這些符號處于不同位置時,其權值各不相同。
二進制
基數為2,逢2進1。在二進制中,使用0和1兩種符號。
八進制
基數為8,逢8進1。八進制使用8種不同的符號,它們與二進制的轉換關系為:
0:000 1:001 2:010 3:011 4:100 5:101 6:110 7:111
十六進制
基數為16,逢16進1。十六進制使用16種不同的符號,它們與二進制的轉換關系為:
0:0000 1:0001 2:0010 3:0011 4:0100 5:0101 6:0110 7:0111 8:1000 9:1001 A:1010 B:1011 C:1100 D:1101 E:1110 F:1111
制轉換為十進制
二進制化為十進制
例:將二進制數101.01轉換成十進制數
(101.01)2 = 1×22 + 0×21 + 1×20 + 0×2-1 + 1×2-2 = (5.25)10
八進制化為十進制
例:將八進制數12.6轉換成十進制數
(12.6)8 = 1×81 + 2×80 + 6×8-1 = (10.75)10
十六進制化為十進制
例:將十六進制數2AB.6轉換成十進制數:
(2AB.6)16 = 2×162 + 10×161 + 11×160 + 6×16-1 = (683.375)10
轉換為二進制
八進制化為二進制
規則:按照順序,每1位八進制數改寫成等值的3位二進制數,次序不變。
例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2
十六進制化為二進制
規則:每1位十六進制數改寫成等值的4位二進制數,次序不變。
例: (3A8C.D6)16 = (0011 1010 1000 1100.1101 0110)2 = (11101010001100.1101011)2
十進制整數化為二進制整數
規則:除二取余,直到商為零為止,倒排。
例:將十進制數86轉化為二進制
2 | 86…… 0
2 | 43…… 1
2 | 21…… 1
2 | 10…… 0
2 | 5 …… 1
2 | 2 …… 0
2 | 1 …… 1
結果:(86)10 = (1010110)2
十進制小數化為二進制小數
規則:乘二取整,直到小數部分為零或給定的精度為止,順排。
例:將十進制數0.875轉化為二進制數
0.875
× 2
1.75
× 2
1.5
×2
1.0
結果:(0.875)10 = (0.111)2
轉換為八進制
二進制化為八進制
整數部份從最低有效位開始,以3位一組,最高有效位不足3位時以0補齊,每一組均可轉換成一個八進制的值,轉換完畢就是八進制的整數。
小數部份從最高有效位開始,以3位一組,最低有效位不足3位時以0補齊,每一組均可轉換成一個八進制的值,轉換完畢就是八進制的小數。
例:(11001111.01111)2 = (11 001 111.011 110)2 = (317.36)8
十六進制化為八進制
先用1化4方法,將十六進制化為二進制;再用3并1方法,將二進制化為8制。
例: (1CA)16 = (000111001010)2 = (712)8
說明:小數點前的高位零和小數點后的低位零可以去除。
十進制化八進制
方法1:采用除8取余法。
例:將十進制數115轉化為八進制數
8| 115…… 3
8| 14 …… 6
8| 1 …… 1
結果:(115)10 = (163)8
方法2:先采用十進制化二進制的方法,再將二進制數化為八進制數
例:(115)10 = (1110011)2 = (163)8
轉換為十六進制
二進制化為十六進制
整數部份從最低有效位開始,以4位為一組,最高有效位不足4位時以0補齊,每一組均可轉換成一個十六進制的值,轉換完畢就是十六進制的整數。
小數部份從最高有效位開始,以4位為一組,最低有效位不足4位時以0補齊,每一組均可轉換成一個十六進制的值,轉換完畢就是十六進制的小數。
例:(11001111.01111)2 = (1100 1111 .0111 1000)2 = (CF.78)16
八進制化為十六進制
先將八進制化為二進制,再將二進制化為十六進制。
例:(712)8 = (111001010)2 = (1CA)16
十進制化為十六進制
方法1:采用除16取余法。
例:將十進制數115轉化為八進制數
16| 115…… 3
16| 7 …… 7
結果:(115)10 = (73)16
方法2:先將十進制化為二進制,再將二進制化為十六進制。
例:(115)10 = (1110011)2 = (73)16
您可能感興趣的文章:- PHP函數篇詳解十進制、二進制、八進制和十六進制轉換函數說明
- 進制轉換算法原理(二進制 八進制 十進制 十六進制)
- php圖片的二進制轉換實現方法
- C++ 十進制轉換為二進制的實例代碼
- c++實現十進制轉換成16進制示例
- PHP中實現中文字符進制轉換原理分析
- Java 進制轉換的方法
- 位運算實現十進制轉換為二進制
- 編寫C語言程序進行進制轉換的問題實例
- C 語言進制之間的轉換