整数計算に限りますが、bashで$(( ))による計算をするときに# (ASCIIコードで0x23、シャープ、井桁、番号記号、ナンバーサイン、ハッシュ、どう呼べばよいのか?)を使うとN進数で記載できます。計算結果の表示は10進数になります。
2進数
$ echo $((2#1110)) 14
3進数
$ echo $((3#201)) 19
4進数
$ echo $((4#123)) 27
5進数
$ echo $((5#234)) 69
8進数
$ echo $((8#17)) 15
10進数
$ echo $((10#17)) 17
16進数
$ echo $((16#fe)) 254
20進数
$ echo $((20#ji)) 398
40進数
$ echo $((40#D)) 39
50進数
$ echo $((50#N)) 49
60進数
$ echo $((60#X)) 59
64進数
$ echo $((64#Z)) 61 $ echo $((64#@)) 62 $ echo $((64#_)) 63
基底の最大値は64で、それより値が大きいと
$ echo $((65#1)) bash: 65#1: 無効な基底の数値です (エラーのあるトークンは "65#1")とエラーになります。
0 件のコメント :
コメントを投稿