bc
私は2進数を16進数に、8進数を10進数に変換する作業をしてきました。
次の例では、16進数(hex)を2進数、8進数、10進数に変換します。
最初の2回の試みには何の問題もありませんでした。
$ echo 'ibase=16; obase=2; FF' | bc
11111111
$ echo 'ibase=16; obase=8; FF' | bc
377
しかし、16進数(hex)数字を10進数(decimal)に変換しようとすると、間違った答えが出ます。答えは255
$ echo 'ibase=16; obase=10; FF' | bc
FF
ベストアンサー1
完了したら、ibase=16
16進数で数値を追加してください。含む10 は 10obase=10
進値 16 を表します。したがって、obaseは新しい入力基準(現在の16進数)を使用する前または後に設定できます。
$ echo 'obase=10; ibase=16; FF' | bc
255
$ echo 'ibase=16; obase=A; FF' | bc
255