컴퓨터 구조

1. 연산기 개념1) 연산기란?• 데이터를 처리하고 연산하는 장치• 주로 산술, 논리, 비교, 이동 등의 연산을 수행하여 프로그램의 실행과 데이터 처리를 담당• 일반적으로 중앙 처리 장치(Central Processing Unit, CPU)의 핵심 구성 요소 중 하나로 작동• CPU는 명령어를 해독하고 실행하며, 이 과정에서 연산기는 데이터를 읽어들여 필요한 연산을 수행 다양한 종류의 연산 수행• 산술 연산: 숫자와 관련된 연산(덧셈, 뺄셈, 곱셈, 나눗셈 등)• 논리 연산: 참과 거짓에 대한 논리적 연산(AND, OR, NOT 등)• 비교 연산: 두 값이 같은지, 크기를 비교하는지 등을 판단하는 연산 레지스터(Register)• 매우 빠른 속도로 데이터에 접근할 수 있는 저장 공간• 연산기는 레지스터에..
1. 인터럽트 개념1) 인터럽트(Interrupt)• 하드웨어 또는 소프트웨어에서 발생하는 이벤트• 현재 실행 중인 프로그램을 일시적으로 중단하고 특정 코드를 실행하는 메커니즘 2) 인터럽트 구분• 하드웨어 인터럽트: 키보드 입력, 마우스 클릭, 디스크 작업 완료 등- CPU가 해당 장치의 상태를 확인 후, 인터럽트 서비스 루틴(ISR) 실행 • 소프트웨어 인터럽트: 실행 중 예외 상황이나 특정 조건에서 발생- 시스템 호출(System Call)로 구현- 예: 0으로 나누기 오류, 메모리 접근 오류 등 3) 인터럽트 종류내부 인터럽트•  하드웨어 고장, 실행 오류, 권한 위배 등 외부 인터럽트• 하드웨어 인터럽트: 타이머, 입출력 장치 등• 소프트웨어 인터럽트: 시스템 콜, 예외 처리• 외부 인터럽트: ..
1. 중앙처리장치 구조1) 중앙처리장치 개요• 중앙처리장치(CPU)는 인간의 두뇌에 해당하는 부분으로, 주기억장치에서 프로그램 명령어와 데이터를 읽어와 처리하고 명령어의 수행 순서를 제어한다. 2) 중앙처리장치 구성요소제어장치 기능• 순서 제어 (Sequence Control): 명령어를 차례대로 실행• 동작 제어 (Operation Control): 각 명령어 실행을 위한 제어 신호 생성 제어장치 입출력(1) 입력:• 명령어 레지스터(IR): 현재 실행 중인 명령어 저장• 상태 레지스터(SR): 조건 분기 처리를 위한 조건 판단 (2) 출력:• 타이밍 신호: 명령어 실행을 위한 타이밍 신호 생성• 제어 신호: 컴퓨터의 구성 요소를 제어 레지스터• 중앙처리장치 내에서 기억장치 주소와 데이터를 임시 저장•..
1. 시스템 버스의 구성1) 시스템 버스• 컴퓨터 시스템의 주요 부품 간 데이터 및 제어 신호를 전달하는 통신 경로• 주요 구성 요소: 주소 버스(Address Bus), 제어 버스(Control Bus), 데이터 버스(Data Bus) 2) 시스템 버스의 종류• 주소 버스(Address Bus): 기억장치나 입출력 장치의 주소를 지정하며, 기억장치 용량과 관련됨• 데이터 버스(Data Bus): 데이터를 전달하는 경로로, 일반적으로 8비트 단위의 배수로 구성됨• 데이터 버스의 비트 수 = 레지스터 크기 = 단어 크기 (Word Size)• 제어 버스(Control Bus): 주소 버스와 데이터 버스를 제외한 나머지 제어 신호를 포함하며, 각각 고유한 기능을 수행함 3) 적재(Load)와 저장(Store..
1. 기계어 프로그램• 기계어 프로그램은 컴퓨터 하드웨어와 직접 상호작용하는 가장 낮은 수준의 언어로, 0과 1로 이루어진 이진 코드로 표현된다. 기계어의 특징• 프로세서의 동작을 직접 제어하며 데이터를 처리함• 컴퓨터 아키텍처에 따라 다양한 형식으로 표현됨• 특정 프로세서에 최적화된 명령어 세트를 사용 기계어의 장단점• 장점: 시스템을 직접 접근 및 제어 가능• 단점:- 사람이 이해하고 작성하기 어려움- 오류 찾기가 어려움- 낮은 이식성- 일반적으로 고급 언어로 작성된 프로그램을 컴파일러나 인터프리터를 통해 기계어로 변환하여 실행 기계어 프로그램의 특징• 컴퓨터 시스템의 성능을 극대화 가능• 하드웨어 제어 및 최적화가 필요한 낮은 수준의 작업에 적합   2. 프로그램 내장형 컴퓨터• 프로그램 내장형 컴..
1. 레지스터의 종류1) 일반적인 분류• 누산기(Accumulator): 산술 및 논리 연산에 사용되며, 연산 결과를 일시적으로 저장.• 범용 레지스터(General Purpose Register): 연산, 주소 지정, 데이터 저장 등 다양한 용도로 사용.• 인덱스 레지스터(Index Register): 배열 요소 접근 및 인덱싱 연산에 사용.• 스택 포인터(Stack Pointer): 함수 호출 및 임시 데이터 저장을 위한 스택 관리.• 프로그램 카운터(Program Counter): 다음 실행할 명령어의 주소를 저장.• 명령어 레지스터(Instruction Register): 현재 실행 중인 명령어를 저장.• 상태 레지스터(Status Register): CPU 상태 및 연산 결과 정보 저장.• 벡터..
1. 플립플롭1) 플립플롭의 이해플립플롭(Flip-Flop)과 래치(Latch)• 비트 정보를 저장할 수 있는 회로로 순차 회로의 기본 요소• 조합 논리 회로와 달리 이전 상태를 유지하여 데이터 저장 가능플립플롭의 럭 신호• 수정 발진기 등을 이용하여 생성 2) 플립플롭과 래치의 차이점동작 원리• 플립플롭: 동기식 저장 장치로 럭 신호에 의해 제어되며, 상승/하강 에지에서 입력이 저장됨• 래치: 비동기식 저장 장치로 럭 신호와 무관하게 입력이 변경되면 즉시 저장됨 저장 용량• 플립플롭: 비트 데이터를 저장하며, 여러 개를 결합하여 더 큰 용량 가능• 래치: 비트 데이터를 저장하며, 직렬 연결하여 더 큰 용량 구현 가능 럭 사용• 플립플롭: 럭 신호의 변화에 따라 저장/갱신됨• 래치: 럭 신호와 독립적으로..
1. 디코더1) 디코더(Decoder)란?• 인코딩된 벡터를 입력으로 받아 출력 시퀀스를 생성하는 모델• 주어진 이전의 출력에 기반하여 다음 출력을 예측함• 입력 비트를 진 코드로 표현하여 최대 n개의 서로 다른 정수로 변환하는 조합회로• 2진수를 10진수로 변환하는 과정을 디코딩(decoding)이라고 함• n개의 이진 정보를 최대 2^n개의 출력으로 변환하는 장치• 예) 2x4 디코더는 2개의 입력 신호를 받아 4개의 출력을 가짐 2) 기타 디코더 종류• 3x8 디코더: 3개의 입력 신호를 받아 8개의 출력을 생성함 • BCD 디코더: 4개의 입력을 받아 10진수로 변환- 무정의 조건 적용 (Don’t care: 1010~1111의 입력이 없음)- 카르노 맵을 이용하여 입력 변수를 간소화 가능  2...
JIN-JJS
'컴퓨터 구조' 태그의 글 목록