1. 기본 논리식의 표현

1) 논리식의 표현

  • 논리식 = AND, OR, NOT 연산 이용
  • AND → 곱셈 형태
  • OR → 덧셈 형태
  • NOT → X̅ 또는 X′로 표현
  • 완전한 논리식 = 입력 상태에 따른 출력 결정

예시

  • 예1) X = 0, Y = 1 → 출력 1 → F = X̅Y
  • 예2) X = 0 또는 Y = 1 → 출력 0 → F = X̅ + Y
  • 예3) (X=0, Y=1) 또는 (X=1, Y=0) → 출력 1 → F = X̅Y + XY̅

2) 진리표상의 논리식 변환

  • 1입력 / 2입력 / 3입력 논리식 존재
  • 진리표로 논리식 도출 가능

진리표상의 논리식 변환


2. 부울대수의 법칙

1) 부울대수란?

  • 1854년 George Boole이 개념 제시
  • 1904년 E.V. Huntington이 수학적으로 정리
  • 1938년 C. Shannon이 전화 회로 해석에 처음 적용
  • 이후 컴퓨터 회로 해석 및 설계에 사용됨

2) 부울대수의 공리

  • 논리적 연산 기반의 기본 규칙
  • AND, OR, NOT 연산의 특성 정의
  • 부울대수의 공리

3) 부울대수의 기본 정리 및 법칙

  • 식을 단순화할 때 사용
  • 중복 제거, 결합법칙, 항등법칙 등 포함
  • 부울대수의 기본 정리 및 법칙

3. 논리 회로의 논리식 변환

  • 게이트 거칠 때마다 출력 기입
  • 한 단계씩 출력 방향으로 분석
  • 최종 출력까지 논리식 유도 가능

논리 회로의 논리식 변환


✅ 요약 정리

  • 진리표상의 논리식 변환: 입력 조합 → 출력 식
  • 부울대수 법칙: 논리식 단순화 및 회로 해석에 필수

 

🔹 1. 논리 연산과 논리 게이트란?

📌 논리 연산(Logical Operation)이란?

논리 연산은 참(1)거짓(0) 두 개의 값만을 갖는 집합에서의 연산이에요. 이 집합을 보통 불 집합, 또는 불 대수의 환(Ring)이라고도 부름.

연산 이름  기호  의미
논리합 OR (+) 둘 중 하나라도 1이면 결과는 1
논리곱 AND (·) 둘 다 1이어야 결과가 1
논리부정 NOT (‾) 값을 반대로 (1 → 0, 0 → 1)
NAND NOT + AND AND 결과를 부정
NOR NOT + OR OR 결과를 부정
XOR 배타적 논리합 둘이 다를 때만 1
XNOR XOR 부정 둘이 같을 때 1

🔸 2. 기본 논리 게이트 종류

✅ 1. OR 게이트 (논리합)

  • 둘 중 하나라도 1이면 출력은 1
  • 논리식: A + B
A + B
0 0 0
0 1 1
1 0 1
1 1 1

논리- 합(OR)


✅ 2. AND 게이트 (논리곱)

  • 두 입력이 모두 1일 때만 출력 1
  • 논리식: A · B
A · B
0 0 0
0 1 0
1 0 0
1 1 1

논리-곱(AND)


✅ 3. NOT 게이트 (논리 부정)

  • 입력 값을 반대로 바꿈 (1 ↔ 0)
  • 논리식: ‾A 또는 A̅
NOT A
0 1
1 0

논리-부정(NOT)


✅ 4. NAND / NOR 게이트

  • NAND (NOT AND): AND 결과를 반전
  • NOR (NOT OR): OR 결과를 반전
A AND B  NAND  A OR B  NOR
0 0 0 1 0 1
0 1 0 1 1 0
1 0 0 1 1 0
1 1 1 0 1 0

부정 논리합 (NOR)
부정 논리곱 (NAND)


✅ 5. XOR / XNOR 게이트

  • XOR: 두 값이 다를 때만 1
  • XNOR: 두 값이 같을 때 1
XOR  XNOR
0 0 0 1
0 1 1 0
1 0 1 0
1 1 0 1

배타적 논리합(XOR)
배타적 부정 논리합(NXOR)


🔧 3. 결선형 AND / OR 게이트

회로 설계에서 여러 게이트의 출력을 결합해서 하나의 새로운 연산 결과를 만들어내는 경우도 있는데, 이걸 결선형 게이트라고 한다.

🔹 결선형 AND 게이트

  • Open-collector 형 NAND 게이트 2개의 출력을 하나의 풀업 저항을 통해 연결하면 → AND 게이트 효과
  • 실제 회로에서는 ‘AND-OR-Invert’ 구조와 유사

🔹 결선형 OR 게이트

  • ECL(NOR 게이트) 2개의 출력을 직접 연결 → OR 연산 효과
  • ‘OR-AND-Invert’ 방식처럼 동작

