본문 바로가기
정보처리기사/정보처리기사 필기

정처기 필기_전자계산기 구조

by sjs_2215 2019. 8. 1.

참고 해설강의:

https://www.youtube.com/watch?v=Oi4PMHIUR8s



여러개의 LAB(logic array block)과 연결선인 PIA(programmable interconnection array)로 구성되며, 빠른 성능이나 정확한 타이밍의 예측이 필요하는 곳에 사용되는 것은? CPLD('Complex' Programmable Logic Device)


핀(pin) = 입력/출력 선(라인 개수)


비교(compare)를 위한 논리연산은?

서로 다름을 확인하려고 비교한다.

XOR 연산-두 개가 같으면 0, 두 개가 다르면 1


selective-set 연산이란?

-> OR 연산자로 풀면 됨

둘 중 하나라도 1이면 1


AND 연산자(MASK 연산이라고도함)-두개 다 1이어야 1

NOT 연산자-입력된 것 반대로 출력


부동 소수점 (2진 실수 표현 방법) (=FLOATING POINT)

세가지 영역

부호 영역: 플러스는 +0, 마이너스는 -1로 표현, 지수부, 가수부(소수부)

부동 소수점인 두 수의 나눗셈을 위한 순서는?

: 0의 여부 제일 먼저 확인, 부호를 결정한다, 피젯수를 위치 조정, 지수의 뺄셈을 한다

: 제일 마지막에 가수의 나눗셈을 한다.


클럭 주기가 80ns, 데이터 버스의 폭이 8byte, 전송할 수 있는 데이터 양(전송 속도)은? 단위 통일 문제

선택지에 있는 단위로 통일해야함

bit-> byte-> mbyte(백만)

1mbyte = 10의 6승 byte

1ns = 10의 -9승 sec

8byte->

80ns = 80 * 10의 -9승 sec = 8 * 10의 -8승 sec

8byte / 8 * 10의 -8승 sec

= 1 byte / 10의 -8승 sec

= 10의 8승 byte-sec

= 100 * mbyte-sec


I/O operation(입출력)과 관계가 있는것

: channel, handshaking, interrupt

emulation은 계산기. 입출력과 관계없음


명령을 처리하는 과정

(cpu가 명령어를 가지고 오는 과정을 제일 먼저 해야함) 인스터럭션 페치(fetch)-> 명령어 해독.인스트럭션 디코딩 -> 오퍼랜드를 데리고옴. 오퍼랜드 페치->실행->인터럽트 조사


명령을 수행하기 위해 cpu내의 레지스터와 플래그의 상태 변환을 일으키는 작업은 micro operation


세트= 1 만든다 = selective-set 연산과 같음 = or 연산

16진수 80H가 들어있는 8비트 레지스터에서 0,2,4번째 비트를 세트하려면 얼마의 값을 or 연산하여야 하는가?

8비트 레지스터 -> 2진수를 뜻함

일단, 80H를 2진수로 변환해야함

8 0 을 2진수로 바꾸면: 1000 0000

이 수를 0,2,4번째(뒤에서부터 세야함)가 or 연산해서, 1이 됐으면 좋겠다.

-> 1000 0000과 0001 0101가 or 연산하면 됨.

결국 0001 0101을 다시 16진수로 바꾸면 답.

1 5 h


어셈블리 언어를 번역하는 프로그램 -> 어셈블러

다른 컴퓨터를 이용하여 어셈블리 언어의 프로그램을 이식(porting)하고자 하는 마이크로프로세서의 기계어로 번역하는 프로그램은?

->크로스 어셈블러 (이식. 상호간의 이식 작업을 하는)


2의 보수=2진정수. 고정소수점

2의 보수 표현범위(n은 bit수)

(마이너스 2의 n-1승) 부터 ~ (플러스 2의 n-1 승 -1) 까지


1의 보수법 표현범위, 부호화 절대치법

(마이너스 2의 n-1승 +1) 부터 ~ (플러스 2의 n-1 승 -1) 까지



2개 이상의 프로그램을 주기억장치에 기억시키고 cpu를 번갈아 사용하면서 처리하여 컴퓨터 시스템 자원 활용을 극대화하기 위한 프로그래밍 기법 = 멀티 프로그래밍


동기 고정식 마이크로오퍼레이션(mo)

= mo들이 여러개가 있는데 시간 분배 고정되어 있음

