반응형

프로그래밍 기술 604

[계산기 구조] 인터럽트 우선순위(Priority)

인터럽트 우선순위(Priority) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 인터럽트 우선순위를 알아보기로 해요. 인터럽트 우선 순위 전원 공급이 이상 → CPU의 기계적인 오류 → 외부 신호에 의한 인터럽트 → 입출력 전송 요청 및 전송 완료, 전송 오류 → 프로그램 검사 인터럽트 → 슈퍼바이저 호출(SVC 인터럽트) 폴링(Polling) 가장 높은 인터럽트부터 요청 플래그를 검사하여 인터럽트 서브스 루틴을 수행하는 소프트웨적인 방법입니다. 하드웨어를 추가할 필요가 없어 회로가 간단합니다. 인터럽트를 조사하는 비용이 들어 반응시간이 느립니다. 인터럽트 요청한 장치를 차례대로 검사합니다. 데이지 체인(Daisy Chain) 어디에 인터럽트가 발생하였는지 확인하는 회로를 직렬로 연결하는 하드웨어..

[계산기 구조] 인터럽트(Interrupt)

인터럽트(Interrupt) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 인터럽트를 알아보아요. 인터럽트(Interrupt) 컴퓨터 시스템에 특수한 상태가 발생하여 현재 실행하고 있는 프로그램을 일시 중단하고 특수한 상태를 처리하는 루틴으로 옮겨서 처리한 후 원래 프로그램을 처리하는 현상을 인터럽트라고 말합니다. 인터럽트 종류 전원 공급이 이상 CPU의 기계적인 오류 외부 신호에 의한 인터럽트 발생(스케쥴러 타임 인터럽트, 외부 장치로부터 인터럽트 요청) 입출력 전송 요청 및 전송 완료, 전송 오류 프로그램 검사 인터럽트 발생(Overflow나 Underflow, Divide Zero) 슈퍼바이저 호출(SVC 인터럽트) 호출(사용자가 SVC 명령 호출, 복잡한 입출력 처리, 기억 장치 할당 및 오..

[계산기 구조] 제어 데이터

제어 데이터 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 제어 데이터를 살펴보아요. 제어 데이터 연산자의 종류, 명령의 주소 지정 방식, 연산 결과에 대한 상태 플래그 내용 메이저 상태 사이의 변이를 제어하는 제어 데이터 CPU의 제어점을 제어하는 데 필요한 제어 데이터 명령의 수행 순서를 결정하는 데 필요한 제어 데이터 논리 회로 방식에 의한 제어기(Control Logic Unit) 하드웨어적인 방법으로 제어장치를 구성합니다. 고속 제어를 할 수 있습니다.제어장치에 의해 제어신호를 발생합니다. 속도가 빠르고 회로 구성이 복잡합니다. RISC 구조를 갖는 컴퓨터에서 사용합니다. 마이크로 프로그램 제어기 소프트웨어적인 방법으로 내부 제어 신호를 지정하는 마이크로 명령으로 작성합니다. 마이크로 프로..

[계산기 구조] 3사이클 마이크로 연산 명령

3사이클 마이크로 연산 명령 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 3사이클 마이크로 연산 명령을 살펴보아요. AND 누산기(Accumulator)와 메모리의 내용을 논리곱하여 결과를 누산기에 저장하는 연산 명령 AC ← AC ∧ M[AD] 현재 플래그 레지스터는 F=1, R=0 인 실행 사이클 MBR에는 Fetch 사이클에서 읽어온 명령어가 있는 상태 MAR ← MBR[AD] 메모리 버퍼 레지스터(MBR)의 명령어의 주소를 메모리 주소 레지스터(MAR)에 전송 MBR ← M[MAR] 메모리에서 MAR이 지정한 위치의 값을 MBR에 전송 AC ← AC ∧ MBR 누산기의 값과 MBR의 값을 AND 연산하여 누산기에 전송 ADD 누산기와 메모리의 내용을 더하여 결과를 누산기에 저장하는 연산 명..

[계산기 구조] 마이크로 연산(Micro Operation)

마이크로 연산(Micro Operation) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 마이크로 연산을 알아보아요. 마이크로 명령 형식 수평 마이크로 명령: 마이크로 명령의 한 비트가 한 개의 마이크로 동작에 관한 명령 수직 마이크로 명령: 마이크로 명령어의 코드화된 비트를 해독하는 디코딩 회로를 이용하여 제어 신호를 사용 한 개의 마이크로 명령으로 한 개의 마이크로 동작만 제어할 수 있음 제어 기억장치의 용량을 줄일 수 있습니다. 나노 명령: 낮은 레벨의 나노 메모리에 저장한 마이크로 명령을 말합니다. 마이크로 Cycle Time 마이크로 연산을 수행하는데 걸리는 시간 CPU Clock Time 또는 CPU Cycle Time으로 부르기도 합니다. CPU Clock CPU의 순서 동작을 동기화..

[계산기 구조] 명령어 방식

명령어 방식 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 명령어 방식을 알아보아요. 명령어 방식 명령어는 명령부(OP Code + Mode)와 자료부(주소필드, Operand)로 구성합니다. 이 중에 자료부(Operand 부)에 올 수 있는 개수에 따라 명령어 방식을 구분합니다. 0주소 명령어(0 Address Instruction) 1주소 명령어(1 Address Instruction) 2주소 명령어(2 Address Instruction) 3주소 명령어(3 Address Instruction) 0주소 명령어(0 Address Instruction) OP Code 부만 있고 주소를 지정하는 자료부(Operand 부)가 없는 명령어 모든 연산은 Stack 메모리의 TOP(Stack 포인터)이 가리..

[계산기 구조] 명령어 주소 결정 방식

명령어 주소 결정 방식 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 명령어 주소 결정 방식을 알아보아요. 명령어의 주소 필드를 사용하는 방식에는 직접 모드, 간접모드가 있습니다. 이 외에 묵시적 모드, 즉시적 모드, 계산에 의한 방식이 있습니다. 직접 모드(Direct Mode) 주소 필드(Operand)에 사용할 자료의 주소를 표현하는 방식입니다. 주소 길이는 메모리 크기가 2의 n승일 때 n비트로 제약을 받습니다. 직접 모드(Direct Mode) 간접 모드(Indirect Mode) 주소 필드 주소 필드(Operand)에 사용할 자료가 있는 주소를 저장한 주소를 표현 최소한 주기억 장치를 두 번 이상 접근해야 사용할 자료가 있는 장소에 도달합니다. 주소 필드로 접근할 주소를 표현할 수 없을 ..

[계산기 구조] 연산자(Operation)

연산자(Operation) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 연산자를 알아보아요. AND 연산 특정 비트를 Clear 시킬 때 사용합니다. Masking 연산이라고 부릅니다. 0으로 Clear 시킬 부분을 0으로 Mask 하여 연산합니다. AND, Masking OR 연산 특정 비트를 1로 설정할 때 사용합니다. Selective Set 연산이라고 부릅니다. 1로 설정할 부분을 1로 설정하여 연산합니다. OR, Selective Set XOR 연산 특정 비트를 반전할 때 사용합니다. Compare 연산이라고 부릅니다. 반전할 비트를 1로 설정하여 연산합니다. XOR, Compare NOT 연산 단항 연산으로 모든 비트를 반전합니다. 1의 보수를 구할 때 사용합니다. Complement ..

[계산기 구조] 컴퓨터 명령어(Instruction)

컴퓨터 명령어(Instruction) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 컴퓨터 명령어를 알아보아요. 컴퓨터 명령어(Instruction) 연산종류와 주소 결정 방식, 주소 필드로 구성합니다. 컴퓨터 명령어(Instruction)의 구조 연산 종류(OP Code) 수행할 연산자를 표시하며 Operation Code여서 OP Code라 부릅니다. 함수 연산, 자료 전달 연산, 제어 연산, 입출력 연산으로 나눌 수 있습니다. 함수 연산은 ADD, SUB, MUL, DIV, 산술 쉬프트 등의 산술 연산과 AND, OR, NOT, XOR, 논리 쉬프트, 로테이션 쉬프트, Complement, Clear 등의 논리 연산이 있습니다. 자료 전달 연산에는 Load, Store, Move, Push, ..

[계산기 구조] CPU(Central Processing Unit)

CPU(Central Processing Unit) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 CPU에 관해 알아보아요. CPU(Central Processing Unit) 컴퓨터 시스템의 두뇌 역할을 하는 중앙처리장치입니다. 레지스터, 산술논리유닛(ALU), 제어장치(CU), 버스로 구성합니다. 레지스터(Register) CPU내에서 데이터를 기억하는 메모리 장치입니다. CPU내에서 처리할 명령어나 연산에 사용할 값이나 연산 결과를 일시적으로 기억하는 장치입니다. 메모리 장치중에 가장 빠릅니다. 플리플롭과 래치(Latch)를 병렬로 구성합니다. PC(Program Counter): 다음 번에 실행할 명령어 주소를 기억하는 레지스터 IR(Instruction Register): 현재 실행 중인 ..

반응형