결선형 AND / OR 게이트


⚙️ 4. 게이트 회로의 실제 구현

종류  설명
인버터 (NOT Gate) 가장 기본 회로, 입력 반전
RTL Resistor-Transistor Logic. 저항 + 트랜지스터 조합
DTL / TTL 다이오드 + 트랜지스터 조합, TTL은 74시리즈로 널리 사용됨
CMOS 전력 소모가 적고, 고집적 회로에 적합

인버터
RTL 형 NAND Gate(좌), NOR Gate(우)
DTL 형 NAND Gate(좌), TTL 형 NAND Gate(우)
CMOS형 NAND Gate



🧳 5. 논리 게이트용 IC 패키지

시리즈  특징
74 시리즈 TTL IC 빠른 동작, 5V 전원 사용, 산업계 표준
4000 시리즈 CMOS IC 전력 소모 적음, 다양한 전압에서 작동

74 시리즈 TTL IC
4000 시리즈 CMOS IC


✅ 요약 정리

항목  내용
논리 연산 종류 OR, AND, NOT, NAND, NOR, XOR, XNOR
게이트 회로 종류 RTL, DTL, TTL, CMOS
결선형 게이트 AND/OR 게이트를 여러 출력으로 구성 가능
IC 시리즈 74시리즈(TTL), 4000시리즈(CMOS)

 

 

 

🔹 1. IC란 무엇인가?

🔧 IC(Integrated Circuit)

  • 여러 개의 논리 게이트를 아주 작은 칩 위에 집적시킨 것
  • 디지털 시스템에서 기본적인 논리 연산을 수행하는 핵심 부품
  • 다양한 전자기기에서 사용됨 (예: 컴퓨터, 스마트폰, 가전제품 등)

🧩 IC 핀 구성 예시

실제 IC는 핀(pin)이라는 다리들을 통해 전기 신호를 주고받습니다. 가장 대표적인 형태가 DIP(Dual In-line Package)!

핀 구성도 및 실제 IC 형태


📦 2. IC 패키지의 종류

구분  설명  특징
삽입 장착형 (DIP) PCB에 구멍을 뚫어 핀을 꽂고 납땜 조립 쉬움, 크고 무거움
표면 실장형 (SMD) PCB 표면에 직접 납땜 작고 가볍고 고밀도

SMD는 DIP보다 약 70% 작고, 무게는 90% 가벼움
✅ 제조 비용 절감과 고밀도 회로 구현이 가능!

IC 패키지



🧠 3. 집적 회로의 분류

(1) 집적도(내부 게이트 수)에 따른 구분

구분  설명  게이트 수
SSI Small Scale IC 100개 이하
MSI Medium Scale IC 100 ~ 1,000개
LSI Large Scale IC 1,000 ~ 10,000개
VLSI Very Large Scale IC 10,000 ~ 1,000,000개
ULSI Ultra Large Scale IC 1,000,000개 이상

IC 구성에 따른 구분


(2) 구성 방식에 따른 구분

  • 표준 논리 소자: NAND, NOR 등 고정된 논리 회로
  • 프로그램 가능 논리 소자 (PLD): 사용자가 회로 설정 가능
    • CPLD: 복잡한 논리 회로를 구현
    • FPGA: 유연한 구조, 다양한 디지털 시스템 설계에 활용

⚙️ 4. IC의 전기적 특성

📉 1. 전달 지연 시간 (Propagation Delay)

  • 입력 신호가 출력으로 반영되기까지 걸리는 시간
  • 짧을수록 빠른 회로!

Propagation Delay Time (74VHC04)
Propagation Delay Time (74VHC04)


🔌 2. 팬-인(Fan-In) & 팬-아웃(Fan-Out)

용어  설명
팬-인 게이트가 수용할 수 있는 최대 입력 수
팬-아웃 한 게이트 출력이 얼마나 많은 회로로 연결될 수 있는지

팬-인(Fan-In) & 팬-아웃(Fan-Out)


📡 3. 잡음 여유도 (Noise Margin)

  • 외부 신호 간섭(노이즈)에 견디는 능력
  • 클수록 안정적인 회로

잡음 여유도


⚡ 4. 소비 전력

  • 게이트 동작 시 얼마나 많은 전기를 사용하는지
  • 고성능 IC는 낮은 전력 소모가 중요

정격 소비 전력


🔁 5. 싱크 전류 & 소스 전류

용어  설명
싱크 전류(Sink) 출력 단자 → 회로 내부로 전류 유입
소스 전류(Source) 출력 단자 → 외부 회로로 전류 방출

싱크 전류 & 소스 전류


