[10-03-28] 정보처리 필기 기출문제 해설 1번 ~ 30번
빨간 글자 = 정답(밑줄)
파란 글자 = 중요 문제, 많이 출제돼요
초록 글자 = 문제 풀이 팁
회색 글자 = 답만 암기, 중요하지 않아요
[1과목 : 전자 계산기 일반]
1. 입출력 채널의 기능으로 적합하지 않은 것은?
가. 입출력 명령을 해독한다.
나. 각 입출력 장치의 명령 실행을 지시한다.
다. 지시된 명령의 실행 상황을 제어한다.
라. 많은 입출력 장치를 한 번에 종속적으로 동작시킨다.
채널은 CPU를 대신하여 입출력을 제어하는 처리장치입니다.
많은 입출력 장치를 멀티플렉서 채널로 동시에 제어를 처리할 수 있습니다.
문제 지문에서 말하는 한 번에 종속적으로 동작이아닌 각각의 입출력을 제어 할 수 있습니다.
※채널 문제중에서 상당히 어렵게 출제되었습니다. 답만 암기하시고 넘어가셔도 됩니다.
<채널(Channel)>
- CPU를 대신하여 주기억 장치와 입출력 장치 사이에서 입출력을 제어하는 처리장치로 입출력전용 프로세서라 합니다.
- CPU와 독립적으로 동작하여 입출력을 완료하여 실제 CPU의 부담을 줄여줌으로 시스템의 속도를 향상시켜 줍니다.
↘<채널 종류>
- 셀렉터채널(Selector) : 고속의 입출력 장치 제어를 하며 1개의 입출력 장치와의 사이에서 데이터를 주고 받을 수 있는 채널로 멀티플렉서(다중, 복수)와는 반대되는 개념입니다.
- 멀티플렉서채널(Multiplexer) : 저속의 입출력장치 제어를 하며 컴퓨터와 복수의 주변 장치에서 동시에 데이터를 주고 받을 수 있는 채널입니다.
- 블록 멀티플렉서 채널(Block Multiplexer) : 셀렉터와 멀티플렉서의 혼합된 기능
2. 연속되는 2개의 숫자를 표현한 코드에서 한 개의 비트를 변경하면 새로운 코드가 되기 때문에 아날로그-디지털 변환, 데이터 전송 등에 주로 사용되는 코드는?
가. EBCDIC Code
나. Hamming Code
다. ASCII Code
라. Gray Code
아날로그/디지털 변환(A/D 변환)에 사용되는 코드는 그레이 코드입니다.
<그레이코드(Gray Code)>
- 가장 대표적인 비가중치(자리값이 없는)코드로 인접 코드 간 오직 한자리만 변화하게(XOR 연산) 만들어진 코드입니다.
- 1bit씩만 빠르게 변하기에 입출력 장치, A/D(아날로그/디지털)변환기, 등에서 숫자를 표현할때 사용되는 코드입니다.
- 1bit씩 변화시켜 수치를 증감 하기에 하드웨어 적인 오류가 적은 점이 있습니다.
<EBCDIC>
- 확장된 BCD 코드로 대형 컴퓨터에서 사용합니다. (256가지 문자 표현)
※ ebcdic의 zone bit가 4bit라는 것이 많이 출제 되었습니다.
<해밍부호(해밍 코드(Hamming Code)>
- 수신 측에서 오류가 발생한 비트를 검출하고 이후 직접 수정하는 방식이며 오류 검출과 스스로 수정이 가능한 ‘자기 정정 부호’라고 합니다.
- 1bit 오류만 수정이 가능합니다.
- 정보 비트이외에 잉여비트가 많이 필요합니다.
<ASCII 코드>
- 미국 표준국에서 개발되어 7bit 문자 체제로 인터넷에서 주로 사용됩니다. ( 128가지 문자 표현)
※각각의 코드는 시험에 자주 출제됩니다. 기억해 두시면 좋아요
3. 1비트(bit)를 기억할 수 있는 능력을 가진 기억의 최소 단위로 클록이 있는 순서회로에 기억된 기억 소자는?
가. 플립플롭(Flip-Flop)
나. 전가산기(Full Adder)
다. 반가산기(Half Adder)
라. 부호기(Encoder)
1bit 기억으로 가장 빠른 기억 장치는 '플립 플롭'입니다.
<플립플롭(Flip-Flop)>
- 전원이 끊기기 전이나 상태 변화을 위한 신호가 발생전까지 현재의 상태를 그대로 유지하는 논리회로로 1bit를 기억하는 기억 소자입니다.
- 종류로는 D , T , RS, JK 4가지가 있습니다.
<전가산기>
- 전가산기의 경우 2개의 반가산기와 1개의 OR회로로 구성되어 있습니다.
- 전가산기의 경우 반가산기와 다르게 입력이 3개 이고 출력이 2개입니다.
- 구별짓는 방법입니다.

<반가산기>


- 1개의 XOR(합계 : Sum) 회로와 1개의 AND(자리올림 : Carry) 회로로 구성되어 있으며 2개의 입력값과 2개의 출력값을 갖고 갖고 있습니다.
- S의 겨우 SUM으로 합계를 나타내는 값이며 C의 경우 Carry로 자리 올림값을 나타냅니다.
- 2개의 입력과 결과가 S,C 2개라면 반가산기라고 암기해도 됩니다
- 반가산기의 경우 시험에서 너무나도 많이 출제되는 부분입니다 꼭 암기하시길 바랍니다.
<부호기(Encoder)>
- 2^n 개의 신호를 입력받아 n개의 신호로 출력하는 장치로 특정 값을 여러 자리인 2진수로 변환합니다.
- 특정 장치로부터 보내오는 신호를 여러 개의 2진 신호로 바꾸어 변환시켜 줍니다.(반대는 디코더 입니다.)
- 해독된 명령에 따라 각 장치로 보낼 제어신호를 생성합니다.
※플립플롭과 반가산기를 위주로 기억해 두세요 두가지는 시험에 많이 출제됩니다.
4. 다음 그림과 같은 논리회로는?
가. Inhibit
나. OR
다. AND
라. Flip-Flop
<Inhibit 회로(금지회로)>
AND 게이트의 모든 입력값이 1일 경우만 1이 출력되는 특징을 사용하는 회로로 여러 입력중 하나의 입력을 NOT을 이용하여 NOT 입력이 있을시 출력이 나타나지 않는 회로로 시퀀스의 진행을 중단 시킬 시 적용 합니다.
특정 신호(Signal)의 통과를 금지하는 경우와 특정 조작이 실행되는 것을 금지할 때 사용됩니다.
<OR 게이트>

- 논리 합, 합집합, 병렬 연결로 이해하시면 됩니다. 특적 bit를 1(Set = 1로 만드는)Selective-Set 연산에 주로 사용됩니다.
- OR의 경우 입력 값이 모두 0(False = 거짓)일 경우에만 0이 출력 되며 이외에는 1로 출력 됩니다.
- 입력 값이 2개이며 출력이 1개이므로 이항 연산이라 합니다.

<진리표>
OR Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 1 |
<AND 게이트>

- 논리 곱, 교집합, 직렬 연결로 이해하시면 됩니다. 특정 비트를 Clear(0으로 만드는)하는 MASK 연산에 사용됩니다.
- AND의 경우 입력 값이 모두 다 1(True : 참)일 때 결과 값이 1의 결과 값이 출력되는 게이트입니다.
- 입력에 2개의 값이 필요하며 출력은 1개의 값이 출력됩니다. 이러한 것을 이항 연산(항이 두 개)이라 합니다.
- 반가산기에서는 자리올림(Carry)값을 나타냅니다.

<진리표>
AND Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 0 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 1 |
<플립플롭(Flip-Flop)>
- 전원이 끊기기 전이나 상태 변화을 위한 신호가 발생전까지 현재의 상태를 그대로 유지하는 논리회로로 1bit를 기억하는 기억 소자입니다.
- 종류로는 D , T , RS, JK 4가지가 있습니다.
※Inhibit 회로의 경우 자주 출제되지 않고 그림을 가지고 찾기만 하면 되기에 답만 암기하시는 것을 추천드려요
5. 연산의 중심이 되는 레지스터(Register)는?
가. General Register
나. Address Register
다. Accumulator
라. Flip-Flop
연산 장치중 누산기가 연산의 중심이 됩니다.
<누산기(Accumulator) = AC , ACC>
- 산술 연산과 논리 연산 동작을 수행한 후 결과를 축적하는 레지스터입니다.
- 산술 연산 또는 논리 연산의 결과를 일시적으로 기억하는 장치입니다.
- 대표적인 연산 장치로 1주소 명령어를 처리합니다.
<범용 레지스터(General Register)>
- 범용 레지스터로 명령로 중앙처리장치(CPU)안에 있는 기억장치로 명령의 지정에 의하여 여러 가지 기능을 맡도록 구성되어있는 레지스터입니다.
<어드레스레지스터(주소레지스터 : Address register)>
- 기억장치에 명령 데이터 등을 저장하고 필요시 이를 읽어내어 사용하는 장치에서 이들을 입,출력시키기 위한 기억장치의 번지를 기억하는 레지스터입니다.
<플립플롭(Flip-Flop)>
- 전원이 끊기기 전이나 상태 변화을 위한 신호가 발생전까지 현재의 상태를 그대로 유지하는 논리회로로 1bit를 기억하는 기억 소자입니다.
- 종류로는 D , T , RS, JK 4가지가 있습니다.
※누산기와 플립플롭 두가지는 잘 기억해두세요. 범용과 주소레지스터는 주로 문제의 보기로만 출제됩니다.
6. 순차적인 주소지정 등에 유리하며, 주소지정에 2개의 레지스터가 사용되는 방식은?
가. 직접 Addressing
나. 간접 Addressing
다. 상대 Addressing
라. 색인 Addressing
<색인 주소지정(Index Addressing)>
- 명령어 주소 + Index Register 를 계산하여 유효 주소를 계산
- 배열을 인덱싱 하기에 순차적으로 처리가 가능합니다.
※정보가 워낙 없어서 짧게만 정리하겠습니다.
<직접 주소(Direct Adress)>
- 명령어의 주소부 Operand에 있는 데이터의 값이 실제 주소를 나타내며 주소부가 실제 주소를 나타내므로 다시 기억장치를 참조 할 필요 없으므로 이것을 직접 주소라 합니다. 주소 길이에 제한을 받습니다.
<간접주소(Indirect Address)>
- 명령어의 주소부(Operand)의 값이 실제 데이터의 주소를 가진 번지 주소를 가지고 있는 방식으로 최소 2회 이상 기억 장치를 접근해야 목표 데이터를 접근할 수 있습니다. 속도는 느리지만 긴 주소를 표현할때 적합합니다.
<상대 주소(Relative Address)>
- 상대 번지 : 유효 주소를 계산하기 위해 특정 레지스터 내용에 명령어 주소값을 더하는 방식 (명령어의 주소 + Program Counter(PC) 를 계산하여 유효 주소를 계산)
※주소지정 문제에서 어렵게 출제된 내용으로 답만 암기하시고 넘어가세요
7. 다음 중 연산자의 기본 기능에 속하지 않는 것은?
가. 전달 기능
나. 제어 기능
다. 데이터 검색 기능
라. 입출력 기능
데이터 검색기능은 연산자에는 해당되지 않습니다.
명령어는 기본적으로 3가지 구조로 이루어 져 있습니다.
명령어 구조 | OP-code (명령부,연산자) | Mod(주소지정) | Operand(주소부) |
OP-code : 실제 명령이 있는 곳으로 입출력, 주소 지정, 제어 , 연산, 등의 기능을 가지고 있습니다.
MOD : 주소 지정부분으로 직접 주소지정, 간접주소 지정 등 주소 지정에 관련된 정보를 가지고 있습니다.(보통 명령어 형식에서는 생략하여 이야기 합니다.)
Operand : 연산에 사용되는 데이터 혹은 데이터의 주소 등을 저장하고 있습니다
8. 마이크로프로세서의 기능이 아닌 것은?
가. 기억 기능
나. 메모리 관리
다. 산술 및 논리연산
라. 제어 기능
마이크로 프로세서는 CPU라고 이해하셔도 괜찮아요
따라서 제어, 연산, 기억 3가지 기능을 가지고 있습니다.
메모리 관리는 운영체제의 제어프로그램의 기능중 하나인 '데이터 관리'에 해당됩니다.
<마이크로프로세서(Micro Processor)>
- 컴퓨터의 산술논리연산장치(ALU)와 제어장치(CU)를 1개의 작은 실리콘 칩에 모아놓은 처리장치를 말합니다.
- 이러한 대규모 직접회로 칩(IC) 장치로 개인용 컴퓨터나 다른 장치들의 중앙 처리장치로 사용됩니다.
- 클럭주파수 Hz(헤르츠) 단위로 성능을 평가합니다.
<중앙처리장치(CPU : Central Processing Unit)>
- 사람의 두뇌에 해당하는 부분을 컴퓨터에서 모든 제어와 연산을 담당하는 장치입니다.
- CPU는 크게 제어장치(CU), 연산장치(ALU), 기억장치(Register)와 같이 3가지로 구성되어 있습니다.
<운영체제(Operating System) = OS>
- 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 프로그램입니다.
- 처리능력 향상, 응답시간의 단축, 신뢰도 향상, 사용가능도 증대가 목적입니다.
- 제어 프로그램과 처리프로그램으로 구성 되어 있습니다.
↘<제어 프로그램>
- 감시 : 프로그램의 실행과 시스템 전체의 작동 상태를 감시,감독
- 작업 관리 : 업무 처리후 다음 업무 이행을 자동으로 수행하기 위한 준비, 처리에 대한 완료 담당
- 데이터 관리 : 주기억 & 보조기억 장치의 자료 전송, 파일의 조작 및 처리, 입출력 자료와 프로그램간의 논리적 연결 등 시스템에서 취급하는 파일과 데이터를 표준적인 방법으로 처리할 수 있도록 관리
↘ <처리 프로그램>
- 언어 번역 : 원시프로그램을 목적프로그램으로 번역
- 서비스 : 사용자의 편리를 위해 시스템 제공자가 미리 작성하여 사용자에게 제공해주는 것
- 문제 해결 : 특정 업무 및 문제 해결을 위해 사용자가 작성한 프로그램
※한문제를 풀기위해서 알아둬야할 이론이 많지만 해당 이론들을 알고 계시면 풀이할 수 있는 문제가 다양해지기 때문에 힘들더라도 모두 기억해 두시는 것을 추천 드려요
9. 시프트 마이크로 동작의 종류에 해당하지 않는 것은?
가. 논리 시프트(logical shift)
나. 순환 시프트(Circular shift)
다. 산술 시프트(arithmetic shift)
라. 로테이트 시프트(rotate shift)
로테이트 시프트가 아닌 순환 시프트가 맞는 표현입니다.
따라서 정답을 4번으로 발표한것으로 보입니다.
문제에 나와있는 순환 시프트(Ciculate Shift)가 아닌 (Circular Shift)가 맞습니다. 따라서 보기를 조금 수정했습니다.
명확하지 않은 부분이 많은 문제네요
<논리 시프트(Logical shift)>
- 피연산자의 모든 비트를 이동하는 시프트 연산으로 수의 부호 비트를 보존하지 않거나 가수로부터 수의 지수를 식별하지 않습니다.
<산술 시프트(Arithmetic shift)>
- 메모리에 저장된 2진법 숫자를 n비트 만큼 왼쪽이나 오른쪽으로 이동하며 2를 곱하거나 나누는 것과 동일한 결과가 나오게 합니다. 곱셈이나 나눗셈 대신 산술 시프트를 이용할 수 있으며 이는 산술 논리 장치(ALU)를 이용하는 것보다 빠른 장점이 있습니다.
<순환 시프트(circular shift)>
- 2진 값의 자리이동 연산중 하나이며 레지스터나 기억 장소의 한 끝에서 자리 이동으로 떨어져 나간 비트를 다른 끝으로 자리 이동되는 것입니다.
- 논리적 자리 옮김, 비산술 자리 옮김과 같은 의미입니다.
※답만 암기하시기 바랍니다.
10. 기억장치에 액세스(Access)할 필요 없이 스택(stack)을 이용하여 연산을 행하는 명령어 형식은?
가. 0-주소 명령어
나. 1-주소 명령어
다. 2-주소 명령어
라. 3-주소 명령어
스택공간에서 인출(PUSH)와 출력(POP) 2가지로 처리하므로 주소가 필요없는 0주소 입니다.
<스택(Stack)>
- 리스트의 한쪽 끝으로만 자료의 삽입(Push), 삭제(Pop) 작업이 이루어지는 자료 구조로 가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입선출(LIFO : Last In First Out)방식입니다.
- TOP(Stack의 기억공간에 가장 마지막으로 삽입된 자료가 기억된 위치)과 Bottom(Stack의 가장 밑바닥 부분)으로 구성되어 있습니다.
- 부 프로그램 호출시 복귀주소를 저장할 때, 인터럽트 처리후 복귀주소를 저장할 때 사용됩니다.
- 0주소 지정방식의 자료 저장소로 후위 표기법으로 산술식을 연산할 때 사용됩니다.
<0주소 명령어>
- 주소가 필요없이 명령으로만 처리됩니다. 가장 대표적으로 Stack(스택)이 있으며 입력하는 PUSH 와 출력하는 POP 명령 2가지만 있어도 되므로 주소가 필요없다는 것을 알 수 있습니다.
<1주소 명령어>
- 누산기(ACC)가 가장 대표적이며 기존의 결과값에 누적합을 계산하므로 주소부가 1개만 있어도 되는 특징을 갖습니다.
<2주소 명령어>
- 하나의 명령어가 2개의 주소부(Operand)를 가지고 있으며 처리할 데이터를 1,2 주소부에 기억시키고 그 후 처리 결과를 1오퍼랜드에 기억시켜 1오퍼랜드에 있던 표시된 장소는 처리 후 지워지게 되는 명령 방식
<3주소 명령어>
- 2주소 기억 방식과 동일하게 처리는 진행되지만 처리된 결과를 3주소부에 기억 시키므로 기존의 값이 지워지지 않는 특징이 있습니다.
※0주소 스택, 1주소 누산기는 꼭 기억해 두세요 시험에 정말 자주 출제 됩니다.
11. 다음 중 가장 작은 수는?
가. 2진수 101011000
나. 8진수 531
다. 10진수 345
라. 16진수 159
모든 숫자를 2진수로, 혹은 10진수로 변환하여 비교하시는면 됩니다.
문제풀이에서 저는 모든 숫자를 10진수로 변환 하였습니다.
12. 다음 중 절대 주소(absolute address) 표현 방식인 것은?
가. 즉시 주소(immediate address) 지정 방식
나. 직접 주소(direct address) 지정 방식
다. 간접 주소(indirect address) 지정 방식
라. 계산에 의한 주소 지정 방식
기억장치 안의 장소에 할당된 주소로 미리 번지가 고정적으로 매겨져 있는 것을 절대 주소(절대 번지)라 합니다.
직접 주소의 경우 메모리를 각 주소부(Operand)에 맞게 한번 참조하여 데이터를 가져오므로 절대 주소가 됩니다.
즉시 주소의 경우 주소부(Operand)의 값을 그대로 데이터로 사용하므로 메모리를 참조하지않아 절대주소와 관련이 없습니다.
간접 주소의 경우 주소부(Operand)의 값으로 메모리를 참조 후 참조된 데이터의 값으로 다시한번 메모리를 참조하므로 절대 번지가 아닙니다.
계산에 의한 주소 지정 방식의 경우 주소부(Operand)의 값과 레지스터의 값을 더하여 메모리를 참조하므로 절대 번지가 아닙니다.
<직접 주소(Direct Adress)>
- 명령어의 주소부 Operand에 있는 데이터의 값이 실제 주소를 나타내며 주소부가 실제 주소를 나타내므로 다시 기억장치를 참조 할 필요 없으므로 이것을 직접 주소라 합니다. 주소 길이에 제한을 받습니다.
<절대 번지(Absolute Address)>
- 개개의 컴퓨터에 갖추어진 특유의 방식으로 그 기억 장치 안의 장소에 할당된 주소로 미리 번지가 고정적으로 매겨져 있는 것으로 절대 번지라 합니다. (0,1,2,3... 16진수 나오면 무조건 절대 번지라 암기하셔도 됩니다.)
<간접주소(Indirect Address)>
- 명령어의 주소부(Operand)의 값이 실제 데이터의 주소를 가진 번지 주소를 가지고 있는 방식으로 최소 2회 이상 기억 장치를 접근해야 목표 데이터를 접근할 수 있습니다. 속도는 느리지만 긴 주소를 표현할때 적합합니다.
<즉시 주소 지정(즉치 주소 지정)(Immediate Address )>
- 명령어 자체의 주소부(Operand)에 실제 데이터를 가지고 있는 방식으로 기억 장치를 접근(Access)하지 않으므로 속도가 빠릅니다. 명령어 길이에 영향을 받으므로 데이터가 제한적입니다.
<Calculated address>
- 계산에 의한 주소 지정 방식(약식주소 : 계산에 의한 주소 방식은 전체 기억장치의 주소를 사용해야 하는 일반적 주소지정 방식과 다르게 적은 비트를 사용하며 레지스터 지정 필드 없이 묵시적 레지스터를 지정하여 사용하게 합니다. 계산하여 기억 장치에 접근 시킬수 있으므로 주소의 일부분을 생략하여 표현이 가능합니다.)
- 상대(Relative) : 명령어의 주소 + Program Counter(PC) 를 계산하여 유효 주소를 계산
- 베이스 주소 지정 : 명령어 주소 + Base Register 를 계산하여 유효 주소를 계산
- 인덱스 주소 지정 : 명령어 주소 + Index Register 를 계산하여 유효 주소를 계산
※주소지정 문제중 어렵게 출제되었습니다. 주소 지정문제중 응용된 문제이므로 기본적인 이론 내용을 잘 암기하고 계셔야 쉽게 풀 수 있습니다. 이론 정리 내용이 길다 하더라도 잘 읽고 기억해 두세요
13. 기억된 내용을 읽을 수만 있고, 전원이 차단되어도 기억된 내용이 소멸되지 않는 것은?
가. RAM
나. ROM
다. DAM
라. DOM
ROM은 읽기 전용이며 비휘발성 메모리입니다.
※지금의 ROM은 읽기전용보다는 비휘발성의 특징이 더 강조되고 있습니다.
<<ROM(Read Only Memory)>
- 기억된 내용을 읽을 수만 있는 기억장치로 일반적으로 쓰기는 불가합니다.
- 전원이 꺼져도 내용이 지워지지 않는 비휘발성 메모리입니다.
- ROM을 실제로 주기억 장치로 사용하지는 않으며 기본 입출력 시스템(BIOS), 자가진단 프로그램(POST), 같은 변경하지 않는 소프트웨어를 기억하고 있습니다.
- 보통 부팅에 관련된 프로그램을 가지고 있습니다.
<RAM(Random Access Memory)>>
- 주기억장치는 CPU가 직접 접근하여 데이터를 처리할 수 있는 기억장치로, 현재 수행되는 프로그램과 데이터를 저장하고 있습니다. (내부 기억장치라고도 합니다.)
- 일반적으로 ‘주기억장치’ 또는 ‘메모리’라 함은 RAM을 의미합니다.
- RAM은 각 위치를 주소로 표시하며 자료가 있는 주소에 새로운 자료가 들어가면 기존의 데이터는 삭제되고 새로운 데이터가 저장됩니다.
- 전원이 꺼지면 내용이 모두 사라지는 휘발성 메모리입니다.
DAM(Direct Access Method) : 직접 액세스 방식 / 직접 호출 방법
DOM(Design Optimization Model 설계 최적화 모델) / (Document Object Model) 문서 객체 모델
※DAM과 DOM은 기억하실 필요가 없습니다. 이런게 있구나 하고 넘어가시면 됩니다. 문제에서는 단어를 가지고 헷갈리게 게 출제하기 위하여 작성된 보리고 보여집니다.
※ROM과 RAM에 대하여 잘 기억해두세요
14. 이항(binary) 연산에 해당하는 것은?
가. 논리곱 연산
나. 시프트 연산
다. 로테이트 연산
라. 보수 연산
연산에 사용되는 항이 하나만 사용된다면 '단항', 항이 두개가 사용된다면 '이항'이라 합니다.
논리곱은 곱셈을 의미하며 곱셈의 경우 2개 이상의 항이 있어야 연산이 가능합니다.
<AND 게이트>

- 논리 곱, 교집합, 직렬 연결로 이해하시면 됩니다. 특정 비트를 Clear(0으로 만드는)하는 MASK 연산에 사용됩니다.
- AND의 경우 입력 값이 모두 다 1(True : 참)일 때 결과 값이 1의 결과 값이 출력되는 게이트입니다.
- 입력에 2개의 값이 필요하며 출력은 1개의 값이 출력됩니다. 이러한 것을 이항 연산(항이 두 개)이라 합니다.
- 반가산기에서는 자리올림(Carry)값을 나타냅니다.

<진리표>
AND Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 0 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 1 |
<SHIFT>
- LEFT, RIGHT로 1bit씩 자리를 이동시키는 연산으로 데이터의 직렬 전송에 사용됩니다. 삽입되는 값은 무조건 0입니다. (단항 연산입니다.)
<ROTATE>
- SHIFT로 밀려나가는 비트의 값을 반대편 값으로 입력하는 연산으로 문자 위치를 변환시 사용합니다. (단항 연산자입니다.)
<NOT = Complement = 인버터(Inverter)>
- 입력되는 값을 반전합니다. 토글(2가지 상태로 반복적으로 되풀이 하는 것.) 기능, Complement 연산이라고도 하며 값의 부정이라합니다

<진리표>
NOT Gate | |
입력 A | 출력 B |
0 | 1 |
1 | 0 |
15. 입출력 제어 방식 중 DMA(Direct Memory Access) 방식의 설명으로 옳은 것은?
가. 중앙처리장치의 많은 간섭을 받는다.
나. 프로그램에 의한 방법과 인터럽트에 의한 방법을 갖고 있다.
다. 입출력장치와 기억장치 간에 직접 데이터를 주고받는다.
라. 입출력을 제어하는 방식에서 가장 원시적인 방법이다.
Direct (직접) / Memory (기억장치) / Access(접근) 단어 그대로 입출력 장치들이 주기억 장치와 직접적으로 데이터를 주고 받는 기법 입니다. 속도가 느린 입출력장치와 고속의 주기억 장치의 속도차이를 해결하여 입출력의 속도를 향상시킬 수 있습니다.
<DMA(Direct Memory Access)>
- 입. 출력 장치가 직접 주기억장치에 접근하여 데이터를 주고 받는 방식으로 입출력이 CPU를 거치지 않고 수행이 됩니다.
- CPU는 DMA 제어기에게 입.출력 동작을 개시하는 지시후 더 이상 간섭하지 않고 다른 프로그램을 할당하여 수행하게 됩니다.
- 입출력 자료 전송시 CPU를 거치지 않기에 CPU의 부담이 없어 보다 빠른 데이터 전송이 가능해집니다.
- 사이클 스틸(Cycle Steal) 방식을 이용하여 데이터를 전송하며 종료시 인터럽트 신호를 발생시켜 CPU에게 알립니다.
※입출력 속도의 향상 중 H/W(하드웨어)적인 방법은 '채널(Channel)'이고 S/W(소프트웨어)적인 방법은 'DMA'라 생각하시면 됩니다. 보다 쉽게 장치는 채널 방법은 DMA 입니다.
16. 다음 중 로더(Loader)의 기능이 아닌 것은?
가. 할당(allocation)
나. 번역(compiler)
다. 링킹(linking)
라. 재배치(relocation)
컴파일은 프로그램을 페이지 단위로 번역하는 처리프로그램중 하나입니다.
<로더(Loader)>
- 컴퓨터 내부로 정보를 들여오거나, 로드 모듈을 디스크 등의 보조기억장치로부터 주기억장치에 적재하는 시스템 소프트웨어 입니다.
- 할당(Allocation), 연결(Linking), 재배치(Relocation), 적재(Loading) 과 같이 4가지 기능이 있습니다.
↘<4가지 기능>
- 할당 : 실행 프로그램을 실행시키기 위해 기억장치 내에 옮겨 놓을 공간을 확보
- 연결 : 부 프로그램 호출 시 그 부프로그램이 할당된 기억장소의 시작주소를 호출한 부분에 등록하여 연결하는 것
- 재배치 : 디스크 등의 보조기억장치에 저장된 프로그램이 사용하는 각 주소들을 할당된 기억장소의 실제 주소로 배치
- 적재 : 실행 프로그램을 할당된 기억공간에 실제로 옮기는 것
<컴파일러(Compiler)>
- 대표적 언어 번역 프로그램으로 페이지 단위로 번역후 실행합니다.
- 페이지 단위인 만큼 번역 속도는 느리나 실행속도가 빠르고 목적 프로그램을 생성합니다.
- 대표적인 언어로 FORTRAN, COBOL, C, ALGOL, 등이 있습니다.
※로더와 컴파일러 모두 시험에 자주 출제되니 잘 기억해 두시고 특히 로더의 4가지 기능은 꼭 기억해 두세요
17. CISC(Complex Instruction Set Computer)의 특징으로 옳지 않은 것은?
가. 명령어의 개수가 보통 100~250개로 많다.
나. RISC에 비해 빠른 처리 속도를 제공한다.
다. 명령어의 길이가 가변적이다.
라. 명령어는 기억장치 내의 오퍼랜드를 처리(manipulate)한다.
CISC는 RISC에 비하여 명령어가 많고 레지스터 수도 적어 상대적으로 처리속도가 느립니다.
CISC(Complex Instruction Set Computer) | RISC(Reduced Instruction Set Computer) |
- 명령어가 많으며 여러 주소 지정 모드를 지원 - 프로그래밍이 용이하나 처리 속도가 느림 - 전력 소모가 많고 생산 가격이 비싸며 설계와 구현시 많은 시간이 필요 - RISC에 비하여 레지스터 수가 적습니다. - 프로그래밍이 간단합니다. - 80286, 80386, 80486, Pentium CPU 등의 일반 PC 프로세서 |
- 명령어 축약형 CPU - 주소 지정 모드와 명령어의 종류가 적음 - 프로그래밍이 어려우나 처리 속도가 빠름 - 고성능의 위크스테이션이나 서버, 그래픽용 컴퓨터에서 사용 - 프로그래밍이 복잡합니다. - CISC에 비하여 레지스터가 많습니다. |
※위의 표를 기억해 두시면 좋아요 다른 자격증 시험에서도 CISC와 RISC의 특징 비교 문제가 출제됩니다.
18. 그림과 같은 논리회로에서 A의 값이 1010, B의 값이 1110일 때 출력 Y의 값은?
가. 1111
나. 1001
다. 1010
라. 0100
그림의 각 게이트를 따라 처리하면 어렵지 않아요
19. 다음 진리표에 해당하는 논리식은?
A(입력) | B(입력) | C(출력) |
0 0 1 1 |
0 1 0 1 |
1 0 0 0 |
정답은 라
문제의 진리표는 NOR 회로의 진리표 입니다.
NOR회로의 경우 (A+B)'이 있어야 하지만 지금 문제의 보기에는 없으므로 드모르간 정리를 통하여 A' * B'으로 찾아내어 정답을 확인하시면 됩니다.
<NOR>
- OR회로의 값에 NOT 회로를 붙여 값을 반전만 하면 됩니다.
<게이트 그림>

<진리표>
NORGate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 0 |
<드모르간 정리>

※문제를 풀고 나서 정답이 없을 경우는 보통 드모르간 정리로 풀수 있습니다.
20. 16진수의 3D를 10진수로 변환하면?
가. 48
나. 61
다. 62
라. 49
진수 변환은 각 자리값을 기억하시면 쉽게 풀 수 있어요
16진수에서 A(10), B(11), C(12), D(13), E(14), F(15)입니다.

[2과목 : 패키지 활용]
21. 하나 이상의 기본 테이블로부터 유도되어 만들어 지는 가상 테이블은?
가. 뷰(VIEW)
나. 유리창(WINDOW)
다. 테이블(TABLE)
라. 도메인(DOMAIN)
가상의 테이블 = 뷰 는 마치 공식처럼 외우셔도 좋습니다.
<뷰(View)>
- 하나 이상의 기본테이블에서 유도되어 만들어진 가상의 테이블입니다.
- 기본 테이블로부터 유도된 테이블이기 때문에 기본 테이블과 같은 형태의 구조를 가지며 조작도 기본 테이블과 거의 같습니다.
- 가상 테이블이기에 물리적으로 구성되어 있지 않으며 논리적 데이터의 독립성을 제공합니다.
<테이블(Table) = 릴레이션(Relation)>
- 데이터들을 표로 작성한 것으로 행과 열로 표현됩니다.
- 관계형 데이터베이스에서는 릴레이션이라고도 합니다.
<WINDOW(창)>
컴퓨터 표시 화면을 공유하면서 동작하는 프로그램들 사이에서 화면에 정보를 출력할 수 있도록 할당 된 사각형의 영역입니다.
윈도 방식 프로그램에서는 화면을 복수의 윈도로 분할하여 각 윈도 내에 각기 다른 문서 또는 동일 문서의 다른 부분을 표시할 수 있으며 각 윈도를 개별적으로 확대, 축소, 이동도 가능합니다.
<도메인(Domain)>
- 하나의 속성이 취할 수 있는 같은 타입의 원자값 들의 집합입니다.
- 사용 예) 성별, 학년, 등 미리 정해진 것 외에 입력 할 수 없도록 지정해 놓은 것입니다.
※WINDOW는 크게 중요하지 않아요 다른 보기 3가지를 꼭 기억해 두세요
22. SQL의 형식으로 적당하지 않은 것은?
가. SELECT -FORM - WHERE
나. UPDATE - FROM - WHERE
다. INSERT - INTO - VALUE
라. DELETE - FROM - WHERE
DML의 조작어중 UPDATE는 FROM이 아닌 SET이 맞습니다.
※아래의 DML 정리를 전체적으로 한번 잘 읽어보시면 큰 도움 됩니다.
<조작어 DML(Data Manipulation Language)>
- 데이터베이스 사용자가 응용프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는데 사용하는 언어입니다.
- 데이터베이스 사용자와 데이터베이스 관리 시스템간의 인터페이스를 제공합니다.
↘ <SELECT ~ FROM ~ WHERE>
- 검색문으로 조건에 맞는 튜플을 검색합니다.
- 구조 : SELECT [속성명(필드명)] FROM [테이블] WHERE [조건]
- 옵션 – DISTINCT : 중복 없이 검색합니다. (중복된 데이터가 있을 시 한번만 표시합니다.)
↘<WHERE 조건의 활용>
- 연산자 : LIKE = 속성 값이 문자 패턴과 일치하는 튜플만 검색 할 수 있습니다.
- ? , * 과 같은 와일드 카드 문자로 검색이 가능합니다.
↘ <ORDER BY> : 검색한 결과를 정렬하여 검색할 수 있습니다.
- ASC : 오름차순 / DESC : 내림차순 으로 정렬
↘< GROUP BY [속성명(필드명)] ~ HAVING [그룹 조건]>
- 특정 필드를 기준으로 그룹화 하여 검색을 할 수 있도록 합니다.
↘ <DELETE FROM ~ WHERE>:
- 조건에 맞는 튜플(레코드)를 삭제시 사용
- 구조 : DELETE FROM [테이블] WHERE[조건]
- 조건은 생략이 가능합니다.
↘ <UPDATE ~ SET ~ WEHRE>
- 조건에 맞는 튜플의 내용을 갱신(변경)시에 사용합니다.
- 구조 : UPDATE [테이블명] SET [속성명 = 데이터] WHERE [조건]
↘ <INSERT INTO ~ VALUE>
- 삽입문으로 튜플을 삽입해야 하며 속성과 데이터는 개수와 형식이 일치해야 합니다.
- 구조 : INSERT INTO [테이블명(속성명1,속성명2,...) VALUES [데이터1, 데이터2...]
23. 스프레드시트 프로그램을 사용하여 처리할 업무와 거리가 먼 것은?
가. 직원들의 급여를 계산한다.
나. 주문서와 견적서를 만들어 출력한다.
다. 동영상을 포함한 광고를 제작하여 발표한다.
라. 차트와 그래프를 만들어 재무 분석에 이용한다.
'광고'를 제작하여 '발표'한다는 말이 가장 핵심적인 말입니다.
계산이 중점인 '스프레드시트'가 아닌 '프레젠테이션'에 더 적합한 내용입니다.
<프레젠테이션(Presentation) = 파워 포인트(PowerPoint( PPT) )>
- 기업의 제품 소개, 연구 발표, 회의내용 요약 등 각종 그림이나 도표, 그래프등을 이용하여 많은 사람들에게 효과적으로 의미를 전달할시 사용되는 응용 프로그램입니다.
<스프레드시트(Spreadsheet) = Excel>
- 입력 데이터에 대한 수치의 계산, 처리, 문서 작성, 그래프(차트) 작성, 등의 기능을 효율적으로 수행하기 위해 만들어진 응용 프로그램
24. 프리젠테이션을 구성하는 하나의 화면 단위는?
가. 시트
나. 개체
다. 슬라이드
라. 셀
파워포인트(프레젠테이션)의 한 화면의 구성을 '슬라이드'라 합니다.
<슬라이드(Slide)>
- 프레젠테이션을 구성하는 내용의 하나의 화면 단위를 말하며 각 페이지의 기본 단위가 됩니다.
<워크시트(Work Sheet) = 작업 화면>
- 셀들이 모여 하나의 데이터 작업이 이루어지는 기본 문서 작업 화면을 이루는데 이것을 워크시트라 합니다.
- 데이터를 일정한 양식으로 정리할 수 있도록 구성된 시트입니다.
<개체(Object)>
- 개별적인 요소로 취급되어 문서에 연걸하거 삽입할 수 있는 그림이나 도표, 소리 등의 개개의 요소를 의미합니다.
<셀(Cell)>
- 행과 열이 교차되어 만들어진 사각형(한 칸)으로 데이터가 입력되는 기본 단위입니다.
※문제에서는 개체를 'Entity'가 아닌 Object를 의미하는 것입니다. 데이터 베이스에 관하여는 'Entity'로 설명을 작성할께요
25. 스프레드시트에서 반복 실행하여야 하는 동일 작업이나 복잡한 작업을 하나의 명령으로 정의하여 실행할 수 있는 기능은?
가. 슬라이드
나. 매크로
다. 필터
라. 셀
'반복 실행'이라는 단어만으로도 '매크로'를 생각할 수 있습니다.
<매크로(Macro)>
- 반복적이고 복잡한 일련의 작업을 순서대로 기록해 두었다가 필요할 때마다 호출 명령을 통하여 자동으로 처리하는 프로그램입니다.
- 프로그램 작성시 동일한 코드가 반복되는 경우 그 코드를 한번만 작성하여 필요시 호출하여 사용하는 것입니다.
<슬라이드(Slide)>
- 프레젠테이션을 구성하는 내용의 하나의 화면 단위를 말하며 각 페이지의 기본 단위가 됩니다.
<필터(Filter)>
- 데이터 목록에서 설정된 조건에 맞는 데이터만 추출하여 화면에 나타내는 기능입니다.
<셀(Cell)>
- 행과 열이 교차되어 만들어진 사각형(한 칸)으로 데이터가 입력되는 기본 단위입니다.
26. 데이터베이스의 구조를 3단계로 구분할 때 해당하지 않는 것은?
가. 내부 스키마
나. 외부 스키마
다. 개념 스키마
라. 관계 스키마
스키마의 종류 3가지는 첫 글자만 기억하셔서 내. 외. 개.로 암기하시면 좋아요
순서와 상관없이 종류 3가지를 잘 기억하세요
<스키마(Schema) = 스킴(Scheme) = 메타데이터(Meta-data)>
- 데이터 베이스를 구성하는 개체, 속성, 관계 등 구조에 대한 정의와 이에 대한 제약 조건을 기술한것입니다.
- 내부, 외부, 개념 스키마 3가지가 있습니다.
↘스키마의 종류
- 외부 스키마 – 일반 사용자나 응용 프로그래머의 관점에서의 스키마
- 개념 스키마 – 데이터 베이스의 접근 권한 , 보안, 무결성 규칙에 대한 정의 (기관이나 조직체의 관점에서의 스키마)
- 내부 스키마 – 시스템 프로그래머 또는 설계자 관점에서의 스키마
27. 테이블, 뷰, 스키마, 도메인, 인덱스를 제거할 때 사용하는 SQL 명령어는?
가. CREATE
나. DROP
다. ALTER
라. DELETE
많은 내용을 기억하기 힘드실때엔 '테이블'삭제는 DROP이라 기억하시면 조금더 편합니다.
아래의 DDL의 내용을 보시고 각각의 보기와 DROP의 내용도 잘 기억해 두세요
<정의어 DDL(Data Definition Language)>
- DB(DataBase)의 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어로 번역한 결과가 데이터 사전(Data-Dictionary)이라는 특별한 파일에 여러 개의 테이블로 저장됩니다.
↘ <Create>
- 테이블, 스키마, 뷰, 도메인, 인덱스 생성
↘ <Alter>
- 테이블 수정
↘ <Drop>
- 테이블, 스키마, 뷰, 도메인, 인덱스 제거
↘ <DROP 옵션>
- -Restrict : 제거할 요소를 다른 개체에서 참조 중일 때 삭제를 취소
- -Cascade : 제거할 요소를 다른 개체에서 참조 중일 때 참조하는 모든 개체들 까지 전부 삭제
<DELETE FROM ~ WHERE>:
- 조건에 맞는 튜플(레코드)를 삭제시 사용
- 구조 : DELETE FROM [테이블] WHERE[조건]
- 조건은 생략이 가능합니다.
※조작어(DML)중 DELETE는 테이블의 튜플을 삭제하는 명령입니다. DROP과의 차이점을 기억해 두세요
28. 다음 SQL 문장의 의미는? (단, PURCHASE는 구매 테이블, ITEM은 품명이다.)
SELECT SUM(*) FROM PURCHASE WHERE ITEM=“사과” |
가. 주문한 전체 사과 수량의 평균값을 구한다.
나. 주문한 수량 중 최대값을 구한다.
다. 주문한 수량 중 최소값을 구한다.
라. 주문한 사과의 전체 수량을 구한다.
문제를 쉽게 풀기위해서는 합계(SUM)이 전체 수량을 구할 수 있다고 이해하시면 됩니다.
평균 = AVG
최대값 = MAX
최소값 = MIN 입니다.
두번째 풀이 방식입니다. SELECT문을 이해하셔서 풀이하는 방법입니다.
<SELECT ~ FROM ~ WHERE>
- 검색문으로 조건에 맞는 튜플을 검색합니다.
- 구조 : SELECT [속성명(필드명)] FROM [테이블] WHERE [조건]
SELECT SUM(*)
SUM 속성의 ' * ' 모든 값을 합산 합니다.
FROM PURCHASE
PURCHASE(구매)테이블에서 구합니다.
WHERE ITEM = '사과'
ITEM(품명)이 '사과'인 것이 조건입니다.
※추가적으로 '만능 문자'도 알고 계시면 좋아요
<만능 문자(와일드 카드 : Wild card character)>
- ‘ * ’ (Asterisk) : 임의의 수의 문자들을 나타내는 만능 문자로 모든 자리를 대신할 수 있습니다.
- ‘ ? ’ (Question mark) : 임의의 단일 문자를 나타내는 만능 문자로 한자리의 문자를 대신할 수 있습니다.
29. 데이터베이스 관리 시스템의 필수 기능과 거리가 먼 것은?
가. 처리 기능
나. 정의 기능
다. 조작 기능
라. 제어 기능
첫글자로만 정. 조. 제. 로 기억하셔도 좋아요. 순서와 상관없이 암기하셔도 괜찮아요
<DBMS(Data Base Magement System)>
- 데이터베이스 형태로 저장된 방대한 양의 각종 정보를 체계적이고 효과적으로 이용할 수 있도록 정리, 보관 하기 위해 만들어진 관리하는 프로그램
- 데이터의 중복을 필할 수 있으며 저장된 자료를 공동으로 이용할 수 있습니다.
- 자료의 일관성, 무결성, 보안을 유지할 수 있으며 표준화할 수 있습니다.
- 자료를 통합하여 관리할 수 있으며 항상 최신데이터로 유지하고 실시간 처리가 가능합니다.
- 전산화 비용이 증가하고 시스템이 복잡합니다.
- 자료의 백업과 회복이 어렵고 접근 과부화가 발생할 수 있습니다.
- 전문가의 부족이 있습니다.
↘<DBMS의 필수 기능>
정의 기능 , 조작 기능 , 제어 기능
- 정의 기능 : 데이터베이스에 저장될 데이터의 타입과 구조에 대한 정의와 데이터를 이용하는 방식을 정의합니다.
- 조작 기능 : 데이터의 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 데이터 접근 수단을 정의합니다.
- 제어 기능 : 데이터의 정확성과 보안성을 유지하기 위한 무결성, 보안 및 권한 검사, 병행 제어 등의 기능을 정의합니다.
※시험에 DBMS의 기능 3가지 정. 조. 제 / 스키마 3가지 내. 외. 개. / 설계단계 개. 논. 물. (설계단계는 순서도 암기)/ 과 같은 3글자 들은 꼭 기억해 두세요
30. SQL의 DML에 해당하지 않는 것은?
가. INSERT
나. UPDATE
다. DROP
라. DELETE
DROP은 DML(조작어)가 아닌 DDL(정의어)입니다.
<DDL(정의어)>
- 1). CREATE (생성)
- 2). ALTER (수정)
- 3). DROP (삭제)
<DML(조작어)>
- 1). SELECT (검색)
- 2). DELETE (삭제 : 튜플)
- 3). UPDATE (수정(갱신))
- 4). INSERT (삽입)
※보다 자세한 내용은 22번 문항에서 DML을 27번 문항에서 DDL을 자세히 정리해 두었습니다.
정리된 내용이 자격증 학습에 도움이 되셨다면 공감(하트)한번과 응원의 댓글을 남겨주시면 큰 힘이 됩니다.

'산업인력공단 (큐넷)-자격증 > 정보처리기능사(필기)' 카테고리의 다른 글
[시골개]정보처리기능사 필기 기출 문제 풀이 2010년 07월 11일 [1,2과목] (1) | 2024.02.29 |
---|---|
[시골개]정보처리기능사필기 2010년 03월 28일 기출문제 해설[3,4과목] (1) | 2024.02.27 |
[시골개]정보처리기능사 필기 2010년 01월 31일 기출문제 풀이[3,4과목] (0) | 2024.02.23 |
[시골개]정보처리기능사 필기 2010년 01월 31일 기출문제 해설[1과목, 2과목] (0) | 2024.02.21 |
[시골개]정보처리기능사 필기 2009년 09월 27일 기출 문제 풀이(3과목, 4과목) (0) | 2024.02.20 |