1
10進数をその10進数に対応するビットのみが設定されているように16進数形式に変換したいと考えています。例えば、入力0、0が設定され、その結果小数点を16進数に変換するR
> paste("0x", sprintf("%032x",2^(0)),sep="")
[1] "0x00000000000000000000000000000001"
および1について、一つはこれは30
> paste("0x", sprintf("%032x",2^(30)),sep="")
[1] "0x00000000000000000000000040000000"
まで動作
> paste("0x", sprintf("%032x",2^(1)),sep="")
[1] "0x00000000000000000000000000000002"
その結果、設定されるべきビットであるべきであるビット
より大きな値では機能しません。
> paste("0x", sprintf("%032x",2^(32)),sep="")
Error in sprintf("%032x", 2^(32)) :invalid format '%032x'; use format %f, %e, %g or %a for numeric objects
これを回避する方法はありますか?