🔧 6. 풀-업 저항 / 풀-다운 저항

  • 목적: 입력 신호가 불안정할 때 정확한 논리값을 유지
  • 풀-업 저항: 입력을 Vcc(전원) 쪽으로 당김 (High 상태 유지)
  • 풀-다운 저항: 입력을 GND(접지) 쪽으로 당김 (Low 상태 유지)
  • 보통 3~10kΩ 범위 사용

풀-업 저항
풀-다운 저항


🧩 5. IC 계열별 특징

🔁 1. 집적 회로의 종류 (논리 게이트 구성 방식)

종류 설명  특징
RTL Resistor-Transistor Logic 가장 기본, 저항+트랜지스터 조합, 전력 낭비 큼
DTL Diode-Transistor Logic 다이오드 추가, 팬-인 향상
TTL Transistor-Transistor Logic 대표적인 논리 회로, 5V 전원, 다양한 변종 존재
CMOS Complementary MOS 낮은 전력 소비, 고집적화 가능, 현대 회로의 주류

🔍 2. TTL vs CMOS 비교

항목 TTL  CMOS
소비 전력 높음 매우 낮음
속도 빠름 비교적 느림 (고속 CMOS는 예외)
잡음 내성 보통 높음
집적도 낮음 높음
사용 전압 일반적으로 5V 3.3V, 5V 다양함

✅ 요약 정리

항목  내용
집적도 분류 SSI, MSI, LSI, VLSI, ULSI
IC 전기적 특성 전달 지연, 팬-인/팬-아웃, 잡음 여유도, 소비 전력, 전류 방향, 풀업/풀다운 저항
회로 구성 방식 RTL, DTL, TTL, CMOS
대표 논리 소자 표준 논리 IC(74시리즈), PLD(CPLD, FPGA 등)

 

 

💡 디지털 코드란 무엇일까?

디지털 시스템은 숫자뿐 아니라 문자, 기호, 특수 문자 등 모든 정보를 2진 비트로 표현한다. 이때 사용하는 다양한 코드를 디지털 코드라고 부른다. 디지털 코드는 크게 다음과 같이 분류된다:

  • 수치 표현용 코드: 가중치 코드, 비가중치 코드 등
  • 문자 표현용 코드: ASCII, EBCDIC, 유니코드 등
  • 에러 검출 및 정정용 코드: 패리티 비트, 해밍 코드 등

🔢 1. 수치 표현을 위한 디지털 코드

1-1. 가중치 코드 vs 비가중치 코드

분류 설명 예시

가중치 코드 각 비트가 고정된 가중치를 가짐 8421, 2421
비가중치 코드 비트 가중치 개념 없음 그레이 코드, Excess-3

1-2. BCD (Binary-Coded Decimal, 8421 코드)

  • 설명: 10진수를 4비트 2진수로 표현하는 방식
  • 예시: 10진수 6 → 0110, 10진수 9 → 1001
  • 주의: “1010”~“1111”은 사용하지 않음 → 유효하지 않은 코드

✅ BCD는 사람이 보기 쉽고 변환이 간편하지만, 계산(연산)이 복잡해짐

BCD code


1-3. Excess-3 (3초과 코드)

  • 설명: BCD에서 각 수에 +3을 더해 표현한 비가중치 코드
  • 특징:
    • 사용 가능한 값은 BCD보다 많음
    • 자기보수(Self-Complementary) → 보수 연산이 간단
  • 예시: 10진수 0 → 0011, 1 → 0100, 9 → 1100

자기 보수의 성질


1-4. Gray Code (그레이 코드)

  • 특징:
    • 인접한 숫자 간 1비트만 변화 → 오류 최소화
    • 산술 연산은 불가능
    • 입출력 장치, 아날로그-디지털 변환기 등에 사용됨
  • 예시 (3비트 기준):
2진수  Gray 코드
000 000
001 001
010 011
011 010
100 110
101 111
110 101
111 100

 


🔤 2. 문자 표현을 위한 코드 (알파뉴메릭 코드)

2-1. ASCII (American Standard Code for Information Interchange)

  • 설명: 미국 ANSI에서 제정한 문자 표준 코드
  • 구성: 7비트로 128개 문자 표현 가능
  • 범위:
    • 영문자 대/소문자, 숫자, 기호, 제어 문자 등

ASCII 코드
ASCII 코드 2


2-2. EBCDIC (Extended Binary Coded Decimal Interchange Code)

  • 설명: IBM에서 개발한 8비트 문자 코드
  • 표현 가능 문자 수: 256개
  • 주로 사용: IBM 대형 컴퓨터 시스템

EBCDIC 코드


2-3. Unicode (유니코드)

  • 개요: ASCII의 한계 극복을 위한 범세계 문자 표준
  • 특징:
    • 전 세계 주요 언어 포함 (10만 개 이상 문자)
    • 한자 70,000자 이상 포함
    • 수학 기호, 기하학 기호, 이모지 등도 포함
  • 용도: 웹, 모바일, 소프트웨어 국제화 표준

