CS01 - 진법 변환기

Bibi·2022년 1월 3일
0

원문 : https://github.com/bibi6666667/TIL/blob/main/2022.01/220103.md

CS01 - 진법 변환기

학습

연산

  • 연산 = 컴퓨터가 하는 계산
  • 0과 1만을 사용함
  • CPU는 산술 연산(덧셈, 뺄셈)과 논리 연산(AND, OR, NOT)을 한다.
    - CPU에 FPU(Floating Point Unit, 부동소수점 연산) 기능이 추가되면 곱셈, 나눗셈도 처리한다.

2진법

  • 인간은 0-9를 사용하는 10진법을, 컴퓨터는 0-1을 사용하는 2진법을 사용
  • 비트(bit) : 2진수의 한 자리 숫자를 1비트라고 한다.
  • 바이트(byte) : 특별히 8비트를 1바이트라고 부른다.
    - 1비트가 0-1을 표현할 수 있으며(총 2개), 8비트는 0-255를 표현할 수 있다(총 256개)

논리 연산과 디지털 논리 회로

CPU는 고도의 IC(집적 회로)이다.
IC는 논리 연산을 수행한다.

  • 논리 회로는 기본적으로 입력이 2개, 출력이 1개이다.
  • 논리 회로는 릴레이(relay) 부품으로 만들어진다.
  • 디지털 논리회로로 사칙연산을 구현할 수 있고, 현대의 CPU에는 ALU라는 부품으로 구현되어 있다.

논리 회로

  • 논리 회로를 논리 게이트라고도 한다. AND 게이트, OR 게이트, NOT 게이트.

기본 논리 회로 - AND, OR, NOT

  • AND 회로 : 모든 입력이 1(true)일 때만 결과가 1(true)이다.
  • OR 회로 : 입력 중 하나라도 1(true)이면 결과가 1(true)이다.
  • NOT 회로(= INVERTOR 회로) : 입력을 반전한 결과를 출력한다.
    - 1(true) -> 0(false), 0(false) -> 1(true)

확장 논리 회로 - NAND, NOR, XOR

  • NAND 게이트 : 모든 입력이 1(true)일 때만 결과가 0(false)이다.
    - AND 회로와 완전히 반대로 동작하기 때문에 NOT + AND = NAND 게이트이다. 즉 AND 게이트 + NOT 게이트 = NAND 게이트이다.
  • NOR 게이트 : 입력 중 하나라도 1(true) 이면 결과가 0(false)이다.
    - OR 회로와 완전히 반대로 동작 (NOT + OR = NOR). 즉 OR 게이트 + NOT 게이트 = NOR 게이트이다.
  • XOR 게이트 : 두 입력이 서로 다를 때만 결과가 1(true)이다.
    - EXOR 회로라고도 하며, EX는 Exclusive(배타적인) 이라는 뜻이다.

반가산기 half-adder

  • 반가산기는 "1비트끼리의 덧셈"을 하는 기본 회로이다.
  • 이진수의 1의 자리를 계산할 때만 사용 가능하다.
  • XOR 회로와 AND 회로를 연결해 만든다.
  • 합(S, sum) : 두 비트의 합을 의미
  • 자리올림(C, Carry) : 두 비트를 합했을 때 자리올림이 발생하는지를 의미

전가산기 full-adder

  • 전가산기는 3가지 입력에서 2가지 출력이 가능한 덧셈 회로이다.
  • 순차 자리올림 가산기(ripple carry adder) : 반가산기 하나와 전가산기 여러 개를 연결한 것. 여러 자릿수의 덧셈이 가능하다.
  • CI(Carry In) : 자리올림 입력
  • CO(Carry Out) : 자리올림 출력

진법 변환기

0개의 댓글