本文へスキップ
kitto works
ツール一覧

進数変換

2進数・8進数・10進数・16進数を相互に変換します。4つの入力欄のどれかに数値を入力すると、残りの進数表記が自動で表示されます。ブラウザ内だけで処理するため、入力した数値はどこにも送信されません。

各進数の表記で200桁までの数値に対応しています。

入力した数値はブラウザの中だけで処理され、どこにも送信されません。

使い方

  1. 変換したい進数の入力欄(2進数・8進数・10進数・16進数のいずれか)に数値を入力します。
  2. 残り3つの進数の変換結果が自動的に表示されます。ボタンを押す必要はありません。
  3. 必要な結果はコピーボタンでコピーできます。「クリア」で全欄をリセットします。

計算・変換の根拠

変換の仕組み

4つの入力欄(2進数・8進数・10進数・16進数)のどれか1つに数値を入力すると、残り3つの欄に変換結果をリアルタイムで表示します。内部では入力された基数の数値を一度整数値として読み取り、2/8/10/16の各基数の表記に変換しています。

16進数の英字は大文字・小文字のどちらで入力しても認識され、表示は大文字(A〜F)に統一されます。

負の数の扱い

先頭に - を1つ付けることで負の数を入力できます。負の数は「符号+絶対値」の方式で変換します。たとえば10進数の -10 は、2進数では -1010、16進数では -A になります。2の補数表現(ビット幅を固定してビットパターンで負の数を表す方式)は採用していません。

小数点について

本ツールは整数のみに対応しています。小数点を含む数値は入力できません。

精度について

JavaScriptの通常の数値型(Number)は 2^53-1(9,007,199,254,740,991)を超える整数を正確に扱えませんが、本ツールは内部で BigInt という任意精度の整数型を使って計算しているため、この範囲を超える大きな数値でも桁落ちや誤差なく正確に変換できます。

入力できる桁数の上限

各進数の表記で200桁までの数値に対応しています。極端に長い入力は処理の負荷を避けるためエラーになります。

送信されるデータについて

すべての変換はブラウザの中だけで行われます。入力した数値を含め、どのデータもサーバーには送信されません。

よくある質問

入力した数値は送信されますか?

送信されません。すべての変換はブラウザの中だけで行われ、外部のサーバーやAPIには一切データを送っていません。

負の数はどう変換されますか?

先頭に「-」を付けて入力すると、符号+絶対値の方式で変換します。たとえば10進数の-10は、2進数では-1010、16進数では-Aになります。8bitや16bitのビット幅を前提とした2の補数表現には対応していません。

16進数の入力は大文字と小文字どちらでもいいですか?

どちらでも構いません。a〜fの小文字で入力してもA〜Fの大文字で入力しても同じ結果になり、変換結果は大文字(A〜F)で表示されます。

とても大きな数値でも正確に変換できますか?

できます。JavaScriptの通常の数値型は2の53乗を超える整数で精度が落ちますが、本ツールはBigInt(任意精度整数)で計算しているため、200桁までの数値であれば桁落ちせず正確に変換します。

小数点を含む数値は変換できますか?

対応していません。本ツールは整数のみを対象としています。