디지털논리회로

디지털논리회로 (2) - 수의 체계

j43j43j43 2024. 6. 20. 12:17

1. 기수란 무엇인가?

기수가 무엇인지 알기 위해서는 먼저 기수법에 대해 알아야한다.

 

기수법은 수를 시각적으로 나타내는 방법으로, 기수법을 통해서 나타나는 각각의 숫자는 다른 수들과

구별되는 표기 방식을 가진다. 

 

단항 기수법: 가장 단순하고 원시적인 기수법으로 1에 대한 표기만 가지고 모든 수를 표현한다.

명수법: 특정 수들에 대한 의미를 기호로 표현한다.

위치값 기수법: 숫자의 위치와 계수를 이용하여 수를 표현한다.

 

~ 고대부터 기수법은 문명의 발달에 따라 다양한 형태로 발전하였고,

각 문명의 기수법체계는 그 사회의 문화와 사상을 반영한다. ~

 

학자들에 따르면 일렬로 나열된 단위 기호가 4개를 넘으면 쉽게 숫자를 인식하지 못하기 때문에 

단항 기수법에서 한 줄에 존재하는 단위 기호는 최대 4개인 것이 일반적이라고 한다.

 

 

 

 

 

 

 

 

 

 

 

명수법을 이용해서 숫자를 표현하는 경우 단항 기수법에 비해서 큰 수를 간결하게 표현할 수 있게 된다. 예를들어서 1을 나타내는 기호가 I, 10을 나타내는 기호가 @, 100을 나타내는 기호를 %라고 하자. 이 명수법에서 425는 %%%%@@IIII, 145는 %@@@@IIIII, 57은 @@@@@IIIIIII 등의 방식으로 나타낸다. 고대 이집트 숫자와 로마 숫자는 명수법을 바탕으로 한 기수 체계를 형성한 대표적인 수 표기 방식이며, 표는 조선시대의 계림유사중 명수법을 발췌한것이다.

 

 

 

 

인류의 기수법 체계는 단항 기수법과 명수법을 거쳐 

위치값 기수법 으로 발전하였으며, 이전의 두 체계와 

달리 위치값 기수법에서는 숫자의 위치계수를 의미한다. 현대에 사람들이 사용하는 숫자 체계는 아라비아 숫자에 근거한 10진법 위치값 기수 체계이다. 

예를들어 1524라는 숫자는

(1x10^3) + (5x10^2) + (2x10^1) + (4x10^0) 로 표현된다.

 

바빌로니아 문명의 기수법

 

바빌로니아 기수 체계에서는 59개의 계수를 단위 수 1을 나타내는 '못 T' 모양의 문자와 10에 해당하는 '서까래<' 두 가지 기호의 조합으로 나타낸다.

예를들어 55는 못 5개와 서까래 5개로 표기하고 14는 서까래 1개 못4개로 표기한다. 60을 넘어서면 위치값 기수법에 근거하여 두 자리 이상으로 수를 표시하였는데, 몇 가지 수를 바빌로니아식 기수법으로 나타내면 아래와 같다.

 

1. 75: 75 = 60 * 1 + 15 바빌로니아식 표기 - (1;15)[못 1개 ; 서까래 1개와 못 5개] [T ; <TTTTT]

2. 1000: 1000 = 16 * 60 + 40 바빌로니아식 표기 - (16;40) [서까래 1개와 못 6개 ; 서까래 4개]

3. 400: 400 = 60 * 6 + 40 바빌로니아식 표기 - (6;40) [못 6개 ; 서까래 4개]

 

그러나 바빌로니아 기수법의 한계가 존재한다.

