디지털 논리회로와 데이터 표현

디지털 시스템

디지털 시스템

  • 시스템의 정의
    • 검은 상자형 시스템
      • 입력과 출력을 갖는 검은 상자로 표현
      • 시스템의 입력과 출력에만 관심을 갖고 시스템을 고려
    • 구성요소 집합으로서 시스템
      • 검은 상자 내부에 관해 규정
      • 시스템에 부여된 목적을 달성하기 위해 상호작용하는 구성요소들의 집합

아날로그와 디지털

  • 데이터의 표현 방법

    • 아날로그 방식
      • 데이터를 연속적인 값으로 표현
    • 디지털 방식
      • 연속적인 값을 근사하여 이산적인 값으로 표현
  • 아날로그 시스템과 디지털 시스템

    • 아날로그 시스템: 입력과 출력이 아날로그 데이터인 시스템 (예: 기상 시스템과 같은 모든 자연 시스템)
    • 디지털 시스템: 입력과 출력이 디지털 데이터인 시스템(예: 디지털 시계)
  • 디지털 시스템의 장점

    • 편리성: 데이터가 숫자로 입,출력
    • 융통성: 실행순서의 조정이 가능
    • 단순성: 시스템 설계가 단순
    • 안정성: 0과 1로 유지되므로 높은 안정성
    • 견고성: 잡음 등에 강함
    • 정확성: 논리적인 처리로 정확한 결과 도출

디지털 시스템의 설계 및 논리회로

  • 디지털 시스템의 설계
    • 회로설계 단계: 능동소자와 수동소자를 연결시키는 단계
    • 논리설계 단계: 논리회로를 만들기 위해 논리소자들을 연결시키는 단계
    • 시스템 설계 단계: 논리회로들을 연결하여 프로세서, 입출력 제어장치 등을 설계하는 단계
    • 실제적 설계 단계: 시스템 설계단계의 부품들을 PCB나 와이어 랩 기판에 배치시키는 단계

디지털 시스템의 설계 및 논리회로

  • 디지털 논리회로의 개요

    • 디지털 논리회로

      • 2진 디지털 논리를 논리 게이트로 구현한 것
      • 디지털 시스템을 구현하는 기본 요소
      • 디지털 시스템의 논리설계 단계에서 설계됨
    • 디지털 논리회로는 저장요소의 유무에 따라

      • 조합논리회로: 저장 요소가 없음(예: 가산기, 디코더 등)
      • 순서논리회로: 저장요소가 있음(예: 레지스터, 카운터 등)

컴퓨터의 구성

  • 컴퓨터 하드웨어의 구성
    • 입력장치: 외부로부터 데이터를 입력
    • 기억장치: 데이터를 기억하고 저장
    • 연산장치: 데이터에 대한 산술, 논리연산을 수행
    • 제어장치: 데이터 처리를 위한 구성요소들을 제어
    • 출력장치: 처리된 결과를 외부로 출력

집적회로

  • 디지털회로는 집적회로로 구성
    • 집적회로
      • 디지털 게이트의 기능을 수행하는 전자소자를 포함한 작은 실리콘 반도체 크리스털
      • 칩이라고 함
      • 칩 내부에 있는 여러 가지 게이트들은 회로의 목적에 부합되도록 상호 연결

집적회로

  • 집적도: 단위 실리콘 칩에 집적할 수 있는 게이트의 수

    • 소규모 집적
      • 몇 개의 독립적 게이트를 내장
    • 중규모 집적
      • 대략 10 ~ 100여 개의 게이트를 내장(디코더, 레지스터)
    • 대규모 집적
      • 수백 ~ 수천 개의 게이트를 내장(프로세서, 기억장치 칩)
    • 초대규모 집적
      • 수천 개 이상의 게이트를 내장(마이크컴퓨터 칩)
  • 디지털 논리계열

    • 디지털 논리회로는 집적회로로 구성
      • 기본 회로설계를 공유하는 집적회로의 그룹: 논리 계열
      • 각 논리계열의 기본적인 회로는 NAND 게이트 또는 NOR 게이트
  • 양논리와 음논리

    • 게이트의 입력과 출력에 대한 2진신호는 두 값 중에 한 값을 갖는다.
    • 두 논리값에 대한 두 신호값을 할당하는 방법

데이터 표현

수치 데이터

  • 진법

    • 수를 숫자로 나타내는 방법
    • 숫자의 위치에 따라 가중치 부여
    • 가중치는 기수의 승수를 이용
    • 기수는 2 이상의 양의 정수
  • r진법

    • 기수가 r(r >= 2)인 경우 r진법이라 함
    • r개의 숫자(0,1,2, ..., r - 1)로 표현
    • r진법으로 표현된 수를 r진수라 함
    • r진수 오른쪽 아래에 기수 r을 표기
  • 10진수의 r진수 변환(정수부분은 나눗셈, 소수점 아랫부분은 곱셈으로 구함)

  • 2진수와 2^n 진수의 상호변환

    • 2^n 진수의 각 자리의 수를 대응하는 n비트의 2진수로 바꾼다
    • 이 경우는 n=3이므로 3비트 2진수로 바꾼다
  • 기타 변환(r 진수를 s 진수로 변환)

    • r진수를 10진수로 변환한 다음
    • 10진수를 다시 s진수로 변환
  • 산술 연산

    • r 진법 두 수의 가산
      • 먼저 두 숫자를 10진수로 바꾸어 10진수 덧셈
      • 다음으로 그 결과를 다시 r진수의 합과 올림수로 변환
  • 보수(r-보수, (r-1)-보수)

    • r-보수 (정수 부분이 n 자리 일 때)
    • N에 대한 r-보수 = r^n - N, N != 0 / 0, N = 0
  • (r-1)-보수(정수 부분이 n자리, 소수 부분이 m자리 일떄)

    • N에 대한 (r-1)-보수 = r^n - r^-M - N
  • r-보수와 (r-1)-보수의 관계

    • r-보수= (r-1)-보수 + 가장 낮은 자리의 1
  • 보수를 이용한 감산

    • ±A -(±B ) = ±A + (∓B )
  • 영숫자 코드(영문자와 숫자를 2진 코드로 표현)

    • ASCII 코드
      • 하나의 영숫자 코드가 7비트로 구성, 전체 수는 128개
      • 실제로 사용될 때는 1비트의 패리티 비트를 포함하여 전송
    • EBCDIC 코드
      • 하나의 영숫자 코드가 8비트로 구성
      • 1비티의 패리티 비트를 포함하여 전송하면 9비트가 되어 비 효율적
    • 유니코드
      • ASCII 코드의 한계점을 극복하고자 전 세계 문자체계를 표현
      • 인코딩 방식으로 UTF-8, UTF-16, UTF-32의 세가지가 있다.