ビット演算電卓(プログラマー電卓)
8〜64ビット整数にAND、OR、XOR、NOT、シフト、ローテート、ビット操作を行います。16進数、2進数、8進数、符号付きの結果も表示。
| 16進数 | 2進数 | 符号なし | 符号付き | |
|---|---|---|---|---|
| A | 0xCA | 1100 1010 | 202 | -54 |
| B | 0x0F | 0000 1111 | 15 | 15 |
| 結果 | 0x0A | 0000 1010 | 10 | 10 |
ビットマスク、フラグ、レジスタの値、ハッシュ関数は、ビットを目で見られると理解しやすくなります。このプログラマー電卓は、8、16、32、64ビットの整数に対して、AND、OR、XOR、NOT、NAND、NOR、XNOR、シフト、ローテート、1ビットのセット・クリア・反転・テストを行い、固定幅のハードウェアと同じように加算、減算、乗算をラップアラウンドさせます。数値は10進数、16進数、2進数、8進数で入力でき、すべての結果を4つの表記で、符号付き・符号なしの値、立っているビット数、先頭と末尾のゼロの数とともに表示します。
使い方
- Aを入力します。10進数(負数は2の補数)、0xの16進数、0bの2進数、0oの8進数です。
- 演算を選びます。
- Bを入力します。2つ目のオペランド、シフトやローテートの量、または右端を0として数えたビット番号です。
- 幅を選びます。値はその幅に収まる必要があります。
- 結果を16進数、2進数、10進数(符号なしと符号付き)、8進数で確認します。
計算式
AND 1∧1 = 1 · OR 0∨0 = 0 · XOR 1⊕1 = 0 · NOTはすべてのビットを反転 · A << n = A × 2ⁿ mod 2ʷ · A >>> n = ⌊A ÷ 2ⁿ⌋
すべての計算は正確に(BigInt)行われ、選んだ幅wでマスクされます。算術シフト>>は空いた位置に符号ビットをコピーし(符号付きの値を2ⁿで割り、切り捨て)、論理シフト>>>はゼロで埋めます。ローテートは、一方の端からあふれたビットを反対側の端に戻します。符号付きの値は2の補数を使い、最上位ビットが立っているパターンは値 − 2ʷを意味します。
計算例
A = 0b1100_1010(0xCA、202)AND B = 0x0Fは、下位4ビットだけを残して0x0A = 0000 1010 = 10になります。8ビットでA = −16(0xF0)を算術右シフト2回すると0xFC = −4、論理シフトなら0x3C = 60になります。
よくある質問
>>と>>>の違いは何ですか?
負の数では、>>は1のビットで埋めて負のまま保ち(算術シフト)、>>>は0のビットで埋めてパターンを符号なしとして扱います。JavaとJavaScriptには両方の演算子があり、CとC++では型が符号付きかどうかに応じて>>が使われます。
フラグが立っているかどうかはどう確認しますか?
「AのビットBをテスト」を使うか、そのビットだけが立ったマスクとANDを取ります: (A & (1 << n)) != 0。
8ビットで200 + 100が44になるのはなぜですか?
300はバイト(最大255)に収まらないため、結果がラップアラウンドします。300 − 256 = 44で、符号なし8ビットのレジスタと同じです。
popcountとは何ですか?
1のビットの個数です。個数が奇数なら奇数パリティで、簡易的な誤り検出に使われます。
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/bitwise-calculator/
このツールを引用する
kakaoCalc. (2026, November 8). ビット演算電卓(プログラマー電卓). https://kakao.mobile/ja/tools/bitwise-calculator/
“ビット演算電卓(プログラマー電卓).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/bitwise-calculator/.