⚠️ 3. 에러 검출 및 수정용 코드

3-1. 패리티 비트 (Parity Bit)

  • 기능: 데이터 전송 중 발생할 수 있는 에러를 검출
  • 방식:
    • 짝수 패리티 (Even parity): 전체 1의 개수가 짝수가 되도록 설정
    • 홀수 패리티 (Odd parity): 전체 1의 개수가 홀수가 되도록 설정
  • 한계: 에러 검출만 가능, 다중 에러 발생 시 한계 있음

패리티 비트의 표현
병렬 패리티


3-2. 해밍 코드 (Hamming Code)

  • 기능: 에러 검출 + 수정 가능
  • 원리:
    • 정보 비트 사이에 패리티 비트를 삽입하여 오류 위치 파악
    • 조건식: 2^p ≥ d + p + 1 (p: 패리티 비트 수, d: 데이터 비트 수)
  • 예시:
    • 전송: 1011 → 해밍 코드로 변환 → P1 P2 1 P3 0 1 1
    • 수신: 오류 위치 계산 후 해당 비트를 수정 가능

해밍 코드 생성 방법
해밍 코드 생성 방법2


✅ 요약

구분 코드 특징

수치 표현 코드 BCD (8421), 3초과, 그레이 코드 BCD는 간단하나 연산 어려움, 그레이 코드는 1비트 변화
문자 표현 코드 ASCII, EBCDIC, Unicode ASCII는 128문자, EBCDIC은 IBM, 유니코드는 다국어 지원
에러 제어 코드 패리티, 해밍 코드 패리티는 검출, 해밍은 검출+수정 가능

 

1. 수의 연산

1. 2진수의 사칙 연산

2진수의 사칙 연산은 10진수와 기본적으로 동일하지만, 뺄셈 연산은 직접 수행되지 않고 "보수"를 이용한 덧셈으로 처리된다는 점이 다르다.

  • 덧셈(Addition): 10진수처럼 자리 올림을 하며 계산
  • 뺄셈(Subtraction): 보수를 이용하여 덧셈으로 변환 후 연산
  • 곱셈(Multiplication): 여러 번의 덧셈 연산으로 구현 (소프트웨어적 처리)
  • 나눗셈(Division): 반복적인 뺄셈으로 구현 (소프트웨어적 처리)

2. 보수(Complement)에 의한 2진수의 감산

보수란 음수를 표현하는 방법으로, 디지털 시스템에서는 뺄셈을 보수를 이용한 덧셈 과정으로 변환하여 연산을 수행한다.

(1) 보수를 이용한 감산 원리

M−S=M+(−S)M - S = M + (-S)

여기서,

  • MM: 감수 (Minuend, 빼지는 수)
  • SS: 피감수 (Subtrahend, 빼는 수)
  • −S-S: 피감수의 보수를 이용해 변환한 음수 값

즉, 뺄셈을 직접 수행하는 것이 아니라, 피감수를 보수로 변환한 후 덧셈을 수행하는 방식이다.

(2) 보수의 종류

  • 1의 보수(1’s Complement): 모든 비트를 반전(0 → 1, 1 → 0)한 값
  • 2의 보수(2’s Complement): 1의 보수에 1을 더한 값

(3) 10진수에서의 보수 예제

10의 보수(Ten’s Complement)와 9의 보수(Nine’s Complement)

  • 45610456_{10} 의 보수를 구하면:
    • 9의 보수: 999−456=543999 - 456 = 543
    • 10의 보수: 1000−456=5441000 - 456 = 544

(4) 2진수에서의 보수 예제

1의 보수(One’s Complement)와 2의 보수(Two’s Complement)

  • 10101210101_2 의 보수를 구하면:
    • 1의 보수: 11111−10101=01010211111 - 10101 = 01010_2
    • 2의 보수: 100000−10101=010112100000 - 10101 = 01011_2

💡 2의 보수는 컴퓨터에서 가장 많이 사용되는 음수 표현 방식이다.


2. 2진수의 정수 표현법 (고정 소수점 표현)

1. 2진 음의 정수 표현

2진수에서 음수를 표현하는 방식에는 크게 세 가지가 있다.

2. 2진 음의 정수 표현 방법

표현 방식 특징 예제 (4비트 기준, -5 표현)

부호와 절대치 (Sign-Magnitude) MSB를 부호 비트로 사용 (0: 양수, 1: 음수) 10101 (5의 부호 비트 추가)
1의 보수 (One’s Complement) 모든 비트를 반전하여 표현 11010
2의 보수 (Two’s Complement) 1의 보수 + 1을 더한 값 11011

3. 2의 보수를 사용한 2진 정수의 표현 범위

N비트의 2의 보수 표현법에서 정수 범위는 다음과 같다.

