십진수를 이진수로 바꾸려면 로 나누고, 각 단계의 나머지를 기록한 뒤, 그 나머지를 아래에서 위로 읽으면 됩니다. 음이 아닌 정수에 대해서는 이것이 표준적인 손계산 방법이며, 이진수는 의 거듭제곱 대신 의 거듭제곱을 사용하기 때문에 이 방법이 성립합니다.
십진수 이진수 변환기를 찾았다면, 핵심 아이디어는 바로 이것입니다. 이진수의 각 자릿수는 특정한 의 거듭제곱이 포함되는지를 나타냅니다. 은 포함됨, 은 포함되지 않음을 뜻합니다.
예를 들어, 이진수 는 다음을 의미합니다.
이는 다음과 같습니다.
즉, 십진수를 이진수로 변환하는 것은 결국 어떤 수를 의 거듭제곱의 합으로 다시 쓰는 과정입니다.
십진수에서 이진수로 변환이 되는 이유
십진수에서 각 자리는 , , , 처럼 커집니다. 이진수에서 각 자리는 다음과 같습니다.
이진수는 숫자가 두 개뿐이므로 각 자리에는 또는 만 올 수 있습니다. 은 그 의 거듭제곱이 포함된다는 뜻입니다. 은 포함되지 않는다는 뜻입니다.
이것이 바로 이진수가 디지털 시스템에 자연스럽게 맞는 이유이기도 합니다. 각 위치가 두 가지 상태만 가지기 때문입니다.
를 십진수에서 이진수로 변환하는 방법
음이 아닌 정수에 대해서는 로 반복해서 나누는 표준 방법을 사용합니다.
부터 시작해 봅시다.
이제 나머지를 아래에서 위로 읽습니다.
따라서
자리값으로 확인할 수도 있습니다.
빠르게 확인하는 방법은 이 표시된 의 거듭제곱을 나열하는 것입니다. , , , 이고, 이들의 합은 이므로 변환이 맞습니다.
나머지를 거꾸로 읽는 이유
각 나눗셈 단계는 다음 최하위 비트, 즉 가장 오른쪽 이진 자릿수를 줍니다. 그래서 첫 번째 나머지는 맨 앞이 아니라 맨 뒤에 와야 합니다.
를 의 거듭제곱으로 만들어도 같은 답을 볼 수 있습니다. 들어갈 수 있는 가장 큰 의 거듭제곱은 이고, 그러면 이 남습니다. 다음으로 이 들어가고 가 남습니다. 그다음 가 들어가고 이 남습니다. 마지막으로 이 들어갑니다.
그러면
따라서 , , , 의 자릿수는 이고, 나머지는 입니다. 그래서 다시 가 됩니다.
자주 하는 실수
나머지를 위에서 아래로 읽기
반복 나눗셈에서는 나머지를 아래에서 위로 읽어야 합니다. 위에서 아래로 읽으면 잘못된 이진수가 나옵니다.
정수용 방법을 소수에 적용하기
위의 로 나누는 방법은 음이 아닌 정수용입니다. 원래 십진수에 소수 부분이 있다면, 그 소수 부분에는 별도의 변환 과정이 필요합니다.
십진 소수가 항상 이진수에서 끝난다고 생각하기
그렇지 않습니다. 예를 들어, 어떤 유한한 십진 소수는 이진수로 쓰면 순환 전개가 됩니다. 그래서 입력값이 정수가 아니면 십진수 이진수 변환기에 반올림된 결과가 표시될 수 있습니다.
십진수에서 이진수로의 변환을 사용하는 경우
이 변환은 컴퓨팅, 디지털 전자, 저장 용량, 비트 기반 논리에서 자주 등장합니다. 실제로 손으로 변환할 일이 없더라도, 각 자릿수가 무엇을 뜻하는지 알면 이진수 값이 훨씬 덜 낯설게 느껴집니다.
또한 각 비트가 켜짐/꺼짐 선택을 나타내는 마스크, 플래그, 저수준 예제를 읽을 때도 유용합니다.
빠른 연습
같은 로 나누는 과정을 사용해 을 이진수로 바꿔 보세요. 그런 다음 그것을 의 거듭제곱으로 전개해 답을 확인해 보세요. 한 단계 더 나아가고 싶다면, 이 정수 사례를 십진 소수와 비교해 보면서 왜 소수 부분에는 추가 주의가 필요한지도 살펴보세요.