가이드

비트 계산기 사용법: 정수와 이진수 결과 확인하기

두 정수와 지원되는 비트 연산을 입력하면 계산된 정수와 이진수 표시를 함께 확인할 수 있습니다. 시프트에서는 두 번째 값이 0 이상인 이동 칸 수여야 합니다.

도구 비트 연산 계산기

비트 값의 변화를 살펴보는 도구

비트 계산기는 정수의 각 비트를 기준으로 논리 연산을 적용하고, 계산된 값을 정수와 이진수로 살펴보는 도구입니다. 두 숫자의 공통 비트를 확인할 때는 AND를 사용할 수 있습니다. 하나라도 1인 비트를 남기려면 OR를 선택할 수 있습니다. 서로 다른 비트만 비교하려면 XOR가 알맞습니다. 비트 반전을 살펴볼 때는 NOT을 이용합니다. NAND와 NOR도 선택할 수 있어 논리 조합을 비교하는 데 활용할 수 있습니다. 왼쪽 시프트와 오른쪽 시프트는 비트를 지정한 칸만큼 이동하는 연산입니다.

이 도구는 정수 계산 결과만 보여주는 데 그치지 않고, 입력과 결과를 이진수 형태로 함께 확인하게 해 줍니다. 따라서 십진수 값이 어떤 비트 조합으로 표현되는지 살펴볼 수 있습니다. 연산 전의 입력과 연산 뒤의 결과를 나란히 보면 비트가 유지되었는지, 추가되었는지, 반전되었는지, 이동했는지 구분하기 쉽습니다. 비트 연산을 처음 접하는 경우에는 작은 정수를 넣어 각 자리의 변화를 관찰하는 방식이 이해에 도움이 됩니다.

두 숫자를 사용하는 연산에서는 첫 번째 값과 두 번째 값이 함께 계산에 들어갑니다. NOT에서는 첫 번째 값만 연산에 사용됩니다. 이 차이를 알고 시작하면 두 번째 입력을 어떻게 준비할지 혼동을 줄일 수 있습니다. 시프트를 선택할 때 두 번째 값은 비교할 숫자가 아니라 이동 칸 수라는 점도 구별해야 합니다. 도구의 결과는 선택한 연산과 입력값에 따라 달라지므로, 같은 숫자라도 연산을 바꾸면 다른 비트 패턴이 나타날 수 있습니다.

입력부터 계산 결과까지 진행하기

  1. 첫 번째 숫자 입력에 연산의 기준이 될 값을 넣습니다. 두 번째 숫자 입력에는 함께 비교할 값이나 이동할 칸 수를 입력합니다. 두 입력을 모두 비워 두면 각각 0으로 처리됩니다. 입력란의 값이 비어 있는 경우에도 해당 피연산자는 0으로 취급됩니다. 값이 들어 있는 피연산자는 계산 전에 정수로 변환됩니다. 그러므로 계산하려는 값이 정수로 바뀔 수 있는지 먼저 확인하는 편이 좋습니다.

  2. 사용할 연산을 목록에서 고릅니다. 선택 가능한 항목은 AND, OR, XOR, NOT, NAND, NOR, 왼쪽 시프트, 오른쪽 시프트입니다. AND는 두 값에서 모두 1인 비트를 남기는 방식으로 이해할 수 있습니다. OR는 두 값 중 하나라도 1인 비트를 남기는 연산입니다. XOR는 두 비트가 서로 다를 때 해당 자리를 구분하는 데 쓰입니다. NOT은 첫 번째 값의 비트를 반전하는 연산입니다. NAND는 AND의 결과를 반전하는 논리 연산입니다. NOR는 OR의 결과를 반전하는 논리 연산입니다.

  3. 시프트를 고른 경우에는 두 번째 입력을 이동 칸 수로 해석합니다. 왼쪽 시프트는 비트를 왼쪽으로 옮기고, 오른쪽 시프트는 비트를 오른쪽으로 옮깁니다. 이때 두 번째 값은 0 이상이어야 합니다. 음수 이동 칸 수는 시프트 계산에 사용할 수 없습니다. 0을 입력하면 이동하지 않는 조건을 확인할 수 있습니다. 시프트에서 두 번째 값은 일반적인 비교용 피연산자와 역할이 다르므로 입력 전에 목적을 확인합니다.

  4. NOT을 선택했다면 첫 번째 숫자만 계산에 참여합니다. 두 번째 숫자는 NOT의 계산값을 만드는 데 사용되지 않습니다. 두 숫자를 함께 쓰는 연산에서는 두 입력을 모두 확인한 뒤 계산을 실행합니다. 연산 이름을 직접 입력할 수 있는 상황에서는 입력이 소문자 변환을 지원할 때 대소문자를 구분하지 않는 방식으로 이름이 맞춰질 수 있습니다. 다만 지원 목록에 없는 이름까지 임의로 사용할 수 있는 것은 아닙니다.

  5. 계산을 실행한 뒤 먼저 성공 여부를 확인합니다. 성공한 계산에서는 선택한 연산을 두 정수에 적용한 계산값을 볼 수 있습니다. NOT을 제외한 연산은 두 입력을 사용하므로 첫 번째 값과 두 번째 값의 표시를 함께 살핍니다. 입력을 생략한 경우에는 두 값이 0으로 처리되었는지도 염두에 둡니다. 결과를 확인할 때는 입력한 숫자, 선택한 연산, 시프트 칸 수가 서로 맞는지 차례로 대조합니다.

  6. 결과 영역에서 정수 표현과 이진수 표현을 비교합니다. 성공한 계산에는 첫 번째 입력과 계산 결과의 이진수 표시가 포함됩니다. NOT이 아닌 연산에서는 두 번째 입력의 이진수 표시도 확인할 수 있습니다. NOT에서는 두 번째 입력을 사용하지 않으므로 그 항목이 N/A로 보고됩니다. 이진수 표시는 최소 8비트 폭으로 표시됩니다. 짧은 값처럼 보이더라도 표시 폭을 기준으로 각 비트 위치를 비교하면 연산 전후의 차이를 더 체계적으로 볼 수 있습니다.

