공대생의 기본 컴퓨터, 데이터, 네트워크, 010101...은 익히 한번쯤 들어보셨을 겁니다.

공대생이 아니라도 진수 변환, 진법 변환은 수의 기초 영역이기 때문에 수학의 수자만 알아도 되죠.

 

진수 변환은 우리 삶 속에 아주 가까이 자리하고 있습니다. 우리가 알 필요가 없는 부분에 존재하기도 하죠.

하지만 직장이나, 공부나, 학업 중 이를 유연하게 사용할 기회도 있습니다.

 

이번 포스팅을 통해 간단하지만 여러 공간에 사용 중인 진수 변환에 대하여 알아보겠습니다.

 


진수 변환이란?

우리의 삶은 10진법인가?


 

로마와 아라비아 숫자가 쓰인 시계

 

우리가 익히 얘기하는 '아라비아 숫자'는 10진법을 얘기합니다.

10진법은 0,1,2,3,4,5,6,7,8,9까지의 10개 숫자로 수를 표기하는 방식입니다.

아라비아 숫자는 말 그대로 Arab(중세 이슬람)에서 시작되고, 유럽으로 이어져 현대까지 정착된 수 체계입니다.

우리는 태어날 때 부터 0에서 100까지 숫자를 배우면서 당연하게 여겼던 것이, 사실 진법이라는 체계 속에서 정해진 것입니다.

 

다음으로 알고 넘어가야 할 것이 있죠. 이것도 우리가 항상 듣고 있는 단위입니다.

비트(bit)와 바이트(byte)

프로그래밍이나 전기 전자 통신 컴퓨터의 단위는 모두 비트/바이트 단위로 얘기하기 때문에, 모르면 공대생 명함을 내밀기 힘들죠.

0과 1의 디지털 월드...

비트(bit)는 우리가 영화에서, 무슨 글귀에서 보던 '디지털 세상은 0과 1이다.."라는 멘트에 그것입니다.

비트는 0과 1로만 표기하는 것입니다. 그럼 비트는 2진법겠네요? 네 맞습니다.

표기는 0과 1중에 한 자리수로만 표기하는 것이죠.

 

바이트(byte)는 비트를 8개로 표기하는 것입니다.

0과 1로 1자리수만 표기할 수 있으면 표현 가능한 수는 2개 (0,1)

0과 1로 2자리수를 표기할 수 있으면?? 4개 (00,01,10,11)

0과 1로 3자리수를 표기할 수 있으면?? 8개 (000,001,010,011,100,101,110,111)... 헥헥

고등학교 때 수학에서 나오는 제곱의 형태로 경우의 수가 가능합니다.

2의 1 제곱 2의 2 제곱, 2의 3 제곱.. (2의 1승 2승 3승으로도 불리죠)

그렇다면~~~ 바이트는 2의 8 제곱 = 256의 수(?)를 표현 가능합니다. 수 이면서 데이터이기도 하죠.

 

컴퓨터 성능을 따질 땐 Windows 10 32Bit니 64Bit 설치를 따지기도 합니다. 이때 사용하는 단위가 비트죠?

저장장치(SSD, HDD) 용량을 얘기할 땐 1TB(바이트), 500GByte 등등 바이트 단위입니다.

위에 대해선 응용 포스트를 남기겠습니다.ㅎㅎ

 

120GB 삼성 SSD

 

본론으로 돌아가서...

비트와 바이트에 대해서 알아보았으니 진수 변환은 어떻게 할까요. (먼 길 돌아왔네요)

 

10진수 412를 파헤쳐보면? 400과 10과 2의 합이죠.

2진수 101을 10진수로 변환하면? 10진법 5가 됩니다.

반대로 10진법 5를 2진법으로 바꾸려면?

5를 2로 계속 나눕니다. 나머지를 아래부터 읽으면 101(2진법)이 되죠

10진법을 원하는 2, 8, 16진법으로 바꾸는 방법은 나누기만 하면 됩니다.

 

2진법을 8진법으로 바꾸는 방법은 10진법으로 바꿔서 다시 8로 나누는 게 아니라

2진법과 8진법의 연관되는 수를 보면 됩니다.

세 개의 2진수 자리가 8진법 수와 대응이 됩니다.

 

무작위로 2진법 10011001110을 8진법으로 바꾸고 싶다면 3자리씩 나누면 됩니다.

010,011,001,110 > 2,3,1,6 > 2316 8진법으로 변환됩니다.

 

다른 진법도 이와 같이 대응하여 변환할 수 있습니다.

 

오늘은 진법에 대해 간략히 포스팅했습니다.

우리네 삶이 10진법 속에서 표현되지만, 간혹 2진법처럼 단순해졌으면 하는 생각도 듭니다.

 

약간이라도 도움이 되셨길 바라며 포스팅을 마칩니다.

+ Recent posts