BinaryFlow
基数 2〜36 のあいだで変換し、ビットをクリックして反転させ、負の数を 8〜64 ビットの 2 の補数として読み、浮動小数点数を符号・指数・仮数に開いて確認できます。桁は切り捨てられず、ブラウザーの外にも出ません。
使い方を見る任意のビットをクリックすると反転します。
すべて選んだビット幅の BigInt で計算するため、JavaScript の演算子のように黙って 32 ビットへ切り詰められることはありません。
使い方
1どの基数でも入力できる
基数 2〜36 に対応。マイナス記号、0x などの接頭辞、桁区切りの空白もそのまま受け付けます。
2ビット幅を決める
8・16・32・64 ビット、または無制限。符号ありの値は 2 の補数になるので、−42 は 0xD6 になります。
3ビットを手で反転する
グリッドのビットをクリックするか、その幅のまま AND・OR・XOR・NOT・シフトを実行できます。
4すべての表記を同時に読む
2 進・8 進・10 進・16 進、任意の基数、そしてどちらのバイト順でも生のバイト列を表示します。
実際にできること
桁数の上限なし
全体を BigInt で処理するため、300 桁の数値でも 2^53 を超えて崩れることなく正確に変換されます。
符号あり/2 の補数
選んだ幅で負の数を扱い、格納されているビットと符号つきの値を並べて表示します。
IEEE-754 を分解して表示
符号・指数・仮数を色分けし、float が実際に保持している厳密な十進値も表示します。
2〜36 の任意の基数
よくある 4 種類だけではありません。短い ID には基数 36、興味本位に基数 3 も。
あらゆるもののバイト列
4 種類の文字エンコーディングと、ドロップしたファイルの 16 進ダンプ。読み込むのは指示したときだけです。
ページの外には出ない
変換はすべてブラウザー内で行われます。アップロードも保存もしません。
よくある質問
入力したデータはサーバーへ送られますか?+
いいえ。ドロップしたファイルの 16 進ダンプも含め、変換はすべてブラウザー内で行われます。アップロードもせず、次回訪問のために保存することもありません。
使える基数は?+
入力にも追加の出力欄にも、2〜36 の任意の基数が使えます。9 より大きい桁は a〜z の文字で表し、parseInt や BigInt.toString と同じ規則です。
なぜ −42 が 0xD6 と表示されるのですか?+
8 ビットでは負の数が 2 の補数として格納されるからです。このツールは同じビットの 2 通りの読み方を同時に表示します。符号なしなら 214、符号ありなら −42 です。幅を 16 や 32 ビットにすれば、16 進表記もそれに応じて伸びます。
浮動小数点ビューでは何が分かりますか?+
格納された 32 または 64 ビットを符号・指数・仮数に分け、JavaScript が表示する短縮形ではなく、そのビットが表す厳密な十進値を出力します。0.1 が実際には 0.1000000000000000055511151231257827… であることが、こうして見えます。
ビットを直接編集できますか?+
はい。グリッドのビットはすべてボタンです。クリックすれば反転し、ほかの表示もいっせいに更新されます。選んだ幅のまま AND・OR・XOR・NOT・シフトも実行でき、すべて BigInt なので 32 ビットに切り詰められません。