예컨대 바빌로니아 기수법에 의하면 2(TT) 와 61(T;T) 두 숫자 모두 못 2개의 연속적인 배열로 표현되기 때문에 혼동을 일의킨다. 바빌로니아의 서기들은 혼동을 피하고자 자릿수 사이의 띄어쓰기를 명확하게 하여 수를 표기하기도 하였지만, 종종 신중하지 못한 서기들이 띄어쓰기를 제대로 하지 못해 숫자 표기에서 모호함은 계속되었다. 바빌로니아 기수법의 근본적인 한계는 바로 '없음'을 나타내는 기호의 부재인데 바빌로니아 기수법에서 '없음'의 기호가 나타난 것은 기원전 3세기 경으로, 이는 역사에서 가장 오래된 '없음'의 개념이다. 그러나 없다는 것을 의미하는 바빌로니아식 기호와 오늘날 우리가 사용하는 0의 의미에는 약간의 차이가 있다. 그들이 만든 '없음'의 기호를 양이 아무것도 없는 것을 표현하는 데 쓰지 않고 단지 특정 위치에서의 공백을 나타낼 때만 사용하였다. 현대적으로 표현하면, 0이라는 기호를 102, 4006 등 숫자를 표기하는 과정에서는 썻지만 30-30이라는 연산에 대한 답으로서 0을 쓰지는 않았다는 것이다.(대신 " 다 떨어졌다", "없어졌다" 등의 문장 표현을 사용했다고 한다.) 이처럼 바빌로니아 사람들은 위치에서의 공백과 양적으로 없는 것을 다르게 간주하였다. 비록 완전하지는 않지만, 바빌로니아의 기수 체계는 최초로 위치적 기수법을 도입하고 공백을 나타내는 기호를 처음으로 발명했다는 점에서 충분히 수학사적 가치를 가진다.

 

 

마야 문명의 기수법

마야 문명의 기수법은 일반적인 위치적 기수법과 부분적으로 차이를 보인다.

마야의 기수법은 20진법을 기반으로 하고 있기 때문에 원칙적으로 끝자리부터 3번째 숫자의 계수는 20^2 = 400이 되어야 하지만, 마야의 학자들에게 세 번째 숫자는 360을 의미하는 것이었다.

예를들어 (13;1;5;14) 라는 마야 숫자를 그들의 위치적 기수법에 따라서 분석하면

13 * 20^3 + 1*360 + 5 * 20 + 14 가 된다. 이런 변칙은 마야 숫자가 모든 수를 나타낼 수 없게 되는 원인이 되었다.  변칙적인 진법이더라도 가장 기본적인 단위로 환산하면 그 양을 파악할 수는 있다. 예) 년,월,일 을 채택하는 날짜에서 년과 월을 전부 일로 바꾸어주면 자연수 체계로 양을 다룰 수 있다.

 

 

 

여기까지 기수법에 대한 개념들이 정리가 되었다면 이제 진법들을 응용하는 사례들을 찾아보자.

 

2진법

2진법은 두 종류의 숫자만을 이용하여 수를 나타내는 수 체계이다. 관습적으로 0과 1의 기호를 쓰며 이들로 이루어진 수를 2진수라고 한다. 2진법이 정확히 언제부터 사용되었는지는 아무도 모르지만, 인도 학자인 핀갈라(약 기원전 5세기~ 2세기) 가 시의 운율을 수학적으로 표현하기 위해 음절의 길고 짧을을 구분해서 마치 모스 부호처럼 표현을 했는데 이것이 여태까지 알려진 2진법이 사용된 표현들 중 최초라고 알려져 있다.

 

 

 

 

 

12진법

12진법은 1,2,3,4,6 등 약수를 많이 가지고 있기 때문에 과거 상거래에서 주요하게 사용되었으며, 현재에서 그 관습이 남아서 일부 단위에서 12진법이 사용되고 있다. 예를 들어 연필이나 펜을 세는 단위 다스는 12자루를 묶어서 나타내는 단위이며, 12다스는 다시 묶여서 1그로스라고 나타낸다.

 

 

 

 

2진법과 논리 연산

표기 숫자가 0과 1 두가지 밖에 없다는 특징 때문에

2진법은 참(True)과 거짓(False)을 나타내는 방식으로도 사용된다. 일반적으로 참(True)는 1로, 거짓(False)은 0으로 표시한다. 논리 연산은 몇 개의 2진수로 표기된 참과 거짓을 입력으로 받아들인 다음 특정한 방식의 연산을 수행하여 하나의 결과를 다시 참과 거짓을 의미하는 이진수 0 또는 1로 출력하는 것을 의미하며, 대표적인 연산으로는 AND, OR, NOT 등이 있다.