−2N−1≤X≤2N−1−1-2^{N-1} \leq X \leq 2^{N-1} - 1

예제 (8비트 기준)

  • 최소값: −27=−128-2^{7} = -128
  • 최대값: 27−1=1272^{7} - 1 = 127

💡 2의 보수는 하드웨어적으로 덧셈과 뺄셈을 동일한 방식으로 처리할 수 있어 가장 널리 사용된다.


3. 2진수의 실수 표현법 (부동 소수점 표현)

1. 2진 부동 소수점의 표현

고정 소수점 방식은 소수점이 고정되어 있어 정수 표현에는 적합하지만 실수를 표현하는 데 한계가 있다.
이 문제를 해결하기 위해 부동 소수점 (Floating-Point) 표현을 사용한다.

부동 소수점 수는 IEEE 754 표준을 따른다.

부동 소수점 수=(−1)S×M×2E\text{부동 소수점 수} = (-1)^S \times M \times 2^E

  • S (Sign Bit): 부호 비트 (0: 양수, 1: 음수)
  • E (Exponent): 지수 (Exponent, 2의 거듭제곱)
  • M (Mantissa): 가수 (유효숫자)

2. 정규화 (Normalization)

부동 소수점 수를 표현할 때, 정규화(Normalization) 를 통해 일정한 형태로 변환한다.

  • 2진수의 정규화된 형태: 1.xxxxx×2n1.xxxxx \times 2^n

예제

  • 101.012=1.0101×22101.01_2 = 1.0101 \times 2^2

정규화를 통해 소수점의 위치를 조정하여 보다 정밀한 표현이 가능하다.


3. 컴퓨터에서의 부동 소수점 표현 범위

IEEE 754 표준에서는 부동 소수점 수를 32비트 (단정도)와 64비트 (배정도)로 표현한다.

형식 비트 수 지수 비트 가수 비트 표현 범위

단정도 (Single Precision) 32비트 8비트 23비트 ±1.18×10−381.18 \times 10^{-38} ~ ±3.4×10383.4 \times 10^{38}
배정도 (Double Precision) 64비트 11비트 52비트 ±2.23×10−3082.23 \times 10^{-308} ~ ±1.8×103081.8 \times 10^{308}

부동 소수점의 주요 개념

  • 지수(E)가 0보다 작으면 작은 수, 0보다 크면 큰 수
  • 가수(M)의 정밀도가 높을수록 정확한 수 표현 가능

📌 요약 정리

2진수의 뺄셈보수(Complement)를 이용한 덧셈으로 처리
2진수의 정수 표현 방식: 부호와 절대치, 1의 보수, 2의 보수
2진수의 실수 표현 방식: IEEE 754 표준 (부동 소수점 표현)
정규화를 통해 부동 소수점 수를 일정한 형태로 변환

 

1. 10진법, 2진법, 8진법, 16진법

1. 수의 정의

수란 양(量)을 표현하기 위한 추상적인 개념으로, 우리가 숫자로 표기하고 연산할 수 있는 대상이다.

2. R진법(기수법, Radix Notation)

진법이란 수를 표기하는 기본 체계를 의미하며, 기수(radix, R) 라고 불리는 기본수를 기반으로 숫자를 표현한다.

  • R진법에서 표현되는 수 NN은 다음과 같이 나타낼 수 있다.N=DmDm−1...D1D0.D−1D−2...D−nN = D_m D_{m-1} ... D_1 D_0 . D_{-1} D_{-2} ... D_{-n}여기서,
    • DiD_i : 각 자리의 숫자 (digit value)
    • RR : 기수 (base number)
    • RiR^i : 각 자리의 가중치 (weight of digit)
    • 0≤Di<R0 \leq D_i < R

즉, 진법이 다르면 같은 수라도 다른 방식으로 표현된다.


3. 주요 진법과 특징

진법 기수(R) 사용 가능한 숫자 가중치의 증가 예시

2진법 (Binary) 2 0, 1 2n2^n 10112=1×23+0×22+1×21+1×20=11101011_2 = 1 \times 2^3 + 0 \times 2^2 + 1 \times 2^1 + 1 \times 2^0 = 11_{10}
8진법 (Octal) 8 0 ~ 7 8n8^n 578=5×81+7×80=471057_8 = 5 \times 8^1 + 7 \times 8^0 = 47_{10}
10진법 (Decimal) 10 0 ~ 9 10n10^n 45210=4×102+5×101+2×100452_ {10} = 4 \times 10^2 + 5 \times 10^1 + 2 \times 10^0
16진법 (Hexadecimal) 16 0 ~ 9, A ~ F 16n16^n 2F16=2×161+15×160=47102F_ {16} = 2 \times 16^1 + 15 \times 16^0 = 47_{10}

💡 8진법과 16진법은 2진수를 그룹으로 묶어 표현하기 때문에 컴퓨터에서 효율적으로 사용된다.


