AZ Tools

비트 연산 계산기

개발

두 정수를 입력하면 자주 쓰는 비트 연산을 한 번에 보여줍니다: AND, OR, XOR, NOT(~A, ~B), 그리고 임의 자릿수의 좌/우 시프트입니다. 각 결과는 2진수(니블 단위로 묶음), 16진수, 부호 없는 10진수, 2의 보수 부호 있는 10진수로 표시됩니다. 8·16·32·64비트 폭을 고르면 결과가 그 크기로 래핑되어, NOT과 시프트가 C·Rust나 레지스터에서와 똑같이 동작합니다. 입력은 10진수, 0x 16진수, 0b 2진수, 0o 8진수를 받으며 음수는 2의 보수로 해석됩니다. 임의 정밀도 정수로 계산해 64비트 값도 정확합니다. 임베디드 작업, 비트 플래그·마스크, 프로토콜 디코딩, 비트 연산 학습에 유용합니다.

10진수, 0x 16진수, 0b 2진수, 0o 8진수 입력 가능(음수 허용).

2진수16진수10진수부호 있음
A0000 11000x0C1212
B0000 10100x0A1010
A & B0000 10000x0888
A | B0000 11100x0E1414
A ^ B0000 01100x0666
~A1111 00110xF3243-13
~B1111 01010xF5245-11
A << 10001 10000x182424
A >> 10000 01100x0666

사용법

  1. A와 B에 두 정수를 입력합니다(10진수 또는 0x / 0b / 0o 접두어).
  2. 비트 폭과 시프트 양을 고릅니다.
  3. 각 연산을 2진수·16진수·부호 없는/있는 열에서 확인합니다.

자주 묻는 질문

음수는 어떻게 처리되나요?
선택한 폭의 2의 보수로 해석됩니다. 예를 들어 −1은 모두 1(8비트에서 0xFF)이 됩니다. 부호 있는 열은 모든 결과의 2의 보수 값을 보여줍니다.
비트 폭은 무엇을 바꾸나요?
결과를 그 비트 수로 마스킹하며, 이는 NOT과 시프트에서 중요합니다. ~12는 8비트에서 0xF3, 32비트에서 0xFFFFFFF3 입니다 — C의 고정 크기 정수나 CPU 레지스터와 같습니다.
16진수나 2진수도 입력되나요?
네 — 16진수는 0x(0xFF), 2진수는 0b(0b1010), 8진수는 0o 접두어를 쓰면 됩니다. 일반 10진수도 됩니다.
64비트 결과도 정확한가요?
네. 내부적으로 임의 정밀도 정수를 사용하므로, 32비트 JavaScript 비트 연산자와 달리 64비트 연산에서 정밀도를 잃지 않습니다.

관련 도구