16進数から10進数に変換
「16進数の入力」に16進数を入力または貼り付けると、「10進数の結果」に入力と同時に10進数が表示されます。何桁でも正確で、64ビットや2^53の上限はありません。0xや#などの接頭辞、スペース、カンマ、アンダースコアは無視されるので、0xDE, 0xAD, 0xBE, 0xEFのようなダンプもそのまま貼り付けられます。変換はお使いのブラウザ内で行われ、アップロードも保存もされません。
16進数を10進数に変換するやり方
- 「16進数の入力」に16進数を入力または貼り付けてください。たとえば
0xFFやDE AD BE EFです。 - 「10進数の結果」を読み取ります。キーを押すたびに更新されるので、変換ボタンはありません。
- 「10進数をコピー」を押すと、その数をクリップボードにコピーできます。確認のため、ボタンの表示が一瞬「コピー完了」に変わります。
- 長い数のときは「桁区切りを付ける」をオンにしてください。結果が3桁ずつに区切られ、区切り文字にはページの言語の記号が使われます。初期設定ではオフなので、オンにしない限りコピーされる数は数字だけです。
- 最初からやり直すには「消去」を押してください。入力があるときに表示されます。
16進数の入力欄に貼り付けられるもの
空白、カンマ、セミコロン、アンダースコアは区切りとして扱われ、取り除かれます。各ブロックの先頭には 0x や # を付けられます。大文字と小文字のどちらでも、先頭の0があっても問題ありません。
FFはFFとして読まれ、255になります0x1F4は1F4として読まれ、500になりますDE AD BE EFと0xDE, 0xAD, 0xBE, 0xEFはDEADBEEFとして読まれ、3735928559になります0xBE_EFはBEEFとして読まれ、48879になります#FF8800はFF8800として読まれ、16746496になります
G、マイナス記号、ドット、末尾の h など、これ以外の文字があると、見つかった文字とともに「G」は16進数の数字ではありません。16進数で使えるのは0-9とA-Fです。という通知が出ます。その文字を取り除くまで、10進数の結果は空のままです。
16進数から10進数への変換例
FF= 255。8ビットの最大値です1F4= 50010000= 65536。つまり16^4です7FFFFFFF= 2147483647。符号付き32ビットの最大値ですFFFFFFFF= 4294967295。符号なし32ビットの最大値です20000000000000= 9007199254740992。2^53にあたり、通常のJavaScriptの数値は、ここから桁が失われ始めますFFFFFFFFFFFFFFFF= 18446744073709551615。符号なし64ビットの最大値ですFFFFFFFFFFFFFFFFFFFF= 1208925819614629174706175。20桁、80ビットです
16進数から10進数への手計算のやり方
16進数は16を基数とする表し方です。各桁は右隣の桁の16倍の値を持ち、右から数えた位は1、16、256、4096…となります。各桁にその位の値を掛けて、すべて足してください。9より大きい数は文字で表します。Aは10、Bは11、Cは12、Dは13、Eは14、Fは15です。
たとえば 1A3F の場合は、1 x 4096 + 10 x 256 + 3 x 16 + 15 x 1 = 4096 + 2560 + 48 + 15 = 6719 です。確かめるには「16進数の入力」に 1A3F を入力してください。数桁を超えると手計算は大変になります。そこで16進数から10進数への変換ツールが役に立ちます。
大きな16進数:64ビット、128ビット、それ以上
通常の浮動小数点数を使う変換ツールでは、整数を正確に扱えるのは9007199254740991(2^53 - 1)までで、それを超えると末尾の桁が丸められます。このページはJavaScriptのBigIntを使うので、64ビットのハッシュの断片、128ビットの識別子、256ビットの鍵でも、1桁ずつ正確な10進数に変換されます。
上限は16進数で50,000桁です。それを超えると、入力した桁数を知らせて入力を短くするよう求める通知が表示されます。
この変換ツールでできないこと
- すべての値を符号なしとして読み取ります。負の数、2の補数、符号付きの読み方はないので、
FFFFFFFFは-1ではなく4294967295になります。 - 変換できるのは整数だけです。
1.8のように小数点のある16進数は受け付けません。 - 変換は16進数から10進数への一方向だけです。10進数から2進数への変換には、2進数変換ツールを使ってください。
#FF8800のような色コードは1つの数として読まれ、赤・緑・青には分けられません。- バイトは書いた順に読まれ、入れ替えられることはありません。
- 16進数が数ではなく、エンコードされた文字列のバイトである場合は、Base64変換でBase64と文字列の相互変換ができます。
よくある質問
16進数を10進数に変換するには?
「16進数の入力」に16進数を入力または貼り付けると、「10進数の結果」に入力と同時に結果が表示されます。手計算では、各桁に16のべき乗(右端が1)を掛けて足してください。たとえば1F4は1 x 256 + 15 x 16 + 4 = 500です。A~Fは10~15を表します。
0xFFを10進数にすると?
255です。Fは15なので、FFは15 x 16 + 15 = 255となり、1バイトに収まる最大の値です。先頭の0xはその数が16進数であることを示すだけで、無視されます。
64ビットや128ビットの大きな16進数を10進数に変換するには?
そのまま貼り付けてください。変換にはJavaScriptのBigIntを使うため、64ビットや2^53の上限はなく、結果は丸められず正確です。FFFFFFFFFFFFFFFF(64ビットの最大値)は18446744073709551615、Fが32桁(128ビットの最大値)なら340282366920938463463374607431768211455になります。上限は16進数で50,000桁です。
0xの接頭辞やスペース、カンマは使えますか?
はい。スペース、カンマ、セミコロン、アンダースコアは区切りとして扱われて取り除かれ、各ブロックの先頭には0xや#を付けられます。そのため0xDE, 0xAD, 0xBE, 0xEF、DE AD BE EF、0xDEADBEEFはどれも3735928559になります。大文字と小文字、先頭の0も使えます。
16進数のカラーコードを10進数に変換するには?
#の有無にかかわらず、コードを貼り付けてください。#FF8800は、6桁が1つの数として読まれるため16746496になります。赤・緑・青の値を別々に知りたいときは、2桁ずつ個別に変換してください。FFは255、88は136、00は0です。
符号付きの16進数も10進数に変換できますか?
いいえ。すべての値を符号なしの数として読み取るので、FFFFFFFFは-1ではなく4294967295になります。8~Fで始まる値を32ビットの符号付きとして読みたい場合は、結果から4294967296を自分で引いてください。入力にマイナス記号があると受け付けられません。
リトルエンディアンの16進数は10進数に変換できますか?
桁は書かれたとおりに読まれ、いちばん左の桁が最上位となり、バイトの順序が入れ替えられることはありません。データがリトルエンディアンの場合は、先にバイトを逆順に並べてください。78 56 34 12は12 34 56 78となり、305419896に変換されます。
貼り付けた16進数はどこかにアップロードされますか?
いいえ。変換はお使いのブラウザのタブ内で行われ、入力した内容がアップロードされたり保存されたりすることはありません。
おすすめ
-
コンピュータはなぜ動くのか 第2版レジスタやメモリの16進値が何を意味するのか、仕組みから理解できる定番の一冊です。
-
カシオ 関数電卓 fx-JP900CW16進・10進・2進を手元で切り替えて、ブラウザを開かずに値を確かめられます。
-
ラズパイPico W かんたんIoT電子工作レシピ読み取った16進の値を、実際のマイコンボードを動かして確かめてみたくなる一冊です。
無料でツールを続ける支えになります。✨
画像はイメージです。 Amazonのアソシエイトとして、Capsule Toolsは適格販売により収入を得ています。