표시된 값과 계산 가능 범위 이해하기

결과의 정수 부분은 선택한 비트 연산을 입력 정수에 적용한 값입니다. 이 값만 보면 계산 결과의 크기는 알 수 있지만, 어떤 비트가 영향을 받았는지는 바로 드러나지 않을 수 있습니다. 이진수 부분은 그 변화를 자리별로 비교하는 데 사용합니다. 첫 번째 입력의 이진수와 결과의 이진수를 대조하면 기준 값에서 어떤 자리가 달라졌는지 확인할 수 있습니다. 두 입력을 사용하는 연산에서는 두 번째 입력도 결과와 함께 비교해야 합니다.

표시 폭이 최소 8비트라는 점은 결과를 읽을 때 참고할 기준입니다. 앞쪽에 0이 붙어 보이더라도 값이 달라졌다는 뜻은 아닙니다. 표시된 자리 수 안에서 1과 0의 위치를 비교하면 AND, OR, XOR 같은 연산의 차이를 관찰할 수 있습니다. NAND와 NOR는 각각 대응하는 논리 결과가 반전된 형태로 나타나는지 살펴볼 수 있습니다. 시프트에서는 1이 어느 방향으로 옮겨졌는지, 비어 있는 자리가 어떻게 보이는지 결과 표시를 기준으로 확인합니다.

NOT의 결과를 읽을 때는 두 번째 이진수 항목을 계산 자료로 사용하지 않습니다. 해당 연산은 첫 번째 피연산자만 사용하며, 두 번째 값의 이진수 표시는 N/A로 보고됩니다. 반대로 AND, OR, XOR, NAND, NOR, 왼쪽 시프트, 오른쪽 시프트처럼 두 입력을 사용하는 연산은 두 번째 입력의 표시도 결과 해석에 포함합니다. 같은 입력으로 NOT과 다른 연산을 각각 선택하면 사용되는 입력의 수가 다르다는 점을 비교할 수 있습니다.

입력 변환 단계에서 피연산자를 정수로 바꾸지 못하면 계산된 값을 대신 실패한 계산으로 처리할 수 있습니다. 숫자로 해석할 수 없는 값은 이런 상황을 일으킬 수 있으므로, 입력한 표현이 정수 변환에 적합한지 확인해야 합니다. 변환 과정에서 발생하는 오류가 모두 같은 방식으로 처리되는 것은 아닙니다. 예를 들어 무한한 부동소수점 값에서 발생할 수 있는 OverflowError 같은 변환 오류는 실패한 계산으로 정리되지 않고 밖으로 전달될 수 있습니다.

지원 목록 밖의 문자열을 연산 이름으로 사용하면, 그 이름을 소문자로 맞춘 뒤에도 지원 집합에 없을 때 계산은 성공하지 않습니다. 이름의 대소문자만 바꾸는 것은 지원되는 이름을 입력하는 경우에 한해 의미가 있을 수 있습니다. 새로운 연산 이름을 만들어 입력하는 방식은 지원 범위를 넓히지 않습니다. 시프트의 두 번째 값이 음수인 경우에도 계산 조건을 충족하지 못합니다. 결과가 나오지 않으면 연산 종류, 두 숫자의 정수 변환 가능성, 시프트 값의 부호를 이 순서로 점검해 보세요.

사용 예시

두 정수 5와 3에서 공통으로 켜진 비트를 살펴보려는 상황에서 AND를 선택합니다.

첫 번째 숫자에 5를 넣고 두 번째 숫자에 3을 입력한 다음 AND를 선택하여 계산을 실행합니다.

계산이 성공하면 계산된 정수와 첫 번째 입력 및 결과의 이진수 표시가 나타나며, NOT이 아닌 AND에서는 두 번째 입력의 이진수 표시도 함께 확인할 수 있습니다.

제한 사항

  • 정수로 변환되지 않는 피연산자, 지원 범위 밖의 연산 이름, 음수인 시프트 칸 수는 계산된 값을 만들지 못할 수 있습니다.

자주 발생하는 오류

  • 시프트에서 두 번째 입력을 비교 숫자로 생각해 음수를 넣으면 계산 조건을 충족하지 못할 수 있습니다. 해당 칸을 0 이상인 정수 이동 칸 수로 바꾼 뒤 다시 계산하세요.

자주 묻는 질문

숫자 입력을 비워 두면 어떤 값으로 계산되나요?

두 숫자 입력이 모두 비어 있으면 각 값은 0으로 처리됩니다. 한쪽만 비어 있어도 비어 있는 피연산자만 0으로 간주되며, 입력된 값은 정수로 변환된 뒤 계산에 사용됩니다.

NOT을 선택하면 두 번째 숫자도 계산되나요?

NOT에서는 두 번째 숫자가 계산에 참여하지 않습니다. 결과에는 두 번째 입력의 이진수 표시 대신 N/A가 보고되므로 첫 번째 숫자와 결과를 중심으로 확인하세요.

시프트에서 음수 이동 칸 수를 입력해도 되나요?

시프트의 두 번째 입력에는 음수를 사용할 수 없습니다. 왼쪽 시프트나 오른쪽 시프트를 계산하려면 그 값을 0 이상인 이동 칸 수로 입력해야 합니다.

도구

비트 연산 계산기