2의 보수 변환기 (원하는 비트 폭, 2진수 및 16진수)
부호 있는 정수를 8, 16, 32비트(또는 원하는 다른 폭)의 2의 보수 2진수·16진수로 변환하고, 비트 패턴을 다시 부호 있는 10진수로 디코딩합니다.
00000101 0 또는 양수이므로 그대로 2진수로 쓰고 앞을 0으로 채웁니다.00000101 0 또는 양수이므로 그대로 2진수로 쓰고 앞을 0으로 채웁니다.
8비트 패턴 전체 표
2의 보수란
2의 보수는 컴퓨터가 부호 있는 정수를 저장하는 표준 방식입니다. 양수는 일반 2진수 값과 같고, 음수는 절댓값의 비트를 반전한 뒤 1을 더해 저장합니다. 덕분에 0이 하나로만 표현되며, CPU는 부호 없는 수에 쓰는 것과 동일한 회로로 부호 있는 덧셈과 뺄셈을 수행할 수 있습니다. 최상위 비트는 부호 역할을 하여 0이면 0 이상, 1이면 음수를 뜻합니다.
이 변환기 사용법
8, 16, 32비트나 다른 프리셋, 또는 직접 입력한 비트 폭을 고른 다음, 부호 있는 10진수를 입력하면 2의 보수 2진수와 16진수를 볼 수 있고, 2진수 패턴을 입력하면 부호 있는 10진수로 디코딩됩니다. 각 입력란은 나머지 값을 즉시 갱신합니다. 선택한 폭의 유효 범위(예를 들어 8비트 값은 -128에서 127 사이)를 자동으로 검사해, 범위를 벗어나면 명확한 메시지를 표시합니다. 16진수 출력은 부호 없는 비트 패턴이므로 -1은 8비트에서 0xFF, 32비트에서 0xFFFFFFFF로 나타납니다. 입력란 위의 체크박스를 켜면 2진수와 16진수를 오른쪽부터 네 자리씩 띄어 써 긴 패턴도 한눈에 읽을 수 있고, 접힌 표는 한 바이트까지의 폭에서 모든 비트 패턴을 부호 있는 값·부호 없는 값·16진수와 나란히 보여 줍니다.
자주 묻는 질문
음수의 2의 보수는 어떻게 구하나요?
절댓값의 2진수를 구한 뒤 모든 비트를 반전하고 1을 더하면 됩니다. 이 도구는 이를 대신 처리하므로, 음수 10진수를 입력하면 선택한 비트 폭에 맞는 완성된 2의 보수 2진수와 16진수를 보여줍니다.
왜 -1이 11111111 또는 0xFF로 표시되나요?
8비트에서 -1은 모두 1로 저장됩니다. 00000001을 반전하면 11111110이고 1을 더하면 11111111이기 때문입니다. 부호 없는 패턴으로는 0xFF입니다. 폭이 넓어지면 앞쪽에 1이 더 붙어 -1은 16비트에서 0xFFFF, 32비트에서 0xFFFFFFFF가 됩니다.
16진수 값을 붙여넣어 디코딩할 수 있나요?
네. 네 입력란이 모두 편집 가능하므로 16진수 패턴을 (0x 접두어 유무와 관계없이) 입력하면 2의 보수로 해석해 부호 있는 10진수·2진수·8진수로 디코딩됩니다. 8비트에서 0xFF는 -1, 0x80은 -128이 됩니다. 16진수는 폭에 맞는 자릿수까지 넣을 수 있습니다(8·16·32비트에 각각 2·4·8자리 — 4비트마다 한 자리이고, 남는 비트도 한 자리로 셉니다). 더 짧으면 부호 확장 없이 앞을 0으로 채우고, 입력란 아래에 그렇게 읽은 전체 패턴을 보여 줍니다.
흔하지 않은 비트 폭도 되고, 과정도 볼 수 있나요?
네. 다른 프리셋을 고르거나 원하는 폭을 입력하면 됩니다. 비트를 뒤집고 1을 더하는 과정을 보여 주고, 같은 비트 패턴을 부호 없는 수로 읽은 값도 함께 나옵니다.
8진수와 1의 보수도 보여 주고, 어느 폭이면 들어가는지도 알려 주나요?
네. 16진수 아래의 “8진수” 칸도 다른 칸처럼 편집할 수 있고, 같은 폭의 비트 패턴으로 읽으므로 폭을 넘는 맨 앞자리는 거부합니다. 읽기 전용 “1의 보수 2진수” 칸은 같은 수를 1의 보수로 보여 주어 2의 보수와 견줄 수 있고, 가장 작은 음수는 1의 보수로 나타낼 수 없어 그 이유를 알려 줍니다. 폭에 들어가지 않는 수는 메시지 끝에 어느 폭이면 들어가는지 알려 줍니다.
긴 비트 패턴을 띄어 쓰거나, 모든 패턴을 표로 볼 수 있나요?
네. 입력란 위의 띄어 쓰기 체크박스(기본은 꺼짐)를 켜면 계산된 2진수·16진수·1의 보수와 과정을 오른쪽부터 네 자리씩 띄어 쓰고, 지금 입력 중인 칸은 입력한 그대로 둡니다. 복사는 띄어 쓰지 않은 패턴을 가져가고, 띄어 쓴 패턴을 다시 입력해도 똑같이 읽으며, 링크 복사도 이 설정을 담습니다. 도구 아래 접힌 표는 고른 폭의 모든 패턴을 2진수·부호 있는 값·부호 없는 값·16진수로 보여 주는데, 인쇄된 표처럼 패턴 순서라 양수가 먼저, 음수가 뒤에 오고 지금 값의 줄은 강조됩니다. 표는 한 바이트 폭까지만 만들고, 더 넓은 폭에서는 표가 몇 줄이 될지 알려 줍니다.