2진수
컴퓨터는 비트 형태로 데이터를 나타낸다는 것을 기억하시나요? 비트란 이진법의 최소단위로, 숫자 0,1로 신호를 나타내는 최소의 단위를 비트라 합니다. 비트를 가지고 수학적 연산을 하기 위해, 컴퓨터는 0과 1만을 사용하는 2진수라는 수 체계를 사용합니다.
수체계
우리가 사용하는 수 체계는 10진수입니다. 10진수는 0부터 9까지 10개의 숫자를 이용하여 값을 표현할 수 있습니다. 10진수에서 각 자리는 10의 거듭제곱을 나타냅니다.
<그림 1>의 가장 오른쪽 수는 1의 자릿수입니다. 오른쪽에서 두 번째 수는 10의 자릿수입니다. 오른쪽에서 세 번째 수는 100의 자릿수입니다. 숫자의 값을 계산하려면 각 자리의 수와 자릿수를 곱한 다음, 전부 더하면 됩니다.
컴퓨터는 전기적 신호 켜짐(1)과 꺼짐(0)을 이용하여 작동하기 때문에 2진수를 사용합니다. 2진수는 0부터 1까지 2개의 숫자를 이용하여 값을 표현할 수 있습니다.
<그림 2>의 가장 오른쪽 자리의 수는 아직 1의 자릿수입니다(20 ). 그 옆의 자리의 수는 2의 자릿수입니다(21 ). 그 다음 자리의 수는 4의 자릿수(22 )인 방식으로 계속 나아갑니다. 2진수의 값을 계산하려면, 각 자리의 수와(0또는 1) 각 자릿수를 곱하여 전부 더하면 됩니다. 그러므로 110은 (1×4)+(1×2)+(0×1)=4+2+0=6입니다.
2진수에서 숫자 세는 방법
2진수로 숫자를 세는 방법은 10진수에서 숫자를 세는 방법과 비슷하지만 0과 1 두 개의 수로만 제한된다는 차이가 있습니다. 따라서 0을 2진수로 바꾸면 여전히 0이고, 1을 2진수로 바꾸면 여전히 1입니다.
그러나 2진수에서는 10진수 2를 사용할 수 없으므로 2를 나타내기 위해서는 또 다른 비트가 필요하고, 10진수 2는 2진수 10으로 나타냅니다. 1이 2의 자릿수에 있고 0이 1의 자릿수에 있으므로, 10진수 2의 2진수 값은 2×1+1×0=2고, 10진수 3의 2진수는 11입니다.
하지만 숫자 4를 나타내기에는 또 비트가 모자랍니다. 10진수 4를 나타내기 위해 3번째 비트가 추가로 필요합니다. 10진수 4는 2진수 값으로 나타내면, 100(4×1+ 2×0+1×0)입니다.
10진수 체계에 적용하는 수학을 2진수에도 적용할 수 있습니다. 10진수에서와 마찬가지로 2진수에서도 셈, 더하기, 빼기, 곱하기, 나누기를 할 수 있고 컴퓨터는 연산과 계산을 할 때 이런 수학을 사용합니다.
출처
'CS50' 카테고리의 다른 글
[ CS50 ] 16진수 (0) | 2024.05.29 |
---|---|
[ CS50 ] ASCII코드 (0) | 2024.05.29 |
[ CS50 ] 비트와 바이트 (0) | 2024.05.28 |
[ CS50 ] 기억장치 (0) | 2024.05.27 |
[ CS50 ] 하드웨어 (0) | 2024.05.27 |