使用 bc 進行進製轉換
在 shell
中進行進製轉換的另乙個訣竅是使用bc
,它是一種任意精度運算語言,大多數 unix/linux
安裝程式都提供。因為它允許您指定輸出進製,所以當您需要以十進位制以外的進製輸出時,這是一種很好的技術。
bc
的特殊變數ibase
和obase
分別包含用於輸入和輸出的進製的值。預設情況下,都被設定為 10。要執行進製轉換,需要改變其中的乙個或兩個值,然後提供乙個數字。立即嘗試,如清單 8 中所示。
清單 8. 使用 bc 執行進製轉換
$bc -ql
10
10
obase=16
10
a
ibase=2
10
2
要快速執行進製轉換,可以聯合使用bc
和echo
形成快捷的單命令列程式,將給定的值通過管道傳輸給bc
。鍵入清單 9 中顯示的內容。
清單 9. shell 單命令列 bc 程式
$echo 'obase=16; 47' | bc2f
$echo 'obase=10; ibase=16; a03' | bc2563
警告:當您設定bc
的輸入進製以後,輸入bc
的所有數字都使用該進製,包括您提供用於設定輸出進製的數字。因此最好先設定輸出進製,否則可能會產生意想不到的結果,如清單 10 中所示。
清單 10. 設定輸入和輸出進製的先後順序的重要性
$echo 'ibase=16; obase=10; a' | bca
$echo 'ibase=16; obase=a; a' | bc10
查表法進行 進製轉換
我就用絕招試試手 1.什麼是查表法 通過容器將對應的關係進行儲存。通過運算得出相應關係中的其中一方的結果,再通過這個結果去容器中找對應的另乙個內容。可以這樣理解 在庫房裡有六個箱子,對每箱子都進行了編號,當我們要找某個箱子時,可以根據對應的編號到庫房裡去找相應的箱子!2.查表法的特點 a 有對應的關...
用批處理進行進製轉換
echo off setlocal enabledelayedexpansion set p a 請輸入要轉換的十進位制數 set aa a set p b 請輸入要轉換的幾進製?set str 0123456789abcde hex set a m a b set a n a b set n st...
Java查表法進行進製轉換
語言也是這樣,它們也有著查表的方法,因為這樣使它更加簡單,更加容易讓人理解,當程式寫的一塌糊塗時,真的是很難再拾起來,所以簡單對程式設計師來說,就是天大的樂事!今天我帶來的就是福音,就是用天天幹的查表法來實現進製準換,下面就是激動人心的 部分 class arraytest7 十進位制 二進位制 p...