メインコンテンツへスキップ

基数変換ツール

2進数・8進数・10進数・16進数をリアルタイムに相互変換。テキストを2進数 / Hex にも。

基数変換(どれか1つを編集すると他が即同期)

テキスト ⇄ 2進数 / Hex

基数変換ツールとは?

コンピュータは2進数で動き、プログラミングでは16進数(色・メモリアドレス・Unicode コードポイント)がよく使われ、人は10進数で考えます。この基数変換ツールは2進数・8進数・10進数・16進数をリアルタイムに相互変換し(どれか1つを編集すると他の3つが即更新)、さらにテキストを2進数 / Hex に変換・復元できます。すべてブラウザ内で処理します。

使い方

  1. 「基数変換」欄のいずれかに数値を入力すると、他の基数が即座に同期します。
  2. テキストは「テキスト ⇄ 2進数 / Hex」欄へ貼り付けると2進数と Hex が得られ、2進数や Hex を貼ればテキストに復元します。
  3. どの結果もワンクリックでコピーできます。

主な用途

  • ログやメモリダンプの16進値を10進数にする。
  • ビットマスク・フラグ・権限値を読み解く。
  • 文字列をバイト列にしてデバッグ。Base64 は Base64 ツール、色コードは カラー変換 をどうぞ。

2進数→テキストが文字化けするのはなぜ?

ここには別々の2つの区画があり、混同しないでください。上の「基数変換」は1つの数値を異なる基数で書き換えるもの(255ff と見る);下の「テキスト ⇄ 2進数」テキストを UTF-8 でバイトに分解するものです。数値として使う2進数をテキスト欄に貼ると、たいてい文字化けします——そのビット列が有効な UTF-8 バイト列とは限らないからです。テキストへ復元する規則は、ビット数が8の倍数(8ビットで1バイト)で、かつ有効な UTF-8 を構成すること。なお日本語の1文字はふつう3バイト(24ビット)で1つではなく、絵文字はさらに多いので、「テキスト→2進数」は思ったより長くなります。

よくある質問

とても大きな数も変換できますか?

できます。JavaScript の BigInt を使うため任意精度の整数に対応し、通常の parseInt が安全整数の範囲を超えて失う精度の問題がありません。

「テキスト→2進数」はどう計算しますか?

まずテキストを UTF-8 のバイト列に符号化し、各バイトを 8 ビットの2進数(または2桁の Hex)にします。日本語や絵文字も正しく扱え、復元時は UTF-8 としてバイトを読み戻します。

0x・0b の接頭辞に対応?

はい。16進数は 0x のあり・なし、2進数は 0b のあり・なしどちらも受け付け、接頭辞は無視します。その基数で無効な文字(16進数の g など)はエラー表示され、他の欄には影響しません。

負数や小数は?

本ツールは最も一般的な非負整数を対象にしています。負数の2の補数表現や浮動小数点のビット配置は範囲外の応用トピックです。

関連記事

2進数・10進数・16進数とは?基数の相互変換を完全解説 →

このツールを埋め込む

このツールをあなたのサイトやブログに無料で設置できます。下のコードをコピーして貼り付けるだけです(当サイトへのリンクを含みます)。