비트 연산 계산기

믿다 AND, OR, XOR, NOT, 왼쪽 시프트, 오른쪽 시프트(2진수, 10진수 또는 16진수 입력). 이 온라인 수학 도구는 각 비트를 정렬하고, 작업을 단계별로 보여주고, 세 가지 숫자 체계 모두에서 결과를 반환합니다.

숫자 A
12월46 마녀0x2E
숫자 B
12월74 마녀0x4A

결과 요약

AND (&)
12월0
마녀0x00
큰 상자00000000
OR (|)
12월0
마녀0x00
큰 상자00000000
XOR (^)
12월0
마녀0x00
큰 상자00000000
NOT (~A)
12월0
마녀0x00
큰 상자00000000

비트별 시각화

1 활성 비트 0 차이점 비트 0 0이 포함됨 0 선행 0

대화형 진리표 매트릭스

행을 클릭하여 A와 B에 값을 로드하거나 각 게이트의 작동 방식을 검사합니다.

입력 A입력 BANDORXORNOT 에이
000001
010111
100110
111100
해당 값을 테스트하려면 진리표 행을 클릭하세요.

비트 연산이란 무엇입니까?

비트 연산은 한 번에 한 위치씩 정수의 이진수를 처리합니다. 비트별 계산기 도구는 숫자 A와 숫자 B를 정렬하고 모든 비트 쌍에 하나의 규칙을 적용하고 출력 패턴을 구축합니다. 소프트웨어 개발자, 컴퓨터 과학 학생 및 엔지니어는 시스템 프로그래밍, 그래픽, 네트워킹, 암호화 및 성능 최적화에서 비트 수준 분석을 사용합니다.

1비트 논리 연구실

에이
&
결과0

AND A와 B가 모두 1인 경우에만 1을 반환합니다.

비트별 AND (&)

비트별 AND 정렬된 입력 비트가 모두 1인 경우에만 1을 반환합니다. 비트와이즈 AND 작업은 공유 활성 비트를 유지하므로 AND 마스킹 및 권한 확인에 유용합니다. 예를 들어, 1100 & 1010 = 1000.

비트별 OR (|)

비트별 OR 정렬된 입력 비트 중 하나가 1이면 1을 반환합니다. 비트와이즈 OR 연산자는 활성 비트를 지우지 않고 플래그를 결합하고 선택한 비트를 설정합니다. 예를 들어, 1100 | 1010 = 1110.

비트별 XOR (독점적인 OR)

비트별 XOR 정렬된 입력 비트가 다르면 1을 반환합니다. 비트별 XOR 계산은 변경된 위치를 표시하고 토글, 패리티 검사, 체크섬 및 오류 감지를 지원합니다. 예를 들어, 1100 ^ 1010 = 0110.

비트별 NOT (~)

비트별 NOT 포함된 모든 비트를 뒤집습니다. 1은 0이 되고 0은 1이 됩니다. 선택한 비트 폭은 반전된 위치의 수를 제어합니다. 예를 들어 8비트 ~00001100 = 11110011.

비트 왼쪽 시프트(<<)

왼쪽 비트 시프트는 시프트 카운트만큼 왼쪽으로 모든 비트를 이동하고 새로운 오른쪽 위치를 0으로 채웁니다. 왼쪽으로 이동된 부호 없는 값 n 위치에 곱하기 2^n 중요한 비트가 오버플로되지 않을 때.

비트 오른쪽 시프트(>>)

비트 오른쪽 시프트는 모든 비트를 오른쪽으로 이동하고 오른쪽 가장자리를 통과하는 낮은 비트를 삭제합니다. 논리적 오른쪽 시프트는 새로운 왼쪽 위치를 0으로 채우고 부호 없는 정수를 다음으로 나눕니다. 2^n, 반올림되었습니다.

비트란 무엇입니까? 2진수, 10진수, 16진수 이해

비트는 디지털 정보의 가장 작은 단위이며 0 또는 1의 두 가지 값 중 하나를 저장합니다. 8비트 그룹은 256개의 가능한 패턴으로 바이트를 형성합니다. 숫자 체계는 서로 다른 진수로 동일한 정수를 작성하는 반면 기본 비트 패턴은 변경되지 않습니다.

숫자 체계 변환기

바이너리0010 1110
소수46
16진수0x2E

이진수

