일의 보수 계산기
이진수의 모든 비트를 반전하거나 십진 정수에서 고정 비트 폭의 일의 보수를 계산하세요.
일의 보수 계산
이진 또는 십진 입력을 선택하고 각 비트를 영에서 일로, 일에서 영으로 반전하세요.
일의 보수 알아보기
이진수의 일의 보수는 모든 비트를 반전하여 구합니다. 각 영은 일이 되고 각 일은 영이 됩니다. 이 연산은 비트 반전 또는 논리 NOT이라고도 합니다. 손으로도 간단히 수행할 수 있지만 컴퓨터 구조, 디지털 전자공학, 네트워크 프로토콜, 부호 있는 이진 산술 학습 전반에 사용됩니다. 이 계산기는 이진 입력의 길이를 유지하여 선행 영과 의도한 레지스터 폭이 결과에 그대로 드러나게 합니다.
십진 정수를 변환한 뒤 반전할 때는 비트 폭이 중요합니다. 십진 값 42의 가장 짧은 이진 표현은 101010이지만 팔 비트 레지스터에는 00101010으로 저장됩니다. 여덟 자리를 모두 반전하면 11010101이며 부호 없는 값으로 해석하면 213입니다. 폭이 달라지면 추가된 선행 영이 선행 일로 바뀌므로 비트 패턴도 달라집니다. 따라서 십진 모드에서는 1부터 32까지의 비트 폭을 지정하며, 해당 수의 부호 없는 비트에 들어가지 않는 값은 거부합니다.
과거에는 일의 보수가 부호 있는 수의 표현 방식으로도 사용되었습니다. 양수는 일반 이진 표현을 쓰고 음수는 해당 양수의 비트를 반전하여 표현했습니다. 이 체계에는 두 가지 영이 있습니다. 모든 비트가 영이면 양의 영, 모두 일이면 음의 영입니다. 현대 프로세서는 영이 하나뿐이고 산술 회로를 단순하게 만들 수 있는 이의 보수를 대부분 사용합니다. 그래도 일의 보수 산술은 인터넷 체크섬에서 중요합니다. 워드들을 순환 캐리 방식으로 더하고 최종 합을 반전합니다.
일의 보수와 이의 보수를 혼동하지 마세요. 이의 보수는 고정 폭 안에서 일의 보수에 일을 더한 값입니다. 이 차이는 표현되는 음수 값을 바꾸므로 저수준 소프트웨어 디버깅에서 특히 중요합니다. 이 계산기는 직접적인 비트 반전만 수행하며 결과 비트열과 이를 부호 없는 값으로 해석한 십진수를 표시합니다. 숙제 확인, 비트 마스크 설계, 논리 게이트 학습, 고정 폭 변환 검토에 유용하며 모든 자리를 직접 살펴볼 필요가 없습니다.
이진 입력에서는 반전할 정확한 비트열을 입력하세요. 십진 입력에서는 원래 수를 담을 수 있는 충분한 비트 수를 선택하세요. 결과 패널에 영으로 채운 원본 비트, 반전된 비트열, 부호 없는 십진 값이 표시되어 각 단계를 바로 확인할 수 있습니다.
일의 보수 예제
| 입력 | 출력 | 설명 |
|---|---|---|
| 이진수 1010 | 0101 | 네 자리의 비트가 모두 반전됩니다. |
| 이진수 00001111 | 11110000 | 선행 영의 자리가 유지되며 일로 바뀝니다. |
| 십진수 42, 8 비트 | 11010101 (213) | 42를 00101010으로 채운 뒤 반전합니다. |
일의 보수 계산 방법
- 비트열이 있으면 이진 입력을, 변환이 필요하면 십진 입력을 선택하세요.
- 이진 비트열 또는 음이 아닌 십진 정수를 입력하세요.
- 십진 입력에서는 수를 담기에 충분한 비트 폭을 선택하세요.
- 일의 보수 계산을 클릭하여 채워진 입력, 반전 비트, 십진 결과를 확인하세요.
일의 보수 자주 묻는 질문
이진수의 일의 보수는 어떻게 구하나요?
모든 영을 일로, 모든 일을 영으로 바꾸세요. 원래 폭을 보존하도록 비트 수는 유지하세요.
비트 폭이 십진 모드의 결과를 바꾸는 이유는 무엇인가요?
선행 영은 고정 폭 이진 표현의 일부이며 반전하면 일이 됩니다. 따라서 같은 십진 값도 팔 비트 반전과 십육 비트 반전의 결과가 다릅니다.
일의 보수와 이의 보수는 같은가요?
아니요. 이의 보수는 선택한 폭 안에서 일의 보수 패턴에 일을 더하고, 일의 보수는 비트만 반전합니다.
일의 보수 산술에서 음의 영은 무엇인가요?
과거의 부호 있는 일의 보수 체계에서는 모든 비트가 일인 패턴이 음의 영을 나타냅니다. 모두 영이면 양의 영이며, 이는 대부분의 컴퓨터가 이의 보수를 사용하는 이유 중 하나입니다.
일의 보수 산술은 지금도 어디에 사용되나요?
IPv4, TCP, UDP 같은 프로토콜의 체크섬에 사용됩니다. 고정 폭 워드들을 순환 캐리 방식으로 더한 다음 최종 합을 반전합니다.