: 제어장치의 구현이 간단하다

: 중앙처리장치의 시간 이용이 비효율적이다.

: 여러 종류의 mo 수행시 cpu 사이클 타임이 실제적인 오퍼레이션 시간보다 길다

: mo이 끝나고 다음 오퍼레이션이 수행될때까지 시간지연이 있게 되어 cpu 처리 속도가 느려진다 (x) (시간 지연 없음)


입출력 제어장치의 종류

: DMA, 채널, 입출력 프로세서

데이터 버스 (x)


인터럽트 벡터

: 인터럽트를 발생한 장치가 프로세서에게 분기할 곳의 정보를 제공

: 인터럽트 서비스 루틴으로 분기하는 명령들로 구성

필수적인 것: 분기번지


명령어 처리를 위한 마이크로 사이클 = CPU 주상태

fetch인출, indirect간접, execute실행, Interrupt인터럽트

메모리(x)


주소 명령어 형식 0주소, 1주소, 2주소, 3주소 -> 오퍼랜드 개수를 뜻함

0주소 명령어 형식은 push/pop 연산을 사용 (stack 생각하기)

1주소 명령어 형식은 누산기를 사용

2주소 명령어 형식은 move 명령이 필요하다. (add r1 r2 가 있을때 r1과 r2를 처리하고 move해서 옮긴다)

2주소 명령어 형식은 내용이 연산 결과 저장으로 소멸된다

3주소 명령어 형식은 연산의 결과를 operand1에 기록한다. (add r3 r1 r2 가 있을때 r1과 r2를 처리하고 r3에 기록)


상대 주소모드를 사용하는 컴퓨터에서 분기 명령어가 저장된 기억장치 주소가 256AH일때, 명령어에 지정된 변위 값이 -75H인 경우 분기되는 주소의 위치는? (단, 분기 명령어의 길이는 3바이트이다.)

A 10, B 11, C 12, D 13, E 14, F 15

: 256H + 3 해주면 PC 값을 구한 것임 여기에 오퍼랜드(변위값)을 계산 -75H 해주면 됨

: 256A + 3은 (A가 10이므로, 10+3=13, 13은 D) 256D 가 됨

: 256D - 75는 (D 13에서 5빼면 8) (25에서 7빼는데 10을 가져오지 않고, 16을 가져온다는점 유의) 24F8H


- 플립플롭 flip flop

=전원이 공급되고 있는 한, 상태의 변화를 위한 외부 신호가 발생할 때까지 현재의 상태를 그대로 유지하는 순서논리회로로서 기억 기능을 가지고 있다고 할 수 있다.


자기 테이프

: 오로지 순차처리만 가능

: 가격이 저렴, 용량이 커서 대용량 저장 매체이며 자료의 백업용으로 많이 사용한다.

블로킹

=1개 이상의 논리적 레코드를 묶어서 테이프에 기록하는 방식

비블로킹: irg-논리 레코드-irg-논리 레코드-irg-논리 레코드-irg-논리 레코드 ~

블로킹: irg-논리 레코드-논리 레코드-논리레코드-irg-논리 레코드-논리레코드-논리레코드 ~

블로킹 장점

(블로킹 안했을때에 비해) irg 수가 줄어든다

기억 공간의 낭비가 줄어든다.

access time이 감소한다.

입/출력 횟수가 감소한다.


인터럽트 발생 요인

정전 발생 시, 프로그램 차공, 불법적인 인스트럭션 수행

부프로그램 호출(x) (정상적인 수행임)


중앙 연산 처리장치의 구성 요소

제어장치, 연산장치, 레지스터(IR, MAR,PC), 버스

MODEM (x) (통신에 사용되는 신호변환장치임)


컴퓨터 기억장치 주소설계시 고려사항

: 주소를 효율적이게 나타낸다

: 사용자에게 편리하도록 해야 한다.

: 주소공간과 기억공간독립시킬 수 있어야 한다.

: 주소 표시는 2진법으로 표기해야 한다.


조합논리회로

: 디코더, 인코더, 멀티플렛거, 다수결회로, 디멀티플렉서, 비교기,

반가산기, 전가산기, 병렬가산기, 반감산기, 전감산기 등

순서논리회로

: 레지스터, 버스, cpu, 플립플롭, 카운터, ram 등


입출력 제어 방식

programmed i/o

interrupt i/o

dma

channel에 의한 io


Comments