컴퓨터가 사용하는 단위 ‘비트’ ‘0’ 또는 ‘1’ 두 가지 숫자로 구성, 0은 거짓을 의미하고 1은 참 뜻해 참-거짓 판별하는 ‘논리 연산’ 명제에 논리 연산자 활용해 사람의 생각을 조립하듯 이끌어
우리는 모든 것이 디지털 데이터가 되는 디지털 대전환 시대의 중심에 있습니다. 혹자는 디지털 대전환 시대를 디지털 세계와 현실 세계가 점점 일치하는 방향으로 발전하는 시대라고 합니다.
학교에서 사용하는 교과서와 디지털 교과서, 미술관에 걸려 있는 그림과 온라인 미술관의 그림 등 현실에 존재하는 것들이 어떻게 컴퓨터 속 디지털 데이터가 될까요. 현실에 존재하는 어떤 것을 컴퓨터가 다룰 수 있는 것으로 변환해야 하는데요. 여기서 변환은 그 의미나 내용을 바꾸지 않고 정해진 규칙에 따라 모양이나 형식을 바꾸는 것입니다.
○ 데이터의 단위, 비트(bit)
우리가 질량의 단위로 킬로그램(kg), 길이의 단위로 미터(m)를 사용하는 것과 같이 컴퓨터는 비트(bit)라는 측정 단위를 사용하여 데이터를 저장하고 처리합니다. 비트(bit)는 ‘2진법 숫자(binary digit)’에서 유래된 단어로, 0 또는 1이 들어갈 수 있는 한 자리를 나타내는 말입니다. 이는 컴퓨터가 ‘전기가 있다(온·on)’ 또는 ‘전기가 없다(오프·off)’ 두 가지 상태만 나타낼 수 있으므로, 2진법 숫자 0과 1에 대응해 컴퓨터의 온·오프 상태를 표현하는 것이 바람직했기 때문입니다.
3개의 걸이에 막대기를 걸쳐 몇 가지의 다른 메시지를 만들 수 있을까. 막대기를 걸칠지 말지에 따라 총 8개의 메시지를 만들 수 있다. 이는 비트의 기본 원리를 이해하면 해석할 수 있다.
3개의 걸이에 막대기를 걸쳐 몇 가지의 다른 메시지를 만들 수 있을까. 막대기를 걸칠지 말지에 따라 총 8개의 메시지를 만들 수 있다. 이는 비트의 기본 원리를 이해하면 해석할 수 있다.
○ 1은 참, 0은 거짓
컴퓨터에서 ‘1’은 참(True)을, ‘0’은 거짓(False)을 의미합니다. 그리고 참과 거짓을 다루는 연산을 논리 연산이라고 합니다. 논리 연산을 ‘불 연산’이라고도 하는데요, 이는 조지 불이 만들었기 때문입니다.불은 1854년 “인간의 모든 생각은 명제와 명제를 AND(그리고), OR(또는), NOT(아닌)으로 결합하여 표현할 수 있다”고 말했습니다. 명제는 참인지 거짓인지 판별할 수 있는 문장을 말합니다. AND, OR, NOT은 불 연산자 또는 논리 연산자라고 하는데요, 인간의 생각(논리)을 조립하는 데 사용됩니다.
논리 연산자 AND는 두 명제가 모두 참이어야 결과가 참이 되는 연산으로, 논리곱이라고도 합니다. 서대문구에서 운영하는 소프트웨어 교육 프로그램 공고문의 일부를 예로 들어보겠습니다.
‘서대문구에 있다’와 ‘중학교 학생이다’는 두 명제가 모두 참이어야 “지원 가능하다”는 결과가 참이 됩니다. 그렇다면 서대문구에 있는 초등학교 학생은 SW 교육 프로그램에 지원할 수 있을까요? 서대문구에 있으므로 명제 A는 참이지만, 중학교 학생이 아니므로 명제 B는 거짓입니다. 지원할 수 없겠죠?
논리 연산자 OR는 두 명제 중 적어도 1개 이상의 참이 있으면 결과가 참이 되는 연산으로 논리합이라도 합니다. 이번에는 놀이공원의 입장료를 예로 들어보겠습니다.
‘입장료: 7세 이하이거나 65세 이상은 이용요금 할인.’
‘7세 이하’라는 명제와 ‘65세 이상’이란 명제 중 적어도 1개가 참이면 “이용요금 할인이다”라는 결과가 참입니다. 이 글을 읽는 여러분은 놀이공원 이용요금을 할인받을 수 있을까요?
○ 불의 논리, 디지털 논리가 되다
클로드 섀넌의 통찰을 나타낸 직렬과 병렬 스위치 회로.
직렬 스위치는 불의 논리 AND(논리곱)로 설명될 수 있고, 병렬 스위치는 OR(논리합)로 설명될 수 있어 결국 두 개가 같은 것이라는 발견은 전기회로를 설계하는 데 날개를 달아주게 되었습니다. 이는 오늘날 디지털 논리회로 설계에 이용되어 컴퓨터 동작의 기초가 되었습니다.
김학인 한성과학고 교사