2. 진법 변환

1. 2ⁿ진법 → 10진법 변환

각 자리 숫자에 해당 진법의 가중치를 곱한 후 모두 더한다.

예제 1: 2진수 → 10진수

11012=(1×23)+(1×22)+(0×21)+(1×20)1101_2 = (1 \times 2^3) + (1 \times 2^2) + (0 \times 2^1) + (1 \times 2^0) =8+4+0+1=1310= 8 + 4 + 0 + 1 = 13_{10}

예제 2: 8진수 → 10진수

3458=(3×82)+(4×81)+(5×80)345_8 = (3 \times 8^2) + (4 \times 8^1) + (5 \times 8^0) =192+32+5=22910= 192 + 32 + 5 = 229_{10}

예제 3: 16진수 → 10진수

1A316=(1×162)+(A×161)+(3×160)1A3_ {16} = (1 \times 16^2) + (A \times 16^1) + (3 \times 16^0)

(A = 10)

=256+160+3=41910= 256 + 160 + 3 = 419_{10}


2. 10진법 → 2ⁿ진법 변환

1) 10진수 → 2진수 변환 (나머지 방식 사용)

예제: 191019_{10} 을 2진수로 변환

나눗셈 몫 나머지

19 ÷ 2 9 1
9 ÷ 2 4 1
4 ÷ 2 2 0
2 ÷ 2 1 0
1 ÷ 2 0 1

위쪽에서 아래로 나머지를 읽으면 19의 2진수 표현: 10011_2


2) 10진수 → 8진수 변환

예제: 831083_{10} 을 8진수로 변환

나눗셈 몫 나머지

83 ÷ 8 10 3
10 ÷ 8 1 2
1 ÷ 8 0 1

결과: 123_8


3) 10진수 → 16진수 변환

예제: 27510275_{10} 을 16진수로 변환

나눗셈 몫 나머지

275 ÷ 16 17 3
17 ÷ 16 1 1
1 ÷ 16 0 1

결과: 113_{16}


3. 8진수 ↔ 16진수 변환 (2진수를 거쳐 변환)

8진수와 16진수는 2진수를 거쳐 변환하면 간단하다.

1) 8진수 → 2진수 → 16진수

예제: 3458345_8 을 16진수로 변환

  1. 8진수를 2진수로 변환 (각 자리 숫자를 3비트로 변환)
    38=0112,48=1002,58=10123_8 = 011_2, 4_8 = 100_2, 5_8 = 101_2
    즉, 3458=0111001012345_8 = 011100101_2
  2. 2진수를 16진수로 변환 (4비트씩 묶음)
    0111 0010 1 → 0111 0010 0001 (앞에 0 추가)
    0111 = 7, 0010 = 2, 0001 = 1
  3. 결과: 72_16

📌 요약 정리

2ⁿ진법 → 10진법: 각 자리 숫자 × 해당 진법의 가중치 → 모두 더하기
10진법 → 2ⁿ진법: 해당 진법으로 나누고 나머지 기록 → 나머지를 역순으로 읽기
8진수 ↔ 16진수: 2진수를 거쳐 변환 (8진수는 3비트, 16진수는 4비트씩 묶기)

1. 디지털 정보의 표현 단위

1. 정보의 최소 단위: 비트(Bit)와 바이트(Byte)

디지털 정보는 2진수(Binary System) 를 사용하여 표현됩니다. 가장 작은 단위는 비트(Bit) 로, 0 또는 1의 값을 가질 수 있습니다.
비트가 모이면 더 큰 단위를 형성하며, 다음과 같은 관계를 가집니다.

  • 1 nibble = 4 bit
  • 1 byte = 8 bit
  • 1 byte = 1 character
    • 영어 문자: 1 byte(8비트)로 표현
    • 한글 문자: 2 byte(16비트) 필요

2. 워드(Word)란?

워드(Word) 는 특정 CPU에서 한 번에 처리할 수 있는 데이터의 크기를 의미하며, CPU 아키텍처에 따라 다릅니다.

  • 예: 32비트 프로세서 → 1 word = 32 bit, 64비트 프로세서 → 1 word = 64 bit

또한, 워드의 비트 구조에서 다음 개념이 중요합니다.

  • MSB(Most Significant Bit): 최상위 비트 (가장 왼쪽 비트, 값에 가장 큰 영향을 미침)
  • LSB(Least Significant Bit): 최하위 비트 (가장 오른쪽 비트, 값에 가장 적은 영향을 미침)

3. 디지털 정보의 전압 레벨

디지털 시스템에서는 정보를 전압의 높낮이 로 표현합니다.

  • 0과 1, 두 가지 상태만 존재
  • 0 = 낮은 전압(Low), 1 = 높은 전압(High)
  • 전자 회로에서 이진 데이터를 표현하는 기본 방식
  • 디지털 정보의 전압레벨

