概要と使いどころ
プログラマー電卓はマシンの整数を扱います。1 つの値を16進数・10進数・8進数・2進数で同時に表示し、ビット演算子 AND、OR、XOR、NOT、NAND、NOR、シフト(<<、>>)、ローテート(ROL、ROR)を適用します。値は 64 ビットの QWORD、32 ビットの DWORD、16 ビットの WORD、8 ビットの BYTE のいずれかで保持されます。
レジスタのダンプ、ビットマスク、サブネットマスク、色チャンネル、ファイル権限ビットに向いています。整数専用で、小数点はなく、除算は整数の商を返します。10進数の計算とパーセントは標準電卓、関数は関数電卓、グラフ化した関係はグラフ電卓の役割です。
キーと入力
- 01基数の行。4 つの行が値を HEX、DEC、OCT、BIN で表示します。行をクリックすると値が変換され、入力する基数が設定されます。
- 02入力規則。有効な基数にない数字は使えません。BIN では
2–9 と A–F が無効、OCT では 8、9 と A–F が無効です。16進数の英字は HEX で有効です。許可されないキー入力はエラーなしで無視されます。 - 03ワードサイズ。
QWORD、DWORD、WORD、BYTE が 64、32、16、8 ビットを選び、BIN 行はワード全体まで 0 で埋められます。 - 04ビットグリッド。各ビットは押すと反転するボタンです。
BYTE で最上位ビットを立てると HEX は 80、DEC は -128 と表示されます。 - 05演算子。
AND、OR、XOR、NAND、NOR、<<、>>、ROL、ROR は +、−、×、÷ と同様に 2 つ目のオペランドを待ちます。NOT はすぐに適用されます。% は整数の剰余で、パーセントではありません。 - 06キーボード。数字と
A–F で数値を入力し(小文字も可)、+ - * / % は四則演算、& | ^ は AND、OR、XOR、< と > はシフト、~ は NOT、Enter または = で評価、Backspace で 1 桁削除、Esc でクリアします。NAND、NOR、ROL、ROR にショートカットはありません。クリアキーは C と表示され、HEX には別の C 数字キーがあります。
計算例
- 色をパックする。 HEX を有効にして
12 << 10 = と押すと 120000、続けて OR 3400 = で 123400、さらに OR 56 = で 123456 と表示されます。これは色 #123456 の 24 ビット値で、DEC では 1193046 と読めます。
- サブネットマスクを読む。 DWORD と HEX を有効にして
C0A80407 AND FFFFFF00 = と押すと C0A80400 と表示され、ホストビットが消えます。DEC 行はビット 31 が立っているため -1062730752 と読みます。ワードサイズを QWORD に変えると、同じ C0A80400 が 3232236544 と読めます。ビットは変わらず、符号付きの読み方だけが変わります。
- 負のバイトをシフトする。 BYTE と HEX を有効にして
FF >> 1 = と押すと 7F と表示され、DEC では 127 と読めます。算術右シフトなら -1 の読みを保ちますが、この >> は論理シフトで、空いたビットを 0 で埋めます。
背景
16進数の 1 桁はちょうど 4 ビットなので、1 バイトは 2 桁、32 ビットワードは 8 桁になります。アドレス、色コード、ネットワークマスクを16進数で読むのはそのためです。現在の CPU が採用する符号付きの約束である 2 の補数は、負の数に単一のゼロを与え、加算と減算で 1 つの回路を共有できます。最上位ビットが符号を表します。論理シフトは空いたビットを 0 で埋め、コンパイル言語が符号付き型に使う算術シフトは代わりに符号ビットをコピーします。
結果の読み方と制限
- 符号付き 10 進数、符号なしの基数。
- DEC の読みは選んだワードの符号付き 2 の補数で、HEX、OCT、BIN は同じビットを符号なしで読みます。
BYTE では FF は -1 ですが、QWORD の同じ FF は 255、8000000000000000 は -9223372036854775808 と読めます。メイン表示は 10 進数の桁を 3 桁ごとに区切ります。BIN 行は常にワード全体を 4 ビットごとに表示し、HEX と OCT は先頭のゼロなしで表示します。 - 切り捨て。
+、−、× は正確な整数を計算してからワードに合わせて切り捨てます。生の結果が収まらない場合、表示は下位ビットとともに注記を出します。BYTE では 200 + 100 = が 44 を表示し、Result 300 exceeds BYTE; truncated to 44 と付きます。0 − 1 = は -1 を表示し、Result -1 exceeds BYTE; truncated to 255 と付きます。シフトは警告しません。バイト 80 を 1 ビット左シフトすると、立っているビットがワードから出るため 0 になります。- 除算と剰余。
- 除算は 0 方向に切り捨てます。
BYTE を選んで HEX で F9 を入力すると、DEC 行は -7 と読み、÷ 2 = は -3 と表示します。% は左オペランドの符号を保つので、-7 % 3 = は -1 と表示します。ゼロでの除算や剰余は Division by zero または Modulo by zero で停止し、C で消すまで続きます。 - ワードサイズ。
- ワードより大きいリテラルは表示に残り、基数の行はマスクされた値を示します。次の操作で切り捨てられ、切り捨てが報告されます。ワードサイズを変えると現在の値が下位ビットに切り捨てられます。
256 の後に BYTE を選ぶと 0 と表示されます。 - 整数のみ。
- 小数や浮動小数点の計算はしません。小数点はなく、除算は整数の商を返します。分数とパーセントは標準電卓の役割です。
よくある間違い
- 右シフトは算術ではなく論理。 BYTE では
FF は -1 と読めますが、>> 1 は 7F(127)になります。符号拡張を期待する人には、もっともらしく見える誤った数です。
- ワードサイズを確認せずに DEC を読む:
FF は BYTE で -1、QWORD で 255 です。
- 有効な基数を確認せずにオペランドを入力する:HEX が有効なとき、
10 は 16、16 は 22 です。
- 分数を期待する:
7 ÷ 2 = は 3 と表示します。余りは 7 % 2 = で 1 と表示されます。
<< がはみ出したビットを報告すると期待する:BYTE では 80 << 1 は黙って 0 になります。切り捨てを報告するのは +、−、× だけです。
% をパーセントキーのつもりで使う:ここでは剰余です。パーセントは標準電卓にあります。
使われる場面
- レジスタとフラグの値。 グリッドで個々のビットを反転し、マスクのデバッグ中に同じワードを符号付き 10 進数、16 進数、8 進数で読みます。
- アドレスとサブネットマスク。
C0A80407 AND FFFFFF00 = でホストビットを消して C0A80400 にし、ネットワーク範囲を求めます。
- 色チャンネル。
RR GG BB の各バイトを << と OR で 123456 にまとめ、24 ビットの色コードにします。
- ファイル権限ビット。 モードビットを 1 つずつ立て、結果の数値を OCT で読み、
chmod 風の値にします。
プライバシー
すべての計算はブラウザー内で実行されます。入力や計算した内容がアップロードされることはなく、ページはそれを記録しません。
出典
- MDN Web Docs, ビット単位 AND (&) (访问日期:2026-09-30)— 2 の補数ビットパターン上のオペランドの意味。
- Wikipedia, ビット演算 (访问日期:2026-09-30)— AND、OR、XOR、NOT の定義。
- Wikipedia, 論理シフト (访问日期:2026-09-30)— 符号を保つ算術シフトに対するゼロ埋めの挙動。
- Wikipedia, 2の補数 (访问日期:2026-09-30)— 固定幅ワードの符号付き解釈。
- Wikipedia, 16進数 (访问日期:2026-09-30)— 16進数 1 桁あたり 4 ビット。
Calculators in this hub
Hand-picked tools, one click away. The mini versions compute live and carry your values into the full calculator.
Sources & review
- Updated