複数進数算術計算機(ヘキサデシマル/バイナリ/オクタル)
ガイド
複数進数算術計算機(ヘキサデシマル/バイナリ/オクタル)
記載された数字の加算、減算、乗算、除算、および剰余を実行します。 バイナリ, 8進数, 10進数、 または 十六進数 — そして、すべてのベースで答えを一度に表示します。計算機は任意精度のBigInt算術を使用しており、大きな十六進数は正確に保持され、キャリー、バーミ、シフトおよび加算、長除法のステップが典型的なAIテキスト回答がスキップするように表示されます。8、16、32、または64ビットの固定ビット幅を選択することで、符号付きおよび符号なしオーバーフローを対応する2の補数値でフラグできます。
使用方法
- 最初の数字を入力してください。それを
0b二進数の場合に0o八進数の場合に0x十六進数の場合に、またはデフォルトで十進数として残してください。 - 操作を選択してください:加算、減算、乗算、除算、または剰余。
- 第二の数字を、同じプレフィックスルールを使って入力してください。
- オプションで、ビット幅を 無限(BigInt) 固定幅に変更してオーバーフローを検出します。
- 結果は、二進数、八進数、十進数、および十六進数で同時に表示され、計算ステップが下に印刷されます。
機能
- 複合ベース入力 — 同一式に十六進数と二進数の値を組み合わせることができます。パーサーは各数字のプレフィックスを使ってそのベースを検出します。
- リアルタイム結果(4ベース) — すべての答えは 0b…、0o…、十進数、および 0x… として表示されるため、結果を別のコンバーターにコピーする必要がありません。
- キャリーおよびバーミの可視化 — 16ビット以下のオペランドでは、ツールは加算時のキャリー出力行と減算時のバーミ行を表示します。
- シフトおよび加算乗算 — 乗算子の各「1」ビットは、被乗数のシフトコピーを生成し、それらを合計して積を形成します。これはハードウェア乗算器が実際に実行する方法です。
- 二進数長除法 — 運動中の余りと商ビットのステップバイステップテーブル、最終的な商と余りを二進数および十進数で表示します。
- オーバーフロー検出 — 8、16、32、または64ビットを選択すると、結果が符号付きおよび符号なし範囲に収まるかどうかを報告し、収まらない場合に2の補数の巻き戻し値を表示します。
- 任意精度 — JavaScript BigIntを使用して、計算機は標準53ビットの双精度浮動小数点数の制限を超える十六進数値を丸めずに処理します。
よくある質問
-
なぜ二進数、八進数、十六進数が十進数と並存しているのか?
各ベースは異なるコンピューティングレイヤーに正確にマッピングされます。二進数はトランジスタの2つの電圧状態を表します。八進数は3ビットごとにグループ化し、PDP-8などの早期のメインフレームで広く使用されました。十六進数は4ビットをグループ化し、バイトの2つのニブに正確に一致するため、メモリアドレス、色コード、レジスタ値を人間が読みやすい形で書くために標準となっています。十進数は、人間が10本の指を持っているため、日常的な数値処理に使われているだけで、コンピュータがそれを好むわけではありません。
-
二進数加算におけるキャリーとは何ですか?
2つの二進数が2以上になる場合、最も低いビットは現在の列に残り、残りは次の高い列にキャリーされます。二進数では、キャリー値は1のみであり、各列の2つの加算数が1の場合、または1+1が入ってくるキャリーの上に配置された場合に発生します。これは十進数算術における1のキャリーと同じアイデアですが、閾値は10ではなく2です。
-
2の補数は負の数をどのように表現しますか?
2の補数は、正の値のすべてのビットを反転し、その後1を加えることで負の値をエンコードします。Nビットのフィールドでは、最上位ビットが符号ビットとなり、範囲は -2^(N-1) から 2^(N-1)-1 までになり、加算または減算は符号付きおよび符号なしのオペランドに別々の論理を必要としません。同じビットパターンは、プログラムがフィールドを解釈する方法によって、大きな無符号数または負の符号付き数として読み取れます。
-
整数オーバーフローとは何ですか?
算術結果が固定幅の整数が保持できる最大値を超えるか、または最小値を下回った場合にオーバーフローが発生します。8ビット無符号整数は255から0に戻り、8ビット符号付き整数は127から-128に戻ります。低レベルコードでは、CPUが高ビットを無視してトリムするため、微妙なバグが生じることがあり、巻き戻しの振る舞いを明示的に検討する必要があります。
-
メモリを読む際に、十六進数が二進数よりも好まれる理由は何ですか?
二進数は、人間にとって不快であるため、小さな値でも1と0の長い文字列がすぐに現れます。十六進数は、4ビットのグループを1つの文字に圧縮するため、32ビットのレジスタを32ビットの二進数で書く必要があるのを8ビットの十六進数に減らします。このマッピングは正確で損失なしであり、デバッグツール、アセンブラー、プロトコル仕様がほぼすべてバイト値を十六進数で表示している理由です。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