2. 전자 소자의 스위칭 동작과 논리 표현

디지털 논리는 트랜지스터 같은 전자 소자의 스위칭 동작을 기반으로 동작합니다.

1. 스위칭 동작에 따른 논리 표현

(1) 다이오드(Diode) 스위칭

  • Turn-On (전도) → 전류가 흐름 (1)
  • Turn-Off (차단) → 전류가 흐르지 않음 (0)

(2) BJT(Bipolar Junction Transistor) 스위칭

  • 차단(Switch OFF, 0) / 포화(Switch ON, 1) 상태를 활용

(3) NMOS 트랜지스터 스위칭

  • 게이트(Gate)에 전압을 인가하면 전류가 흐름 (1)
  • 게이트 전압이 없으면 전류가 차단됨 (0)

2. 정논리(Positive Logic)와 부논리(Negative Logic)

디지털 시스템에서는 논리를 표현하는 방식이 두 가지 있습니다.

  • 정논리(Positive Logic):
    • 높은 전압(High) = 1, 낮은 전압(Low) = 0
    • 일반적으로 가장 많이 사용
  • 부논리(Negative Logic):
    • 낮은 전압(Low) = 1, 높은 전압(High) = 0
    • 특수한 경우에 사용됨

3. 논리 펄스 파형

1. 이상적인 펄스 파형

이상적인 주기적인 펄스 신호는 두 개의 에지(Edge) 로 구성됩니다.

  • 리딩 에지(Leading Edge) = 상승 에지(Rising Edge)
    • 신호가 0 → 1로 변화하는 순간
  • 트레일링 에지(Trailing Edge) = 하강 에지(Falling Edge)
    • 신호가 1 → 0으로 변화하는 순간

2. 실제의 펄스 파형

이상적인 신호와 달리 실제 회로에서는 신호가 완벽하게 순간적으로 변하지 않고, 변화하는 시간이 존재합니다.

  • 상승 시간(Rise Time, tr): 신호가 0에서 1로 변할 때 걸리는 시간
  • 하강 시간(Fall Time, tf): 신호가 1에서 0으로 변할 때 걸리는 시간
  • 펄스 폭(Pulse Width, tw): 신호가 1 상태를 유지하는 시간

실제의 펄스 파


3. 주파수, 주기, 듀티 사이클

(1) 주파수(Frequency, f)

  • 주기적인 신호가 1초 동안 몇 번 반복되는지를 나타냄
  • 단위: 헤르츠(Hz, Hertz)

(2) 주기(Period, T)

  • 한 번의 주기가 반복되는 데 걸리는 시간(초, s)

(3) 주파수와 주기의 관계

  • f = 1/T
    • 주파수(f)가 높으면 주기(T)는 짧아짐 (빠르게 변화)
    • 주파수(f)가 낮으면 주기(T)는 길어짐 (느리게 변화)

(4) 듀티 사이클(Duty Cycle)

  • 펄스 신호가 "1"을 유지하는 비율(%)
  • Duty Cycle (%) = (펄스폭 / 주기) × 100
    • 예: 50% → 절반의 시간 동안 "1", 나머지 절반은 "0"
  • 듀티 사이클


요약

1. 디지털 정보의 표현 단위

  • 1 bit = 0 또는 1을 표현하는 최소 단위
  • 1 byte = 8 bit, 1 nibble = 4 bit
  • MSB(최상위 비트), LSB(최하위 비트)

2. 디지털 정보의 전압 레벨

  • 2진수(Binary System) 사용
  • 0과 1로 정보를 표현 (Low = 0, High = 1)

3. 전자 소자의 스위칭 동작

  • 다이오드(Diode), BJT, NMOS 트랜지스터를 이용한 스위칭 동작
  • 디지털 회로에서 0과 1의 상태를 만들고 논리 연산 수행

4. 정논리 vs 부논리

  • 정논리(Positive Logic): High = 1, Low = 0 (일반적으로 사용)
  • 부논리(Negative Logic): High = 0, Low = 1

5. 논리 펄스 파형

  • 이상적인 펄스는 상승 에지(Rising Edge)와 하강 에지(Falling Edge)로 구성
  • 실제 신호는 상승 시간(tr), 하강 시간(tf), 펄스 폭(tw)이 존재

6. 주파수, 주기, 듀티 사이클

  • 주파수(f) = 1 / 주기(T)
  • Duty Cycle = (펄스폭 / 주기) × 100%

1. 디지털 신호와 아날로그 신호

1. 신호란?

신호란 동작, 그림, 소리와 같이 인간이 취하거나 활용할 수 있는 정보를 부호화하거나 전달하는 수단적 개념입니다. 신호는 시간에 대한 연속성 여부에 따라 아날로그 신호디지털 신호로 구분됩니다.

