본문으로 이동

포털:고등학교/정보·통신 계열 전문 교과(2015)/컴퓨터 시스템 일반/논리 연산과 논리 회로

위키배움터

논리 연산

[편집]

논리 연산이란 두 개의 상태인 참(1,True)와 거짓(0,False)으로 이루어진 연산입니다. 다른 이름으로는 불 대수 라고도 하는데 이는 조지 불(George Boole)이 고안하고 형식화 하였기 때문입니다. 논리연산자에는 논리합(OR), 논리곱(AND), 논리부정(NOT)이 있습니다. 이때 0 과 1 을 논리 상수라고 합니다.


논리합(OR)

[편집]

논리합은 +로 표현하고 “또는”을 의미합니다. 2개의 입력 중 하나라도 값이 1 이라면 1을 반환합니다. 2개의 입력이 모두 0 일 경우만 0 을 반환합니다.

A B 반환값
1 1 1
1 0 1
0 1 1
0 0 0

논리곱(AND)

[편집]

논리곱은 ·로 표현하고 “그리고”를 의미합니다. 2개의 입력이 모두 1 일 경우만 1 을 반환합니다. 2개의 입력 중 하나라도 값이 0 이면 0 을 반환합니다.

A B 반환값
1 1 1
1 0 0
0 1 0
0 0 0

논리 부정(NOT)

[편집]

논리부정은 입력 값의 반대 값을 출력합니다. 즉, 1 이 입력되면 0을 출력하고 0 이 입력되면 1 이 출력됩니다.

입력값 반환값
1 0
0 1


부정 논리합(NOR)

[편집]

부정 논리합은 2개의 입력 중 한개라도 값이 1이라면 0 을 출력합니다. 2개의 입력이 모두 0 이라면 1 이 출력됩니다.

A B 반환값
1 1 0
1 0 0
0 1 0
0 0 1


부정 논리곱(NAND)

[편집]

부정 논리곱이란 2개의 입력 중 한개라도 값이 0 이라면 1 을 출력합니다. 2개의 입력이 모두 1 이라면 0 이 출력됩니다.

A B 반환값
1 1 0
1 0 1
0 1 1
0 0 1


배타적 논리합(XOR)

[편집]

배타적 논리합이란 2개의 입력의 참,거짓의 여부가 다를 때 1 을 반환합니다.

A B 반환값
1 1 0
1 0 1
0 1 1
0 0 0


배타적 부정 논리합(XNOR)

[편집]

배타적 부정 논리합은 = 로 표기하고 2개의 입력의 참,거짓의 여부가 같을 때 1 을 반환합니다. 동치 (EQV)와 같다.

A B 반환값
1 1 1
1 0 0
0 1 0
0 0 1

논리 회로

[편집]

디지털 회로를 구성하는 가장 기본적인 요소이다. 전자공학에서 논리 회로는 불 대수를 물리적 장치에 구현한 것으로, 하나 이상의 논리적 입력값에 대해 논리 연산을 수행하여 하나의 논리적 출력값을 얻는 전자회로를 말한다. 복잡한 집적 회로로 구성되어있다. 이때 여기서 논리 연산을 수행하는 것이 논리 소자이며, 이 논리 소자는 0 과 1 로 이루어진 신호만으로 동작하는 논리 게이트이다. AND 게이트, OR 게이트, NOT 게이트, NAND 게이트, NOR 게이트, XOR 게이트, XNOR 게이트 등이 있다.

논리 게이트의 모습

OR 게이트

[편집]

OR 게이트는 논리합을 수행하는 논리 게이트이다. 하나 이상의 입력이 1일 경우에는 1을 반환하고 모든 입력이 0일 경우에만 0을 반환한다.


AND 게이트

[편집]

AND 게이트는 논리곱을 수행하는 논리 게이트이다. 모든 입력이 1일 경우에는 1을 반환하고 그 밖에는 0을 반환한다.


NOT 게이트

[편집]

NOT 게이트는 논리 부정을 수행하는 논리 게이트이다. 입력이 1이면 0을 반환하고, 입력이 0이면 1을 반환한다.


NOR 게이트

[편집]

NOR 게이트는 OR 게이트와 NOT 게이트를 조합하여 논리합의 부정을 나타낸다. 하나 이상의 입력이 1일 경우에는 0을 반환하고 모든 입력이 0일 경우에만 1을 반환한다.


NAND 게이트

[편집]

NAND 게이트는 AND 게이트와 NOT 게이트를 조합하여 논리곱의 부정을 나타낸다. 모든 입력이 1일 경우에는 0을 반환하고 그 밖에는 1을 반환한다.


XOR 게이트

[편집]

XOR 게이트는 배타적 논리합 게이트이다. 두개의 입력이 같은 상태면 0을 반환하고, 두개의 입력이 다른 상태면 1을 반환한다.

XNOR 게이트

[편집]

XNOR 게이트는 배타적 부정 논리합 게이트이다. 두개의 입력이 같은 상태면 1을 반환하고, 두개의 입력이 다른 상태면 0을 반환한다.