컴퓨터공학기초 개념146 12. 논리회로 - 조합논리회로 0. 시작하기 전에 지금까지 공부한 내용을 쭉 복습해보자. - 컴퓨터에서 수를 표현하고 계산하는 방법에 대해서 알아보았다. - 여러가지 진법과, 보수를 이용한 음수를 계산하는 방법을 다루었다. - 이진법에서 사용하는 1의 보수와 2의 보수를 배웠고, - 왜 2의 보수를 사용하는지에 대해서 알게 되었다. - 컴퓨터가 수를 계산하는 과정을 논리회로의 관점에서 알아보았다. - 부울 대수와 진리표를 이용해서 논리 회로를 그리는 방법과 논리 회로를 논리식으로 표현하는 방법을 배웠다. - 논리식을 더욱 간단하게 구하기 위해, 카르노맵을 사용하여 진리표를 만들고 이를 이용해 논리식을 계산하는 방법까지 공부했다. 위에서 말한 모든 것을 사용하여 조합논리회로를 만든다. 조합논리회로란, 입력값을 기반으로 어떤 결과값을 계.. 2021. 8. 6. 11. 논리회로 - 카르노맵(karnaugh map) 1. 카르노 맵을 사용하는 이유 - 이전 포스팅에서 부울 대수를 이용하여 진리표를 도출해냈고 그것을 활용하여 논리식을 구하는 법을 배웠다. - 부울 대수를 이용해 논리식을 구할 수는 있으나, 여러가지 규칙을 따라야 하는 불편이 있었다. - 카르노 맵은 부울 대수보다 빠르게 진리표를 만들 수 있는 방법으로, - 이를 이용하여 논리식을 간소화 할 수 있고 빠르게 계산할 수 있다. - 이와 같은 이유로 카르노 맵을 사용한다. 2. 카르노 맵 - 기본개념 a) map이란? - map이란, 변수의 개수에 따라 작성되는 표를 의미한다. b) 민텀(minterm)이란? - 곱들의 합을 말하는 것으로, map의 사각형 하나를 minterm 이라고 부른다. - 최소항을 의미하는 것으로, map의 최대항(합들의 곱)을 m.. 2021. 8. 6. 10. 논리회로 - 부울대수와 논리식의 간편화 1. 실무 적용 사례 - 우선 실무 적용 사례를 통해서 부울대수와 진리표에 대해서 간략하게 알아보자. - 단일 비트(한자리 비트) 연산을 할 때 S는 a + b 값을 담는다. - C는 Carry라고 부르며 1 + 1를 연산하면 발생하는 초과값을 담는다. - 진리표는 단일 비트 계산의 모든 경우의 수를 적은 표를 말한다. - 부울대수는 S 값에 대한 관계를 표현한 식이다. - 부울대수를 확인하면 배타적 논리합이라는 것을 알 수 있는데, 이는 S값을 보면 된다. - 0 + 0 일 때 0이고 1 + 0 또는 0 + 1일 때 1이 나오는 배타적 논리합 관계인 것을 알 수 있다. - C계산 과정도 논리 곱의 형태라는 것을 알 수 있다. - 이를 기반으로, 단일비트 합에 대한 연산을 논리 회로로 구성을 하면 위와 .. 2021. 8. 5. 9. 논리회로 - 논리 게이트(logical gate) 1. 논리 회로란? - 컴퓨터는 모든 데이터를 2진법으로 처리한다. - 이 2진법은 전기신호에 의해 컴퓨터 내부에서 연산 및 처리가 된다. - 이처럼 컴퓨터의 데이터 처리를 위해, 0과 1로 표현되는 전기적 신호로 동작하는 전자회로를 말한다. 2. 논리 게이트란? - 논리 게이트는 논리회로의 기본 구성요소 중 하나이다. - 논리 회로는 2개의 입력과 1개의 출력을 기본으로 구성한다. - 논리 게이트는 전류나 전압으로 표현되는 데이터의 흐름을 제어하기 위해 사용되는 것이다. - AND, OR, NOT, XoR이 논리게이트다. - NOT 게이트를 제외하고 모두 2개의 입력을 받는다. a) 스위칭 이론 b) AND 게이트(논리 곱) - 입력 A와 B 모두 1인 경우에만 1이 출력된다. - 그 외의 경우에는 모.. 2021. 8. 5. 8. 데이터 표현 - BCD, 패리티 비트, 해밍코드 1. BCD(Binary Coded Decimal) - 10진수를 2진법으로 계산한 코드다. - 2진법으로 변환만 한 것이기에 연산용이 아니라 출력용으로 사용된다. 2. 패리티 비트(parity bit) - 데이터 통신에 있어서 데이터의 오류를 검출하기 위해 사용되는 비트 - 데이터를 전송하다보면 통신과정에서 값이 변형이 될 수 있다. - 이러한 데이터의 변형을 예방하고, 검사하기 위해서 사용되는 비트다. - 짝수 패리티: 1의 개수가 짝수가 되도록 맞춘다. - 홀수 패리티: 1의 개수가 홀수가 되도록 맞춘다. 3. 해밍 코드(Hamming code) - 패리티 비트와 함께 사용되는 방식이다. - 해밍코드는 자기정정 부호의 하나로, 이는 오류를 검출할 뿐만 아니라 정정할 수 있다는 의미다. - 데이터에 .. 2021. 8. 5. 7. 데이터 표현 - 실수 1. 개요 - 이전 포스팅에서 보수에 대해서 알아보았다. - 보수를 이용하여 컴퓨터가 어떻게 정수를 표현하고 계산하는지를 배웠다. - 이번 포스팅에서는 컴퓨터가 실수를 표현하는 방법을 알아보자. 2. 컴퓨터는 실수를 어떻게 표현할까? - 사실 컴퓨터는 실수를 정확하게 표현할 수 없다. 즉, 약간의 오차가 있다. - 왜 그런지 컴퓨터가 실수를 표현하는 방법에 대해서 알아보자. a) 소수를 이진법으로 바꿔보자. - 예를 들어, 5.34를 이진법으로 바꿔보자. - 우선 정수와 소수부를 나누어서 계산한다. - 5를 이진법으로 바꾸면 101이 된다. - 소수부 0.34는 다음과 같은 계산을 한다. - 끝까지 계산해보지는 않았지만, 아마도 무한소수가 될 것 같다. - 계산 결과를 살펴보면 10100101 어쩌구가 .. 2021. 8. 4. 6. 데이터 표현 - 2의 보수를 사용하는 이유 1. 개요 - 앞선 포스팅에서 1의 보수와 2의보수에 대해서 알아보았다. - 컴퓨터가 음수의 계산을 뺄셈이 아닌 덧셈으로 하기 위해서 보수를 사용한다는 것을 알았다. - 그 과정에서 보수를 구하는 방법이 두가지(1의 보수, 2의 보수)가 있다. - 왜 두개가 있는걸까? 보수를 구하는 방법은 하나만 있어도 충분한 거 아닐까? 차이점이 뭘까? - 이러한 궁금증이 들었다. 이 글을 읽는 당신도 그러하다면, 같이 알아보자. 2. 2의 보수를 사용하는 이유 - 결론부터 알아보자. - 2의 보수를 사용하는 이유는 동일한 저장공간을 이용하여 1의 보수보다 더 많은 수의 표현을 할 수 있기 때문이다. - 그렇다면 왜 그런지 차근차근 알아보자. a) 양수는 보수가 없다. - 위의 표를 살펴보자. - 10진수를 이진법으로.. 2021. 8. 3. 5. 데이터 표현 - 2의 보수 (Two's complement) 1. 2의 보수를 구하는 방법 - 이번 포스팅은 지난 포스팅에 이어서 2의 보수를 구하는 방법에 대해 알아보자. - 십진법으로 표현된 음수 -10을 이진법으로 계산한다. - 이진법으로 계산된 값을 토대로 1의 보수를 구한다. - 2의 보수를 구하는 방법은 1의 보수에 1을 더하는 것이다. 즉, 0101 + 1 이다. - 결과는 0110으로, 이것이 -10에 대한 2의 보수가 된다. a) 양수가 나오는 연산 - 캐리가 있는 경우 - 다음 예시를 통해서 알아보자. - 위의 예시처럼, -10에 대한 2의 보수까지 계산을 완료했다. - 이제 1101과 덧셈을 진행한다. -1의 보수와 다르게, 2의 보수는 캐리가 발생하면 버린다. - 결과적으로 0011이 남는다. 십진법으로 계산하면 3이 된다. - 올바른 계산결.. 2021. 8. 3. 4. 데이터 표현 - 1의 보수(one's complement) 1. 2진법에서 보수를 사용하는 방법 a) 1의 보수(one's complement)란? - 2진법에서 보수를 사용하여 음수를 표현하는 방식이다. - 어떻게 구하는지 아래의 예시를 통해 알아보자. b) 1의 보수를 구하는 방법 - 위의 그림처럼, 십진법으로 표현된 음수 -10을 2진법으로 어떻게 표현하는지 알아보자. - 우선 +10을 이진법으로 계산하여 1010을 만든다. - 그리고 나서 1과 0을 서로 바꿔준다. 1010 → 0101 - 이렇게 이진법으로 양수를 먼저 구하고, 1과 0을 바꾸어 음수를 구한다. - 이것이 이진법으로 음수를 표현하는 방법이다. - 이것이 이진법에서 -10의 보수를 구하는 방법이다. - 즉, 1의 보수를 구하는 방법이다. c) XoR(exclusive or) - 반전 - 위.. 2021. 8. 3. 이전 1 ··· 4 5 6 7 8 9 10 ··· 17 다음