이진법은 0과 1을 사용하는 2진수 체계입니다. 각 위치는 2의 거듭제곱을 나타냅니다. 이진 값 1010 같음 1x2^3 + 0x2^2 + 1x2^1 + 0x2^0또는 10진수 10. 이진 입력은 각 작업에 사용되는 정확한 비트를 노출합니다.

소수

10진수는 일상적인 정수 값에 사용되는 10진수 체계입니다. 각 위치는 10의 거듭제곱을 나타냅니다. 계산기는 비트 논리를 적용하기 전에 10진수 입력을 2진수로 변환하므로 10진수 10과 2진수 1010 동일한 비트 결과를 생성합니다.

16진수

16진수는 0-9와 A-F를 사용하는 16진수 체계입니다. 16진수 한 자리는 니블(nibble)이라고 하는 4비트를 나타냅니다. 마녀 0x0A, 10진수 10, 2진수 1010 같은 값을 나타냅니다. 8진법은 8진수를 사용하지만 이 도구는 2진수, 10진수 및 16진수 입력을 허용합니다.

소수바이너리(8비트)16진수비트 패턴 사용
0000000000x00모든 플래그가 지워졌습니다.
1000000010x01최하위 비트 세트
15000011110x0F하부 니블 마스크
255111111110xFF1바이트 세트의 모든 비트

비트 연산 계산 단계

비트 연산을 계산하려면 값을 이진수로 변환하고, 등위 값을 정렬하고, 각 열에 연산자를 적용하고, 결과를 필요한 숫자 체계로 변환합니다.

작업 단계 시각화 장치

에이0000 1100 0001 1001 규칙두 비트가 모두 1인 경우에만 1을 유지합니다. 결과0000 1000

12 & 25 = 8

비트 계산 방법 AND

비트 단위로 계산하려면 AND, 두 이진 값을 모두 정렬하고 두 비트가 모두 1인 곳에만 1을 씁니다.

  • 10진수 또는 16진수 입력을 2진수로 변환합니다.
  • 더 짧은 값을 앞에 0으로 채웁니다.
  • 정렬된 각 비트 쌍을 다음과 비교합니다. AND 규칙.
  • 예: 00001100 & 00011001 = 00001000, 이는 십진수 8과 같습니다.

비트 계산 방법 OR

비트 단위로 계산하려면 OR, 두 이진 값을 모두 정렬하고 두 비트 중 하나가 1인 곳에 1을 씁니다.

  • 두 입력을 모두 이진수로 변환합니다.
  • 오른쪽에서 왼쪽으로 위치를 일치시킵니다.
  • 적용 OR 모든 비트 쌍에 규칙을 적용합니다.
  • 예: 00001100 | 00011001 = 00011101, 이는 십진수 29와 같습니다.

비트 계산 방법 XOR

비트 단위로 계산하려면 XOR, 두 비트가 다른 곳에 1을 쓰고 비트가 일치하는 곳에 0을 씁니다.

  • 두 이진 값을 모두 정렬합니다.
  • 같지 않은 각 비트 쌍을 1로 표시합니다.
  • 각 동일한 비트 쌍을 0으로 표시합니다.
  • 예: 00001100 ^ 00011001 = 00010101, 이는 십진수 21과 같습니다.

비트 계산 방법 NOT

비트 단위로 계산하려면 NOT, 너비를 선택하고 하나의 입력 값의 모든 비트를 반전시킵니다.

  • 선택한 너비에 숫자 A를 씁니다.
  • 모든 1을 0으로 바꾸고 모든 0을 1로 바꿉니다.
  • 출력을 부호 없는 또는 부호 있는 2의 보수로 해석합니다.
  • 예: 8비트 ~00001100 = 11110011, 이는 부호 없는 10진수 243과 같습니다.

비트 왼쪽 시프트를 계산하는 방법

왼쪽 시프트를 계산하려면 선택한 개수만큼 각 비트를 왼쪽으로 이동하고 오른쪽을 0으로 채웁니다.

  • 교대 횟수를 선택하세요 n.
  • 남은 모든 비트를 이동 n 위치.
  • 고정된 너비를 오버플로하는 상위 비트를 삭제합니다.
  • 예: 00001100 << 2 = 00110000, 이는 십진수 48과 같습니다.

비트 오른쪽 시프트를 계산하는 방법

논리적 오른쪽 시프트를 계산하려면 각 비트를 오른쪽으로 이동하고 왼쪽을 0으로 채웁니다.

  • 교대 횟수를 선택하세요 n.
  • 모든 비트를 오른쪽으로 이동 n 위치.
  • 오른쪽 가장자리를 통과하는 낮은 비트를 폐기합니다.
  • 예: 00001100 >> 2 = 00000011, 이는 십진수 3과 같습니다.

