資工計概:學習資料整理文章前言
尊重智慧財產權
此篇整理文章為本人所撰寫,禁止:轉貼、修改、和商業使用!歡迎分享網址連結!
互相交流討論
因為此篇整理文章為本人獨自撰寫,如有錯誤的地方,或是對於內容有其他意見,額外補充,都歡迎在下方的留言區一起討論!一起撰寫出完整的計概學習資料!
二進位和十六進位之間的轉換 Binary-Hexadecimal Conversion
在二進位中的 4 個位數(bits)相當於十六進位中的 1 個位數(bits)。
例:二進位(Binary)轉十六進位(Hexadecimal)
(1001001100)₂
⇒ 10,0100,1100(每 4 個位數個別做十進位轉換)
⇒ (10)₂ = (2)₁₀ = (2)₁₆
⇒ (0100)₂ = (4)₁₀ = (4)₁₆
⇒ (1100)₂ = (12)₁₀ = (C)₁₆
所以,(1001001100)₂ = (24C)₁₆
例:十六進位(Hexadecimal)轉二進位(Binary)
(52B)₁₆ 每 1 個位數轉成 4 個位數
⇒ (5)₁₆ = (0101)₂
⇒ (2)₁₆ = (0010)₂
⇒ (B)₁₆ = (1011)₂
所以,(52B)₁₆ = (010100101011)₂
二進位和八進位之間的轉換 Binary-Octal Conversion
在二進位中的 3 個位數(bits)相當於八進位中的 1 個位數(bits)
例:二進位(Binary)轉八進位(Octal)
(1001001100)₂
⇒ 1,001,001,100(每 3 個位數個別做十進位轉換)
⇒ (1)₂ = (1)₁₀ = (1)₈
⇒ (001)₂ = (1)₁₀ = (1)₈
⇒ (100)₂ = (4)₁₀ = (4)₈
所以,(1001001100)₂ = (114)₈例:八進位(Octal)轉二進位(Binary)
(527)₈ 每 1 個位數轉成 3 個位數
⇒ (5)₈ = (101)₂
⇒ (2)₈ = (010)₂
⇒ (7)₈ = (111)₂
所以,(527)₈ = (101010111)₂
八進位和十六進位之間的轉換 Octal-Hexadecimal Conversion
在八進位中的 4 個位數(bits)相當於十六進位中的 3 個位數(bits)。技巧:在八進位與十六進位之間做轉換時,會有個過渡轉換,為二進位。
例:八進位(Octal)轉十六進位(Hexadecimal)
(527)₈ 每 1 個位數轉成 3 個二進位數
⇒ (101,010,111)₂ 重新分組,每 4 個位數一組
⇒ (1,0101,0111)₂
⇒ (1)₂ = (1)₁₀ = (1)₁₆
⇒ (0101)₂ = (5)₁₀ = (5)₁₆
⇒ (0111)₂ = (7)₁₀ = (7)₁₆
所以,(527)₈ = (157)₁₆
例:十六進位(Hexadecimal)轉八進位(Octal)
(52B)₁₆ 每 1 個位數轉成 4 個位數
⇒ (0101,0010,1011)₂ 重新分組,每 3 個位數一組
⇒ (010,100,101,011)₂
⇒ (010)₂ = (2)₈
⇒ (100)₂ = (4)₈
⇒ (101)₂ = (5)₈
⇒ (011)₂ = (3)₈
所以,(52B)₁₆ = (2453)₈
數字位數 Number of digits
在做真正轉換前,我們可以運用「對數 log」來事先知道轉換後(destination system)會有幾位數。
轉換後所需位數(destination system) = ⌈log 轉換前基數^位數(source system),以轉換後的數字系統之基數為底(destination system)⌉(⌈⌉代表取大於或等於的最小整數)
例:在二進位系統中,需要幾位數來表示十進位系統中的四位數?
所需位數 =⌈log₂10⁴⌉ ≑ ⌈13.29⌉ = 14 位。
驗證:二進位中 13 位數的最大值 Max = 2¹³ − 1 = 8191。
二進位中 14 位數的最大值 Max = 2¹⁴ − 1 = 16383。
所以:用二進位來表示十進位系統中的 4 位數至少需要 14 位。