2. 아날로그 신호 vs 디지털 신호

(1) 아날로그 신호

  • 연속적인 물리량으로 표현되는 신호
  • 예시: 사람의 음성, 물의 흐름, 온도 및 습도의 변화, 바람의 움직임 등
  • 시간에 따라 진폭이 연속적으로 변함
  • Continuous Time, Continuous Amplitude 신호

(2) 디지털 신호

  • 아날로그 신호를 인위적으로 가공하여 만든 신호
  • 시간적으로 불연속적인 신호
  • 이산 시간(Discrete Time), 이산 진폭(Discrete Amplitude) 신호
  • 예시: 컴퓨터 데이터(숫자, 문자), 디지털 오디오 등

아날로그 신호 , 디지털 신호

3. 일반적인 디지털 신호의 특징

디지털 신호는 서로 명확하게 구별되는 두 개 이상의 레벨을 가지며, 일반적으로 2진수(0과 1) 형태로 표현됩니다.

디지털 신호

 


2. 디지털 시스템과 아날로그 시스템

1. 디지털 시스템과 아날로그 시스템의 차이

(1) 디지털 시스템

  • 이산적인 정보를 가공 및 처리하여 최종적으로 원하는 정보를 출력하는 장치
  • 예시: 컴퓨터, 스마트폰, 디지털 카메라

(2) 아날로그 시스템

  • 연속적인 정보를 입력받아 처리하고 출력하는 시스템
  • 예시: 아날로그 라디오, 증폭기

2. 디지털 시스템의 주요 특징

디지털 시스템은 다음과 같은 장점을 가집니다.

  • 잡음에 강함: 내·외부 잡음으로부터 신호의 정확성이 쉽게 영향을 받지 않음
  • 설계 및 수정 용이: 디지털 회로의 변경 및 개선이 비교적 쉬움
  • 프로그래밍 가능: 소프트웨어를 활용하여 기능을 유연하게 제어 가능
  • 정확성과 정밀도 향상: 아날로그 시스템보다 높은 정밀도의 정보 처리가 가능
  • 소형화 및 저비용화 가능: 대량 생산이 용이하며 시스템을 보다 작고 경제적으로 만들 수 있음

3. 아날로그-디지털 변환 (A/D 변환)과 디지털-아날로그 변환 (D/A 변환)

디지털과 아날로그 시스템 간에는 변환 과정이 필요하며, 대표적인 변환 기술은 다음과 같습니다.

  • A/D 변환(Analog to Digital Converting, ADC)
    • 아날로그 신호를 디지털 신호로 변환
    • 음성 인식, 디지털 오디오 등에서 활용
  • D/A 변환(Digital to Analog Converting, DAC)
    • 디지털 신호를 아날로그 신호로 변환
    • 스피커, 디지털 TV 등에서 사용

3. 디지털 신호 변환 기술 (PCM)

PCM(Pulse Code Modulation)이란?

PCM(펄스 코드 변조)은 아날로그 신호를 디지털 신호로 변환하는 대표적인 방법입니다.
이 과정은 표본화(Sampling) → 양자화(Quantization) → 부호화(Coding) 3단계로 진행됩니다.

1. 표본화(Sampling)

  • 샤논(Shannon)의 표본화 정리: 원본 신호의 최고 주파수의 2배 이상의 빈도로 샘플링하면 원래 신호를 재구성할 수 있음
  • 예시: 인간의 음성을 디지털화할 때, 4kHz의 주파수를 가진 신호는 최소 8kHz(2×4kHz) 이상으로 샘플링해야 함

2. 양자화(Quantization)

  • 샘플링된 신호의 진폭을 이산적인 값(디지털 값) 으로 변환
  • 이 과정에서 양자화 잡음(Quantization Noise) 발생 가능
  • 양자화 단계 수를 늘리면 잡음이 줄어들지만, 데이터 용량이 증가하는 단점 존재

3. 부호화(Coding)

  • 양자화된 값을 2진수(Binary Code)로 변환
  • 일반적인 전화 음성의 경우 8비트로 부호화됨

요약

1. 디지털 신호

  • 이산 시간(Discrete Time), 이산 진폭(Discrete Amplitude) 신호
  • 두 개 이상의 명확한 레벨을 가지는 신호

2. 디지털 시스템의 특징

  • 잡음에 강함
  • 설계 및 수정이 용이
  • 프로그래밍으로 기능 제어 가능
  • 정확성과 정밀도가 높음
  • 소형화 및 저비용화 가능

3. 디지털 신호 변환 기술 (PCM)

  • A/D 변환: 아날로그 신호 → 디지털 신호 (ADC)
  • D/A 변환: 디지털 신호 → 아날로그 신호 (DAC)
  • PCM 변환 과정: 표본화 → 양자화 → 부호화

+ Recent posts