이 비트 계산기를 사용하는 이유는 무엇입니까?

이 비트 계산기는 이진 산술을 표시하고 확인 가능하게 만듭니다. 이 도구는 입력 변환, 연산자 규칙, 고정 너비 동작, 결과 형식 및 시각적 비트 다이어그램을 한 페이지에 결합합니다.

비트 폭 미리보기

10 1110
자동: 활성 비트 6개앞에 0이 0개

단계가 포함된 비트 연산자 계산기

단계가 포함된 비트 계산기는 숫자 A, 숫자 B 및 결과를 위치별로 정렬합니다. 각 열에는 선택한 연산자가 0 또는 1을 반환하는 이유가 표시됩니다.

2진수, 10진수, 16진수 지원

값을 2진수, 10진수 또는 16진수로 입력하세요. 내장된 숫자 체계 변환 기능은 별도의 숫자 체계 변환기를 열지 않고도 동일한 출력을 표시합니다.

시각적 비트 다이어그램

시각적 비트 다이어그램은 활성 비트, 변경된 비트, 포함된 0, 선행 0 및 시프트 이동을 보여줍니다. 다이어그램은 각 결과 비트를 입력 규칙에 연결합니다.

구성 가능한 비트 폭

자동, 8비트, 16비트, 32비트 또는 64비트를 선택합니다. 고정 너비는 선행 0을 유지하고 오버플로, 마스킹, 부호 비트 및 비트 단위를 만듭니다. NOT 결과를 더 쉽게 검사할 수 있습니다.

빠르고 정확한 온라인 계산

계산은 브라우저에서 로컬로 실행되며 입력, 연산자, 형식 또는 너비가 변경되면 업데이트됩니다. 계정, 업로드 또는 서버 요청이 필요하지 않습니다.

비트 연산의 실제 적용

비트 연산은 하나의 정수 내에 여러 이진 상태를 저장하고 처리합니다. 6가지 일반적인 애플리케이션은 권한, 기능 플래그, 마스크, 내장 레지스터, 네트워크 필드 및 그래픽 채널입니다.

권한 마스크 빌더

아르 자형--
바이너리 마스크100
소수4
8진수4
와 결합0 | 4 = 4

권한 및 액세스 제어

운영 체제는 읽기, 쓰기 및 실행 권한을 플래그로 인코딩합니다. 비트별 OR 권한을 비트 단위로 결합합니다. AND 액세스를 확인하고 비트 단위로 NOT 선택한 권한 비트를 지우는 데 도움이 됩니다.

기능 플래그

애플리케이션은 활성화되거나 비활성화된 각 기능에 1비트를 할당합니다. OR 깃발을 세우다, AND 플래그를 테스트하고, XOR 플래그를 토글하고 반전 마스크는 다른 플래그를 변경하지 않고 플래그를 지웁니다.

비트 마스킹

마스킹은 더 큰 정수 내부의 필드를 격리합니다. 마스크는 16진수 니블을 추출하고, 0 플래그를 감지하고, 분기 없이 비트를 지우거나, 사용되지 않은 상위 ​​비트를 제거할 수 있습니다.

임베디드 시스템

펌웨어는 마스크와 시프트를 사용하여 장치 레지스터를 읽고 씁니다. 하나의 레지스터는 별도의 비트 위치에 센서 상태, 제어 플래그, 오류 코드 및 핀 설정을 저장할 수 있습니다.

네트워킹 및 프로토콜

네트워크 소프트웨어는 시프트와 마스크를 사용하여 압축된 헤더를 디코딩합니다. 서브넷 계산, 암호화 루틴, 체크섬, 패킷 플래그, 포트 필드 및 프로토콜 값은 모두 정확한 비트 위치에 따라 달라집니다.

그래픽 및 이미지 처리

그래픽 코드는 빨간색, 녹색, 파란색 및 알파 채널을 정수 값으로 압축합니다. 각 채널의 위치를 ​​이동하고, 채널을 마스크로 추출하고, OR 채널을 하나의 픽셀 값으로 결합합니다.

자주 묻는 질문

비트 연산과 이 온라인 도구에 대한 일반적인 질문에 대한 답변을 찾아보세요.

비트별 계산기를 사용하는 방법

