CS50

[ CS50 ] 2진수

Sheep1sik 2024. 5. 28. 15:46
반응형

2진수

컴퓨터는 비트 형태로 데이터를 나타낸다는 것을 기억하시나요? 비트란 이진법의 최소단위로,  숫자 0,1로 신호를 나타내는 최소의 단위를 비트라 합니다. 비트를 가지고 수학적 연산을 하기 위해, 컴퓨터는 0과 1만을 사용하는 2진수라는 수 체계를 사용합니다.

 

수체계

우리가 사용하는 수 체계는 10진수입니다. 10진수는 0부터 9까지 10개의  숫자를 이용하여 값을 표현할 수 있습니다10진수에서 각 자리는 10의 거듭제곱을 나타냅니다.

<그림 1>의 가장 오른쪽 수는 1의 자릿수입니다. 오른쪽에서 두 번째 수는 10의 자릿수입니다. 오른쪽에서 세 번째 수는 100의 자릿수입니다. 숫자의 값을 계산하려면 각 자리의 수와 자릿수를 곱한 다음, 전부 더하면 됩니다.

 

그림 1

컴퓨터는 전기적 신호 켜짐(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진수에서 숫자 세는 방법

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진수에서도 셈, 더하기, 빼기, 곱하기, 나누기를 할 수 있고 컴퓨터는 연산과 계산을 할 때 이런 수학을 사용합니다.

그림 3


출처

https://www.youtube.com/@cs50

https://www.edwith.org/cs50

반응형