進数とは
進数は、数を表すときに何種類の数字を使うかを決める表記方法です。このツールでは2進数・8進数・10進数・16進数の整数を相互変換し、4形式を一度に比較できます。
2進数とは
2進数は0と1の2種類だけを使います。コンピュータ内部の情報表現で広く使われ、たとえば10進数の10は2進数で1010です。
8進数とは
8進数は0~7を使います。8進数1桁は2進数3桁(3bit)と対応しやすく、権限表記などで見かけることがあります。
10進数とは
10進数は0~9を使う、日常で一般的な表記です。10進数専用のプレフィックスは付けず、0d255の形式には対応していません。
16進数とは
16進数は0~9とA~Fを使います。1桁が2進数4桁(4bit)に対応し、16進数のFは2進数の1111です。英字は大文字・小文字を切り替えられます。
2進数を10進数へ変換する方法
右端から各桁へ1、2、4、8…の重みを割り当て、1になっている桁の重みを合計します。たとえば1010は8 + 2で10です。
10進数を2進数へ変換する方法
整数を2で繰り返し割り、余りを逆順に並べます。本ツールでは入力をBigIntとして扱い、通常のJavaScript Numberで正確に表せない大きな整数も桁落ちさせずに変換します。
16進数と2進数の関係
16進数1桁は2進数4桁へ対応します。たとえば16進数FFは、Fをそれぞれ1111へ置き換えた2進数11111111、10進数255です。
0b・0o・0xとは
0bは2進数、0oは8進数、0xは16進数を示す一般的なプレフィックスです。大文字の0B・0O・0Xも入力できますが、変換元の選択と一致しない場合はエラーになります。
変換例
10進数10
2進数:1010
8進数:12
10進数:10
16進数:A
16進数FF
2進数:11111111
8進数:377
10進数:255
16進数:FF
負数について
このツールでは負数を「-」付きの符号と絶対値で表示します。たとえば10進数-42は2進数-101010です。bit幅の指定が必要な2の補数表現ではありません。
大きな整数の計算
大きな整数でも桁落ちしないよう、JavaScriptのBigIntを利用して計算しています。入力全体の文字を検証したあと、各桁を順にBigIntへ積み上げるため、不正文字の手前だけを部分変換しません。
よくある質問
10進数10を2進数にすると?
1010です。
2進数11111111を10進数にすると?
255です。
16進数FFは10進数でいくつですか?
255です。
0xFFとは何ですか?
16進数FFを示す一般的なプレフィックスです。16進数を選択して入力してください。
0b1010とは何ですか?
2進数1010を示し、10進数では10です。
大きな整数も変換できますか?
はい。符号とプレフィックスを除く4096桁の入力上限内で、BigIntを利用して正確に変換します。
小数は変換できますか?
初版は整数のみです。小数点や指数表記を含む入力はエラーになります。
負数は2の補数で表示されますか?
いいえ。マイナス記号付きの絶対値表記で表示します。
入力した数値はサーバーへ送られますか?
いいえ。入力・変換・コピー用整形はブラウザ内だけで行い、外部へ送信・保存しません。