進数変換ツール

Decimal

255

Other Bases

  • Binary: 11111111
  • Octal: 377
  • Hexadecimal: FF

Compare Calculations

Downloads

Includes your inputs and results for this calculation, plus any additional calculations you've compared.

この計算機の仕組み

数の基数(「底」)とは、次の位に繰り上がる前に数体系がいくつの異なる桁を使うかです — 10進数は10(0〜9)、2進数は2(0〜1)、8進数は8(0〜7)、16進数は16(0〜9の後にA〜F)を使用します。これら4つの基数のいずれかで整数を入力すると、この計算機は同じ値を4つすべてで書いたものを一度に表示します。

2進数はコンピューターがすべての値を内部で表す方法です(各桁が1「ビット」)。16進数はプログラミングにおける2進数の一般的な省略表記です(各16進数の桁がちょうど4つの2進数の桁を表すため、読み書きがはるかにコンパクトです)。8進数は古いUnixのファイル権限や一部の低レベルの文脈で使われます。10進数は日常的な基数10のシステムです。

計算式

すべての位取り記数法は同じように機能します: 各桁はその位の累乗の基数を掛けられ、それが合計されます:

=i=0ndi×基数i\vA{\text{値}} = \sum_{i=0}^{n} d_i \times \vB{\text{基数}}^i

ここでdid_iは位置iiの桁です(一番右の桁を0として数えます)。別の基数変換するには、10進数の値を新しい基数で繰り返し割り、各余りを記録します — 上の合計の逆です。

計算例

2進数11111111を他の3つの基数に変換する場合:

  1. 右から左に読み、各1がその位の値を寄与します: 27+26+25+24+23+22+21+20=2552^7 + 2^6 + 2^5 + 2^4 + 2^3 + 2^2 + 2^1 + 2^0 = 255
  2. 10進数: 255
  3. 8進数: 255を8で繰り返し割ると(255 ÷ 8 = 31余り7、31 ÷ 8 = 3余り7、3 ÷ 8 = 0余り3)、余りを下から上に読んで377
  4. 16進数: 255 ÷ 16 = 15余り15、15 ÷ 16 = 0余り15 — 両方の余りが15(16進数でF)であり、FFが得られます。

出典: 標準的な位取り記数法の変換.

よくある質問

数の基数(底)とは何ですか?

数の基数とは、次の位に繰り上がる前に数体系がいくつの異なる桁を使うかです。10進数(基数10)は数字0〜9を使い、2進数(基数2)は0と1だけを使い、8進数(基数8)は0〜7を使い、16進数(基数16)は0〜9の後に文字A〜Fを使って10〜15を表します。

なぜコンピューターは2進数を使うのですか?

コンピューターのハードウェアは、完全にオンかオフかのどちらかしかないスイッチから作られており、これは2進数の2つの桁(1と0)に自然に対応します。プログラマーは通常10進数や16進数のようなより人間に読みやすい基数で作業しますが、コンピューターが保存・処理するすべての値は最終的に2進数で表されます。

なぜプログラミングでは2進数の代わりに16進数が使われるのですか?

各16進数の桁はちょうど4つの2進数の桁(ビット)を表すため、16進数は同じ値を表しながら同等の2進数の約4分の1の長さになります — 人にとって長い1と0の文字列よりはるかに読みやすく、入力しやすく、比較しやすいです。

この計算機は負の数を扱えますか?

いいえ — 2進数や16進数で負の数を表すには、固定のビット幅と2の補数の慣習を選ぶ必要があり、これは文脈(8ビット、16ビット、32ビットなど)によって異なります。この計算機は変換が曖昧でない非負の整数に範囲を限定しています。