Hex 位元運算計算器

這是 Hex 位元運算計算器。A、B 可填 hex、十進位或二進位,做 AND / OR / XOR / NAND / NOR / XNOR / NOT / SHL / SHR / ASR,結果同時給出 hex、十進位和二進位。8 位下 0xB7 AND 0x0F 是 0x07。

點 A 或 B 的格子翻轉這一位。

A

B

结果

點一下即可複製

同一組 A、B 的 AND、OR、XOR、NAND、NOR、XNOR、NOT

真值表(點一列填入 A、B)

ABANDORXORNANDNORXNORNOT A
000001111
010111001
100111000
111100010

示例,點色塊填入

這是 Hex 位元運算計算器

對兩個整數做 AND、OR、XOR、NAND、NOR、XNOR、NOT、SHL、SHR、ASR,同一結果給出 hex、無符號十進位、有符號十進位和依半位元組分組的二進位。位寬可選自動、8、16、32、64。8 位下 0xB7 AND 0x0F 是 0x07,0xCC AND 0xAA 是 0x88,0x2E AND 0x4A 是 0x0A。AND、OR、XOR、NAND、NOR、XNOR、NOT、SHL、SHR、ASR、HEX 這些識別字不翻譯。

如何使用

  1. 填 A、B。每個框可單獨選 Hex / Decimal / Binary。0x、0b 可帶可不帶。
  2. 選運算和位寬。自動會依較大的運算元落到 8/16/32/64。無符號 / 有符號只影響十進位怎麼讀、怎麼顯示,位模式仍是補碼。
  3. 點 A 或 B 的格子翻轉這一位。結果列不能點。紅圈標出和 A 不同的位。
  4. 色塊複製 hex / 二進位 / 十進位。彙總表列出同一組輸入的 AND 到 NOT,點一列切換運算。真值表會把 0/1 填進 A、B,位寬 8。
  5. 顯示範例是 8 位 0xB7 AND 0x0F → 0x07。另外還有 0xCC AND 0xAA、0x2E AND 0x4A、XOR、NOT 0xCC、0x80 SHR 4。

注意事項

數值依位寬截斷。移位數量大於等於位寬時按 0。邏輯 SHR 左邊補 0;ASR 補符號位:8 位 0x80 SHR 4 是 0x08,ASR 是 0xF8。NAND 是 NOT(AND),NOR 是 NOT(OR),XNOR 是 NOT(XOR)。這不是 Hex 按位對比 的漢明距離,也不是 補碼 的分步講解。

用在哪裡

  • 旗標位、暫存器:保留這些位、置這些位、翻轉這些位。
  • 從日誌裡的 hex 核對半位元組、權限位或打包欄位。

常見問題

為什麼改成 64 位,NOT 就不一樣?

NOT 會翻遍整個位寬,前面補上的 0 都會變成 1。NOT 0x0F 在 8 位是 0xF0,32 位是 0xFFFFFFF0。

SHR 和 ASR 差在哪?

SHR 是邏輯右移,高位補 0。ASR 是算術右移,高位複製原來的符號位,負數模式仍是負數。

能填十進位或二進位嗎?

能。在 A 或 B 下面改格式。格子和三個結果框會一起更新。