비트 계산기를 사용하려면 입력 형식을 선택하고 숫자 A와 숫자 B를 입력한 후 비트 너비를 선택하고 AND, OR, XOR, 또는 NOT. 결과, 비트별 다이어그램 및 숫자 형식 변환이 자동으로 업데이트됩니다.

논리 연산자와 비트 연산자의 차이점은 무엇입니까?

논리 연산자는 전체 조건을 참 또는 거짓으로 평가합니다. 비트 연산자는 정수 값의 개별 비트를 비교하거나 변경합니다. 예를 들어, 논리적 AND 두 조건이 참인지 확인하는 반면, 비트별 AND 정렬된 각 이진수 쌍을 비교합니다.

비트 연산자는 언제 사용해야 합니까?

코드에서 개별 비트를 검사, 설정, 지우기, 전환, 결합 또는 이동해야 하는 경우 비트 연산자를 사용하세요. 일반적인 용도로는 권한 마스크, 기능 플래그, 압축 데이터, 장치 레지스터, 네트워크 헤더, 색상 채널, 체크섬 및 암호화 루틴이 있습니다.

이진수에 대해 비트 연산을 수행할 수 있나요?

예. 이진수를 선택하고 0과 1만 포함된 값을 입력합니다. 계산기는 두 비트 문자열을 정렬하고 이진수, 십진수 및 16진수 결과를 반환합니다.

16진수에 대해 비트 연산을 수행할 수 있나요?

예. 16진수를 선택하고 0x 접두사가 있거나 없는 16진수 값을 입력합니다. 계산기는 선택한 연산을 적용하기 전에 각 16진수를 4비트로 변환합니다.

이 계산기는 어떤 숫자 체계를 지원합니까?

계산기는 2진수, 10진수, 16진수 입력을 허용합니다. 이 세 가지 숫자 체계에서 동일한 결과 값을 표시합니다. 8진수 입력은 현재 지원되지 않습니다.

이 계산기에는 단계별 계산이 표시됩니까?

예. 시각적 비트 다이어그램은 입력 비트를 정렬하고 각 위치의 결과를 표시합니다. 또한 이 페이지에서는 계산 규칙을 ​​설명하고 지원되는 모든 연산자에 대한 실제 예제를 제공합니다.

어떤 비트 너비가 지원됩니까?

이 계산기는 자동, 8비트, 16비트, 32비트 및 64비트 너비를 지원합니다. 활성 값을 자동으로 맞추고 너비를 고정하면 선행 0과 컨트롤이 유지됩니다. NOT 오버플로 동작.

C와 같은 프로그래밍 언어에 이 계산기를 사용할 수 있나요? C++, Java, 그리고 Python?

예. 기음, C++, Java, 그리고 Python 같은 코어를 사용하다 AND, OR, XOR, NOT, 왼쪽 시프트 및 오른쪽 시프트 규칙. 고정 너비, 부호 있는 숫자, 오버플로 및 오른쪽 시프트 동작은 언어 및 데이터 유형에 따라 다를 수 있으므로 계산기 너비를 코드에 사용되는 유형에 일치시키십시오.

비트 단위는 왜 NOT 연산자가 음수를 반환합니까?

비트별 NOT 결과가 부호 있는 2의 보수 정수로 해석되면 음수를 반환할 수 있습니다. 해당 표현에서 가장 높은 비트는 부호 비트이고 ~x는 -x - 1과 같습니다. 동일한 비트 패턴은 부호 없는 것으로 해석될 때 음수가 아닌 값을 갖습니다.

비트 연산의 실제 적용은 무엇입니까?

실제 애플리케이션에는 권한, 기능 플래그, 비트 마스크, 내장형 시스템 레지스터, 네트워킹 프로토콜, 그래픽, 암호화, 체크섬, 오류 감지, 데이터 압축 및 압축 파일 형식이 포함됩니다.

비트 연산이 산술 연산보다 빠르나요?

항상 그런 것은 아닙니다. 최신 프로세서는 비슷한 속도로 많은 비트 및 산술 명령어를 실행하며 컴파일러는 두 가지를 모두 최적화합니다. 비트 연산은 작업 자체가 비트, 마스크, 플래그 또는 2의 거듭제곱에 대해 작동할 때 가장 유용합니다.

이 비트 계산기는 무료로 사용할 수 있나요?

예. 이 Bitwise 계산기는 무료로 사용할 수 있고 계정이 필요하지 않으며 브라우저에서 로컬로 계산을 수행합니다.