[9급 국가직 컴퓨터일반] 10년 1회차
9급 국가직 컴퓨터일반 기출문제

10년 1회차

총 20문항 · 객관식 · A4 약 1장

1 / 1
A4정답 포함
9급 국가직 컴퓨터일반 기출문제모두CBT · moducbt.com

10년 1회차

총 20문항 · 객관식 · 정답·해설 포함
문제 1
RFID에 대한 설명으로 옳지 않은 것은?
1IC 칩과 무선을 통해 식품, 동물, 사물 등 다양한 개체의 정보를 관리할 수 있는 차세대 인식 기술이다.
2충돌 방지 기능이 있어 동시에 여러 개의 제품의 데이터를 읽을 수 있다.
3RFID는 판독 및 해독 기능을 하는 판독기(reader)와 정보를 제공하는 태그(tag)로 구성된다.
4RFID는 접촉식 식별 기술이다.
정답 및 해설

옳지 않은 것은 RFID가 접촉식 식별 기술이라는 설명이다.

RFID는 태그와 판독기가 무선 주파수로 통신하는 비접촉식 인식 기술로, 떨어진 거리에서도 태그 정보를 읽을 수 있다.

  • IC 칩과 무선으로 다양한 개체 정보를 관리한다 — 옳다.
  • 충돌 방지 기능으로 여러 태그를 동시에 읽는다 — 옳다.
  • 판독기와 태그로 구성된다 — 옳다.
문제 2
소프트웨어의 응집력이란 모듈 내부의 요소들이 서로 관련되어 있는 정도를 말한다. 응집의 종류에 대한 설명으로 옳은 것은?
1기능적 응집(functional cohesion)은 모듈 내 한 구성 요소의 출력이 다른 구성 요소의 입력이 되는 경우이다.
2교환적 응집(communicational cohesion)은 모듈이 여러 가지 기능을 수행하며 모듈 내 구성 요소들이 같은 입력 자료를 이용하거나 동일 출력 데이터를 만들어 내는 경우이다.
3논리적 응집(logical cohesion)은 응집도 스펙트럼에서 가장 높은 곳에 위치하며, 응집력이 가장 강하다.
4순차적 응집(sequential cohesion)은 모듈 내 구성 요소들이 연관성이 있고, 특정 순서에 의해 수행되어야 하는 경우이다.
정답 및 해설

옳은 것은 교환적 응집에 대한 설명이다.

교환적(통신적) 응집은 서로 다른 기능을 수행하는 요소들이 같은 입력 자료를 사용하거나 같은 출력 데이터를 만들어 내는 경우이다.

  • 한 요소의 출력이 다른 요소의 입력이 되는 것은 기능적 응집이 아니라 순차적 응집이다.
  • 논리적 응집은 유사한 성격의 기능을 한 모듈에 모은 것으로 응집도가 낮은 편이며, 가장 강한 것은 기능적 응집이다.
  • 특정 순서에 따라 수행되는 연관 요소의 묶음은 절차적 응집에 해당한다.
문제 3
컴퓨터의 기억 장치에 대한 설명으로 옳지 않은 것은?
1기억장치의 계층 구조는 중앙처리장치와 I/O 장치의 속도 차이를 효율적으로 해결하도록 구성한다.
2기억장치의 계층 구조에서 계층이 높을수록 기억장치의 용량은 감소하고 접근 속도는 증가한다.
3캐쉬는 주로 중앙처리장치와 보조기억장치 간의 속도 차이를 극복하기 위해 사용된다.
4보조기억장치로는 하드 디스크, CD-ROM, DVD 등이 사용된다.
정답 및 해설

옳지 않은 것은 캐시가 CPU와 보조기억장치 간의 속도 차이를 극복하기 위해 사용된다는 설명이다.

캐시는 CPU와 주기억장치 사이에 위치해 두 장치의 속도 차이를 줄인다.

  • 계층 구조는 장치 간 속도 차이를 효율적으로 해결하도록 구성한다 — 옳다.
  • 계층이 높을수록 용량은 작고 속도는 빠르다 — 옳다.
  • 하드 디스크, CD-ROM, DVD는 보조기억장치이다 — 옳다.
문제 4
네트워크를 통한 데이터 전송에 있어서 스트로브(strobe) 제어방법에 대한 설명으로 옳지 않은 것은?
1스트로브는 송신 장치나 수신 장치에 의하여 발생된다.
2스트로브는 유용한 데이터가 버스(bus)에 있음을 수신 장치에 알린다.
3비동기 방식으로 각 전송 시간을 맞추기 위해 단 하나의 제어 라인을 갖는다.
4송신장치는 버스(bus)에 놓인 데이터를 수신 장치가 받아 들였는지의 여부를 알 수 있다.
정답 및 해설

옳지 않은 것은 송신장치가 수신장치의 데이터 수신 여부를 알 수 있다는 설명이다.

스트로브 방식은 하나의 제어선으로 데이터가 있다는 신호만 보내는 단방향 제어이므로 수신 확인이 없다. 수신 여부를 확인하려면 응답 신호를 주고받는 핸드셰이킹 방식이 필요하다.

  • 스트로브는 송신 또는 수신 장치가 발생시킨다 — 옳다.
  • 버스에 유효한 데이터가 있음을 알린다 — 옳다.
  • 비동기 전송의 시점을 맞추기 위해 하나의 제어선을 쓴다 — 옳다.
문제 5
I/O 장치(모듈)가 시스템 버스에 직접 접속되지 못하는 이유로 거리가 먼 것은?
1I/O 장치는 시스템 버스를 통하여 CPU와 단방향으로 통신하기 때문이다.
2종류에 따라 제어 방법이 서로 다른 I/O 장치들의 제어 회로들을 CPU 내부에 모두 포함시키는 것이 어려워 CPU가 그들을 직접 제어할 수 없기 때문이다.
3I/O 장치들의 데이터 전송 속도가 CPU의 데이터 처리 속도에 비하여 훨씬 더 느리기 때문이다.
4I/O 장치들과 CPU가 사용하는 데이터 형식의 길이가 서로 다른 경우가 많기 때문이다.
정답 및 해설

이유로 거리가 먼 것은 I/O 장치가 CPU와 단방향으로 통신하기 때문이라는 설명이다.

I/O 장치는 입력과 출력, 상태 보고 등으로 CPU와 양방향으로 데이터를 주고받는다. I/O 장치를 버스에 직접 붙이지 않고 I/O 모듈(인터페이스)을 두는 이유는 장치들의 특성 차이 때문이다.

  • 장치마다 제어 방법이 달라 CPU가 직접 제어하기 어렵다 — 타당한 이유이다.
  • I/O 장치의 전송 속도가 CPU보다 훨씬 느리다 — 타당한 이유이다.
  • 데이터 형식과 길이가 서로 다르다 — 타당한 이유이다.
문제 6
XML(eXtensible Markup Language)에 대한 설명으로 옳지 않은 것은?
1XML은 웹 문서의 구성 요소에 대한 스타일을 정의하는 표준이다.
2웹 2.0 시대에 정보의 공유, 개방, 사용자의 참여 등을 위한 핵심 기술과 차세대 웹 환경으로 기대되는 시맨틱(semantic) 웹 기능은 XML 문서를 근간으로 구현되고 있다.
3XML은 전자도서관이나 전자출판과 같이 문서 교환이 필요한 분야에서 많이 활용되고 있다.
4XML은 구조화된 표현이 가능하여 문서 구조에 기반한 특정 정보를 검색하는 것이 가능하다.
정답 및 해설

옳지 않은 것은 XML이 웹 문서 구성 요소의 스타일을 정의하는 표준이라는 설명이다.

XML은 사용자가 태그를 정의해 데이터의 구조와 의미를 기술하는 마크업 언어이다. 스타일(표현)은 CSS나 XSL이 정의한다.

  • 시맨틱 웹 등 차세대 웹 기술의 근간이다 — 옳다.
  • 전자도서관·전자출판 등 문서 교환 분야에서 활용된다 — 옳다.
  • 구조화된 표현으로 구조 기반 검색이 가능하다 — 옳다.
문제 7
DRAM(Dynamic Random Access Memory)에 대한 설명 중 가장 거리가 먼 것은?
1DRAM은 정보를 축전기(capacitor)의 충전에 의해 저장한다.
2저장된 정보는 한 번 저장되면 주기적인 충전이 없어도 영구히 저장된다.
3비교적 가격이 싸고 소비 전력이 적다.
4동작 속도가 비교적 빠르며 집적도가 높아 대용량의 메모리에 적합하다.
정답 및 해설

거리가 먼 것은 한 번 저장하면 주기적인 충전 없이 영구히 저장된다는 설명이다.

DRAM은 축전기의 전하로 정보를 저장하는데 전하가 서서히 누설되므로 주기적인 재충전(refresh)이 필요하며, 전원이 꺼지면 내용이 사라지는 휘발성 메모리이다.

  • 축전기의 충전으로 정보를 저장한다 — 옳다.
  • 가격이 싸고 소비 전력이 적다 — 옳다.
  • 집적도가 높아 대용량 메모리에 적합하다 — 옳다.
문제 8
다음은 어느 기관의 데이터베이스 테이블을 나타낸 것이다.

직원

직원번호이름부서
10김B20
20이A10
30박A10
40최C30

부서

부서번호부서명
A10기획과
B20인사과
C30총무과

정책

정책번호정책명제안자
100인력양성40
200주택자금20
300친절교육10
400성과금10
500신규고용20

다음 관계대수식을 적용한 결과의 카디널리티(cardinality)로 옳은 것은?

Π이름, 부서명, 정책명(부서 ⋈부서번호 = 부서(Π정책명, 이름, 부서(정책 ⋈제안자 = 직원번호 직원)))

13
24
35
46
정답 및 해설

결과 릴레이션의 카디널리티는 5이다.

안쪽부터 계산한다. 정책 ⋈제안자=직원번호 직원에서 정책 5개 행의 제안자(40, 20, 10, 10, 20)가 모두 직원 테이블에 있으므로 5개 행이 만들어진다.

이를 (정책명, 이름, 부서)로 투영해도 정책명이 모두 달라 5개 행이 유지되고, 부서와의 조인에서도 부서(A10, B20, C30)가 모두 부서번호에 있으므로 5개 행이다. 마지막 투영 역시 정책명이 서로 달라 중복 제거되는 행이 없다.

  • 3 — 직원 부서 수(부서 테이블 행 수)와 혼동한 값이다.
  • 4 — 직원 테이블 행 수와 혼동한 값이다.
문제 9
네트워크 통신 장치들에 대한 설명으로 옳지 않은 것은?
1리피터(Repeater)는 네트워크 각 단말기를 연결시키는 집선 장치로 일종의 분배기 역할을 한다.
2브리지(Bridge)는 데이터링크 계층에서 망을 연결하며 패킷을 적절히 중계하고 필터링하는 장치이다.
3라우터(Router)는 네트워크 계층에서 망을 연결하고 라우팅 알고리즘을 이용하여 최적의 경로를 선택하여 패킷을 전송한다.
4게이트웨이(Gateway)는 두 개의 서로 다른 형태의 네트워크를 상호 연결시켜 주는 관문 역할을 하는 장치이다.
정답 및 해설

옳지 않은 것은 리피터가 각 단말기를 연결하는 집선 장치로 분배기 역할을 한다는 설명이다.

리피터는 물리 계층에서 약해진 신호를 증폭·재생해 전송 거리를 늘리는 장치이다. 여러 단말을 모으는 집선 장치는 허브이다.

  • 브리지는 데이터 링크 계층에서 프레임을 중계·필터링한다 — 옳다.
  • 라우터는 네트워크 계층에서 최적 경로로 패킷을 전송한다 — 옳다.
  • 게이트웨이는 서로 다른 형태의 네트워크를 연결한다 — 옳다.
문제 10
임베디드 시스템에 대한 설명으로 옳은 것은?
1임베디드 시스템은 다른 시스템에 항상 의존하여 기능을 수행한다.
2하드웨어와 소프트웨어가 조합된 형태이므로 변경이 매우 쉽고, 다양한 용도로 사용하기 때문에 소형 PC로 분류할 수 있다.
3특정 목적을 위해 하드웨어와 소프트웨어로 구현된 전자 제어 시스템으로 사용자와 상호작용이 가능하다.
4표준의 단일 솔루션을 제공하므로 제어 분야, 단말기기 분야, 정보 가전기기 분야, 네트워크 기기 분야 등에 쉽게 적용할 수 있다.
정답 및 해설

옳은 것은 특정 목적을 위해 하드웨어와 소프트웨어로 구현된 전자 제어 시스템이라는 설명이다.

임베디드 시스템은 기기에 내장되어 정해진 기능을 수행하는 전용 시스템이며, 사용자 입력에 반응하는 등 상호작용도 가능하다.

  • 다른 시스템에 항상 의존한다 — 독립적으로 동작하는 경우가 많다.
  • 변경이 쉽고 다양한 용도의 소형 PC로 분류된다 — 특정 용도 전용이며 변경이 어렵다.
  • 표준 단일 솔루션을 제공한다 — 적용 분야마다 맞춤형으로 설계된다.
문제 11
명령어 파이프라이닝에 대한 설명으로 옳지 않은 것은?
1여러 개의 명령어가 중첩 실행된다.
2실행 명령어의 처리율을 향상시킨다.
3개별 명령어의 실행 속도를 높인다.
4하나의 명령어를 수행하는 데 여러 클럭(clock) 사이클이 필요하다.
정답 및 해설

옳지 않은 것은 개별 명령어의 실행 속도를 높인다는 설명이다.

파이프라이닝은 여러 명령어를 단계별로 겹쳐 실행해 처리율(throughput)을 높이는 것이지, 명령어 하나가 걸리는 시간을 줄이지는 않는다.

  • 여러 명령어가 중첩 실행된다 — 옳다.
  • 명령어 처리율을 향상시킨다 — 옳다.
  • 한 명령어는 여러 단계에 걸쳐 여러 클럭 사이클이 필요하다 — 옳다.
문제 12
트랙 번호가 0부터 199인 200개의 트랙을 가진 디스크가 있다. 디스크 스케줄링 기법 중 C-SCAN을 사용하여 다음과 같은 작업 대기 큐(디스크 큐)의 작업을 처리하고자 하는 경우, 처리되는 트랙의 순서를 바르게 나열한 것은? (단, 현재 디스크 헤드는 트랙 35에서 트랙 47로 이동해 왔다고 가정한다)

작업 대기 큐: 139, 22, 175, 86, 13, 158
헤드 시작 위치: 47

147→86→139→158→175→22→13
247→86→139→158→175→199→0→13→22
347→22→13→86→139→158→175
447→86→139→158→175→199→22→13
정답 및 해설

처리 순서는 47→86→139→158→175→199→0→13→22이다.

헤드가 35에서 47로 왔으므로 트랙 번호가 커지는 방향으로 이동 중이다. C-SCAN은 한 방향으로만 서비스하며 끝(199)에 도달하면 처음(0)으로 돌아가 같은 방향으로 다시 서비스한다.

  • 175 다음 바로 22→13으로 가는 순서 — 방향을 바꿔 내려오는 LOOK 방식이다.
  • 47에서 22→13을 먼저 처리하는 순서 — 진행 방향과 반대이다.
  • 199 다음 22→13 순서 — 끝에서 되돌아오며 서비스하는 SCAN 방식이다.
문제 13
윈도우 기반 컴퓨터 시스템에서 드라이버에 대한 설명으로 적절하지 않은 것은?
1드라이버는 운영체제와 하드웨어 사이에서 하드웨어 제어를 위한 소프트웨어 인터페이스를 의미한다.
2DirectX는 멀티미디어 주변장치의 드라이버에 해당한다.
3사운드 카드, 그래픽 카드와 같이 표준화되지 않고 복잡한 기능을 가진 주변 장치일수록 윈도우에서 지원되지 않아 전용 드라이버를 설치하고 최신으로 유지해야 그 성능을 100% 활용할 수 있다.
4윈도우의 안전모드에서 드라이버의 삭제 및 재설치를 수행할 수 있다.
정답 및 해설

적절하지 않은 것은 DirectX가 멀티미디어 주변장치의 드라이버라는 설명이다.

DirectX는 게임·멀티미디어 프로그램이 그래픽·사운드 하드웨어를 쉽게 쓰도록 하는 마이크로소프트의 API(응용 프로그래밍 인터페이스) 모음으로, 장치 드라이버 위에서 동작한다.

  • 드라이버는 운영체제와 하드웨어 사이의 제어용 소프트웨어 인터페이스이다 — 옳다.
  • 표준화되지 않은 복잡한 장치일수록 전용 드라이버를 최신으로 유지해야 한다 — 옳다.
  • 안전모드에서 드라이버 삭제·재설치가 가능하다 — 옳다.
문제 14
음수를 표현하기 위해 2의 보수를 사용한다고 가정할 때, 다음 회로에서 입력 M의 값이 1일 때 수행하는 동작은? (단, A= A3A2A1A0의 4 비트, B=B3B2B1B0의 4 비트, A3와 B3는 부호 비트이며, FA는 전가산기를 나타낸다)
1A-B
2A+B+1
3A+B
4B-A
정답 및 해설

M=1일 때 회로는 A-B를 수행한다.

각 Bi\mathrm{B}_{i}는 M과 XOR되어 FA에 들어가므로 M=1이면 B의 각 비트가 반전(1의 보수)되고, 최하위 자리올림 입력 C0\mathrm{C}_{0}에도 M=1이 들어간다.

따라서 A + B' + 1 = A + (B의 2의 보수) = A-B이다. M=0이면 B가 그대로 들어가고 C0\mathrm{C}_{0}=0이어서 A+B가 된다.

  • A+B — M=0일 때의 동작이다.
  • A+B+1 — B가 반전된다는 점을 놓친 결과이다.
  • B-A — A가 아니라 B가 반전되므로 틀렸다.
문제 15
이진 변수 A, B, C, D, E에 대하여 보기의 논리식으로 간략화될 수 있는 논리식은? (단, 변수 사이의 논리곱 기호는 생략한다)

A'+C'D

1A'+B'D+AC'D
2A'BCD'+A'B'CD+A'BC'D
3(AB)'+B+C'D
4A'BE+A'B'+C'D+A'BE'
정답 및 해설

A'+C'D로 간략화되는 것은 A'BE+A'B'+C'D+A'BE'이다.

A'BE+A'BE' = A'B(E+E') = A'B이고, A'B+A'B' = A'(B+B') = A'이므로 전체는 A'+C'D가 된다.

  • A'+B'D+AC'D — A'+AC'D = A'+C'D이지만 B'D 항이 남아 A=1, B=0, C=1, D=1일 때 1이 되므로 다르다.
  • A'BCD'+A'B'CD+A'BC'D — 최소항 세 개뿐이라 A'+C'D보다 훨씬 좁다.
  • (AB)'+B+C'D — A'+B'+B = 1이 되어 항상 참이다.
문제 16
공개키 암호화 방식에 대한 설명으로 옳지 않은 것은?
1공개키 암호화 방식은 암호화, 복호화에 서로 다른 키를 사용한다.
2공개키 암호화 방식은 비밀키(또는 대칭키) 암호화 방식에 비해 암호화 속도가 빠르다.
3공개키 암호화 방식은 알고리즘과 공개키를 알아도 개인키를 알아내는 것이 매우 어렵다.
4대표적인 공개키 암호화 방식의 알고리즘으로 RSA 방식이 있다.
정답 및 해설

옳지 않은 것은 공개키 암호화 방식이 비밀키 방식보다 암호화 속도가 빠르다는 설명이다.

공개키 방식은 큰 수의 거듭제곱 연산 등 복잡한 수학 연산을 사용하므로 대칭키 방식보다 훨씬 느리다. 그래서 실제로는 대칭키를 공개키로 전달하는 혼합 방식을 쓴다.

  • 암호화와 복호화에 서로 다른 키를 쓴다 — 옳다.
  • 공개키로부터 개인키를 알아내기가 매우 어렵다 — 옳다.
  • 대표 알고리즘은 RSA이다 — 옳다.
문제 17
다음 C 프로그램의 실행 결과는?
#include <stdio.h>
int f(int *i, int j) {
        *i += 5;
        return(2 * *i + ++j);
}
int main(void) {
        int x=10, y=20;
        printf("%d ", f(&x, y));
        printf("%d %d\n", x, y);
}
151 15 21
251 10 20
351 15 20
450 15 21
정답 및 해설

출력은 51 15 20이다.

x는 주소로 전달(참조에 의한 전달)되므로 *i += 5에 의해 main의 x가 15로 바뀐다. y는 값으로 전달되어 함수 안의 j만 바뀐다.

반환값 = 2 × 15 + (++j = 21) = 51
이후 x=15, y=20이 출력된다.

  • 51 15 21 — 값으로 전달된 y도 바뀐다고 본 경우이다.
  • 51 10 20 — 포인터로 x가 바뀐 것을 놓친 경우이다.
  • 50 15 21 — ++j를 후위 증가처럼 계산한 경우이다.
문제 18
다음 C 프로그램의 실행 결과는?
#include <stdio.h>
void main() {
      int a, b;
      a = 2;
      while (a-- > 0)
              printf("a = %d\n", a);
      for (b = 0 b< 2 b++)
              printf("a = %d\n", a++);
}
1a = 1
a = 0
a = -1
a = 0
2a = 1
a = 0
a = 0
a = 1
3a = 2
a = 1
a = 0
a = 1
4a = 2
a = 1
a = 1
a = 2
정답 및 해설

출력은 차례로 a = 1, a = 0, a = -1, a = 0이다.

while 조건 a-- > 0은 비교 후 감소한다.
2 > 0 참 → a=1 출력, 1 > 0 참 → a=0 출력, 0 > 0 거짓 → 반복 종료, 그래도 감소는 일어나 a=−1

for 문(인쇄본에는 세미콜론이 빠져 있으나 b를 0부터 1까지 반복하는 의도)은 2회 반복하며 printf에서 a++는 출력 후 증가한다.
−1 출력 후 a=0, 0 출력 후 a=1

  • while 종료 후 a를 0으로 보는 경우 — 거짓 판정 때도 후위 감소가 일어나는 점을 놓쳤다.
  • 첫 출력을 2로 보는 경우 — 조건 검사에서 이미 감소한 뒤 출력한다는 점을 놓쳤다.
문제 19
정렬 알고리즘에 대한 설명으로 옳지 않은 것은?
1합병 정렬은 히프 정렬에 비해서 더 많은 기억 장소가 필요하다.
2퀵 정렬 알고리즘의 수행시간은 최악의 경우 O(n2)이다.
3히프 정렬 알고리즘의 수행시간은 최악의 경우 O(log n)이다.
4삽입 정렬은 정렬할 자료가 이미 어느 정도 정렬되어 있는 경우 효과적이다.
정답 및 해설

옳지 않은 것은 히프 정렬의 최악 수행시간이 O(log n)이라는 설명이다.

히프 정렬은 n개 원소마다 O(log n)의 재조정을 하므로 최악의 경우에도 O(n log n)이다. 어떤 비교 정렬도 n개를 O(log n)에 정렬할 수는 없다.

  • 합병 정렬은 추가 배열이 필요해 히프 정렬보다 기억 장소를 더 쓴다 — 옳다.
  • 퀵 정렬은 피벗 선택이 나쁘면 최악 O(n2n^{2})이다 — 옳다.
  • 삽입 정렬은 거의 정렬된 자료에서 효율적이다 — 옳다.
문제 20
IP 주소에 대한 설명으로 옳지 않은 것은?
1IP 주소는 컴퓨터에 부여된 유일한 주소로서 컴퓨터를 이동하여 다른 네트워크에 접속하여도 항상 이전과 동일한 IP 주소를 사용한다.
2CIDR은 IP 주소 할당 방법의 하나로, 기존 8비트 단위로 통신망부와 호스트부를 구획하지 않는다.
3IP 버전에 따라 사용되는 주소 표현 형식이 다르다.
4자동 주소 설정 시에 사용될 수 있는 프로토콜은 DHCP(dynamic host configuration protocol)이다.
정답 및 해설

옳지 않은 것은 컴퓨터를 다른 네트워크로 옮겨도 항상 같은 IP 주소를 사용한다는 설명이다.

IP 주소는 네트워크 부분과 호스트 부분으로 구성되므로, 다른 네트워크에 접속하면 그 네트워크에 맞는 주소를 새로 받아야 한다. 장치에 고정된 주소는 MAC 주소이다.

  • CIDR은 8비트 단위 클래스 구분 없이 네트워크부를 정한다 — 옳다.
  • IPv4와 IPv6의 주소 표현 형식이 다르다 — 옳다.
  • DHCP로 주소를 자동 설정한다 — 옳다.
9급 국가직 컴퓨터일반 기출문제모두CBT · moducbt.com
10년 1회차
총 20문항 · 객관식 · 정답·해설 포함
문제 1
RFID에 대한 설명으로 옳지 않은 것은?
1IC 칩과 무선을 통해 식품, 동물, 사물 등 다양한 개체의 정보를 관리할 수 있는 차세대 인식 기술이다.
2충돌 방지 기능이 있어 동시에 여러 개의 제품의 데이터를 읽을 수 있다.
3RFID는 판독 및 해독 기능을 하는 판독기(reader)와 정보를 제공하는 태그(tag)로 구성된다.
4RFID는 접촉식 식별 기술이다.
정답 및 해설

옳지 않은 것은 RFID가 접촉식 식별 기술이라는 설명이다.

RFID는 태그와 판독기가 무선 주파수로 통신하는 비접촉식 인식 기술로, 떨어진 거리에서도 태그 정보를 읽을 수 있다.

  • IC 칩과 무선으로 다양한 개체 정보를 관리한다 — 옳다.
  • 충돌 방지 기능으로 여러 태그를 동시에 읽는다 — 옳다.
  • 판독기와 태그로 구성된다 — 옳다.
문제 2
소프트웨어의 응집력이란 모듈 내부의 요소들이 서로 관련되어 있는 정도를 말한다. 응집의 종류에 대한 설명으로 옳은 것은?
1기능적 응집(functional cohesion)은 모듈 내 한 구성 요소의 출력이 다른 구성 요소의 입력이 되는 경우이다.
2교환적 응집(communicational cohesion)은 모듈이 여러 가지 기능을 수행하며 모듈 내 구성 요소들이 같은 입력 자료를 이용하거나 동일 출력 데이터를 만들어 내는 경우이다.
3논리적 응집(logical cohesion)은 응집도 스펙트럼에서 가장 높은 곳에 위치하며, 응집력이 가장 강하다.
4순차적 응집(sequential cohesion)은 모듈 내 구성 요소들이 연관성이 있고, 특정 순서에 의해 수행되어야 하는 경우이다.
정답 및 해설

옳은 것은 교환적 응집에 대한 설명이다.

교환적(통신적) 응집은 서로 다른 기능을 수행하는 요소들이 같은 입력 자료를 사용하거나 같은 출력 데이터를 만들어 내는 경우이다.

  • 한 요소의 출력이 다른 요소의 입력이 되는 것은 기능적 응집이 아니라 순차적 응집이다.
  • 논리적 응집은 유사한 성격의 기능을 한 모듈에 모은 것으로 응집도가 낮은 편이며, 가장 강한 것은 기능적 응집이다.
  • 특정 순서에 따라 수행되는 연관 요소의 묶음은 절차적 응집에 해당한다.
문제 3
컴퓨터의 기억 장치에 대한 설명으로 옳지 않은 것은?
1기억장치의 계층 구조는 중앙처리장치와 I/O 장치의 속도 차이를 효율적으로 해결하도록 구성한다.
2기억장치의 계층 구조에서 계층이 높을수록 기억장치의 용량은 감소하고 접근 속도는 증가한다.
3캐쉬는 주로 중앙처리장치와 보조기억장치 간의 속도 차이를 극복하기 위해 사용된다.
4보조기억장치로는 하드 디스크, CD-ROM, DVD 등이 사용된다.
정답 및 해설

옳지 않은 것은 캐시가 CPU와 보조기억장치 간의 속도 차이를 극복하기 위해 사용된다는 설명이다.

캐시는 CPU와 주기억장치 사이에 위치해 두 장치의 속도 차이를 줄인다.

  • 계층 구조는 장치 간 속도 차이를 효율적으로 해결하도록 구성한다 — 옳다.
  • 계층이 높을수록 용량은 작고 속도는 빠르다 — 옳다.
  • 하드 디스크, CD-ROM, DVD는 보조기억장치이다 — 옳다.
문제 4
네트워크를 통한 데이터 전송에 있어서 스트로브(strobe) 제어방법에 대한 설명으로 옳지 않은 것은?
1스트로브는 송신 장치나 수신 장치에 의하여 발생된다.
2스트로브는 유용한 데이터가 버스(bus)에 있음을 수신 장치에 알린다.
3비동기 방식으로 각 전송 시간을 맞추기 위해 단 하나의 제어 라인을 갖는다.
4송신장치는 버스(bus)에 놓인 데이터를 수신 장치가 받아 들였는지의 여부를 알 수 있다.
정답 및 해설

옳지 않은 것은 송신장치가 수신장치의 데이터 수신 여부를 알 수 있다는 설명이다.

스트로브 방식은 하나의 제어선으로 데이터가 있다는 신호만 보내는 단방향 제어이므로 수신 확인이 없다. 수신 여부를 확인하려면 응답 신호를 주고받는 핸드셰이킹 방식이 필요하다.

  • 스트로브는 송신 또는 수신 장치가 발생시킨다 — 옳다.
  • 버스에 유효한 데이터가 있음을 알린다 — 옳다.
  • 비동기 전송의 시점을 맞추기 위해 하나의 제어선을 쓴다 — 옳다.
문제 5
I/O 장치(모듈)가 시스템 버스에 직접 접속되지 못하는 이유로 거리가 먼 것은?
1I/O 장치는 시스템 버스를 통하여 CPU와 단방향으로 통신하기 때문이다.
2종류에 따라 제어 방법이 서로 다른 I/O 장치들의 제어 회로들을 CPU 내부에 모두 포함시키는 것이 어려워 CPU가 그들을 직접 제어할 수 없기 때문이다.
3I/O 장치들의 데이터 전송 속도가 CPU의 데이터 처리 속도에 비하여 훨씬 더 느리기 때문이다.
4I/O 장치들과 CPU가 사용하는 데이터 형식의 길이가 서로 다른 경우가 많기 때문이다.
정답 및 해설

이유로 거리가 먼 것은 I/O 장치가 CPU와 단방향으로 통신하기 때문이라는 설명이다.

I/O 장치는 입력과 출력, 상태 보고 등으로 CPU와 양방향으로 데이터를 주고받는다. I/O 장치를 버스에 직접 붙이지 않고 I/O 모듈(인터페이스)을 두는 이유는 장치들의 특성 차이 때문이다.

  • 장치마다 제어 방법이 달라 CPU가 직접 제어하기 어렵다 — 타당한 이유이다.
  • I/O 장치의 전송 속도가 CPU보다 훨씬 느리다 — 타당한 이유이다.
  • 데이터 형식과 길이가 서로 다르다 — 타당한 이유이다.
문제 6
XML(eXtensible Markup Language)에 대한 설명으로 옳지 않은 것은?
1XML은 웹 문서의 구성 요소에 대한 스타일을 정의하는 표준이다.
2웹 2.0 시대에 정보의 공유, 개방, 사용자의 참여 등을 위한 핵심 기술과 차세대 웹 환경으로 기대되는 시맨틱(semantic) 웹 기능은 XML 문서를 근간으로 구현되고 있다.
3XML은 전자도서관이나 전자출판과 같이 문서 교환이 필요한 분야에서 많이 활용되고 있다.
4XML은 구조화된 표현이 가능하여 문서 구조에 기반한 특정 정보를 검색하는 것이 가능하다.
정답 및 해설

옳지 않은 것은 XML이 웹 문서 구성 요소의 스타일을 정의하는 표준이라는 설명이다.

XML은 사용자가 태그를 정의해 데이터의 구조와 의미를 기술하는 마크업 언어이다. 스타일(표현)은 CSS나 XSL이 정의한다.

  • 시맨틱 웹 등 차세대 웹 기술의 근간이다 — 옳다.
  • 전자도서관·전자출판 등 문서 교환 분야에서 활용된다 — 옳다.
  • 구조화된 표현으로 구조 기반 검색이 가능하다 — 옳다.
문제 7
DRAM(Dynamic Random Access Memory)에 대한 설명 중 가장 거리가 먼 것은?
1DRAM은 정보를 축전기(capacitor)의 충전에 의해 저장한다.
2저장된 정보는 한 번 저장되면 주기적인 충전이 없어도 영구히 저장된다.
3비교적 가격이 싸고 소비 전력이 적다.
4동작 속도가 비교적 빠르며 집적도가 높아 대용량의 메모리에 적합하다.
정답 및 해설

거리가 먼 것은 한 번 저장하면 주기적인 충전 없이 영구히 저장된다는 설명이다.

DRAM은 축전기의 전하로 정보를 저장하는데 전하가 서서히 누설되므로 주기적인 재충전(refresh)이 필요하며, 전원이 꺼지면 내용이 사라지는 휘발성 메모리이다.

  • 축전기의 충전으로 정보를 저장한다 — 옳다.
  • 가격이 싸고 소비 전력이 적다 — 옳다.
  • 집적도가 높아 대용량 메모리에 적합하다 — 옳다.
문제 8
다음은 어느 기관의 데이터베이스 테이블을 나타낸 것이다.

직원

직원번호이름부서
10김B20
20이A10
30박A10
40최C30

부서

부서번호부서명
A10기획과
B20인사과
C30총무과

정책

정책번호정책명제안자
100인력양성40
200주택자금20
300친절교육10
400성과금10
500신규고용20

다음 관계대수식을 적용한 결과의 카디널리티(cardinality)로 옳은 것은?

Π이름, 부서명, 정책명(부서 ⋈부서번호 = 부서(Π정책명, 이름, 부서(정책 ⋈제안자 = 직원번호 직원)))

13
24
35
46
정답 및 해설

결과 릴레이션의 카디널리티는 5이다.

안쪽부터 계산한다. 정책 ⋈제안자=직원번호 직원에서 정책 5개 행의 제안자(40, 20, 10, 10, 20)가 모두 직원 테이블에 있으므로 5개 행이 만들어진다.

이를 (정책명, 이름, 부서)로 투영해도 정책명이 모두 달라 5개 행이 유지되고, 부서와의 조인에서도 부서(A10, B20, C30)가 모두 부서번호에 있으므로 5개 행이다. 마지막 투영 역시 정책명이 서로 달라 중복 제거되는 행이 없다.

  • 3 — 직원 부서 수(부서 테이블 행 수)와 혼동한 값이다.
  • 4 — 직원 테이블 행 수와 혼동한 값이다.
문제 9
네트워크 통신 장치들에 대한 설명으로 옳지 않은 것은?
1리피터(Repeater)는 네트워크 각 단말기를 연결시키는 집선 장치로 일종의 분배기 역할을 한다.
2브리지(Bridge)는 데이터링크 계층에서 망을 연결하며 패킷을 적절히 중계하고 필터링하는 장치이다.
3라우터(Router)는 네트워크 계층에서 망을 연결하고 라우팅 알고리즘을 이용하여 최적의 경로를 선택하여 패킷을 전송한다.
4게이트웨이(Gateway)는 두 개의 서로 다른 형태의 네트워크를 상호 연결시켜 주는 관문 역할을 하는 장치이다.
정답 및 해설

옳지 않은 것은 리피터가 각 단말기를 연결하는 집선 장치로 분배기 역할을 한다는 설명이다.

리피터는 물리 계층에서 약해진 신호를 증폭·재생해 전송 거리를 늘리는 장치이다. 여러 단말을 모으는 집선 장치는 허브이다.

  • 브리지는 데이터 링크 계층에서 프레임을 중계·필터링한다 — 옳다.
  • 라우터는 네트워크 계층에서 최적 경로로 패킷을 전송한다 — 옳다.
  • 게이트웨이는 서로 다른 형태의 네트워크를 연결한다 — 옳다.
문제 10
임베디드 시스템에 대한 설명으로 옳은 것은?
1임베디드 시스템은 다른 시스템에 항상 의존하여 기능을 수행한다.
2하드웨어와 소프트웨어가 조합된 형태이므로 변경이 매우 쉽고, 다양한 용도로 사용하기 때문에 소형 PC로 분류할 수 있다.
3특정 목적을 위해 하드웨어와 소프트웨어로 구현된 전자 제어 시스템으로 사용자와 상호작용이 가능하다.
4표준의 단일 솔루션을 제공하므로 제어 분야, 단말기기 분야, 정보 가전기기 분야, 네트워크 기기 분야 등에 쉽게 적용할 수 있다.
정답 및 해설

옳은 것은 특정 목적을 위해 하드웨어와 소프트웨어로 구현된 전자 제어 시스템이라는 설명이다.

임베디드 시스템은 기기에 내장되어 정해진 기능을 수행하는 전용 시스템이며, 사용자 입력에 반응하는 등 상호작용도 가능하다.

  • 다른 시스템에 항상 의존한다 — 독립적으로 동작하는 경우가 많다.
  • 변경이 쉽고 다양한 용도의 소형 PC로 분류된다 — 특정 용도 전용이며 변경이 어렵다.
  • 표준 단일 솔루션을 제공한다 — 적용 분야마다 맞춤형으로 설계된다.
문제 11
명령어 파이프라이닝에 대한 설명으로 옳지 않은 것은?
1여러 개의 명령어가 중첩 실행된다.
2실행 명령어의 처리율을 향상시킨다.
3개별 명령어의 실행 속도를 높인다.
4하나의 명령어를 수행하는 데 여러 클럭(clock) 사이클이 필요하다.
정답 및 해설

옳지 않은 것은 개별 명령어의 실행 속도를 높인다는 설명이다.

파이프라이닝은 여러 명령어를 단계별로 겹쳐 실행해 처리율(throughput)을 높이는 것이지, 명령어 하나가 걸리는 시간을 줄이지는 않는다.

  • 여러 명령어가 중첩 실행된다 — 옳다.
  • 명령어 처리율을 향상시킨다 — 옳다.
  • 한 명령어는 여러 단계에 걸쳐 여러 클럭 사이클이 필요하다 — 옳다.
문제 12
트랙 번호가 0부터 199인 200개의 트랙을 가진 디스크가 있다. 디스크 스케줄링 기법 중 C-SCAN을 사용하여 다음과 같은 작업 대기 큐(디스크 큐)의 작업을 처리하고자 하는 경우, 처리되는 트랙의 순서를 바르게 나열한 것은? (단, 현재 디스크 헤드는 트랙 35에서 트랙 47로 이동해 왔다고 가정한다)

작업 대기 큐: 139, 22, 175, 86, 13, 158
헤드 시작 위치: 47

147→86→139→158→175→22→13
247→86→139→158→175→199→0→13→22
347→22→13→86→139→158→175
447→86→139→158→175→199→22→13
정답 및 해설

처리 순서는 47→86→139→158→175→199→0→13→22이다.

헤드가 35에서 47로 왔으므로 트랙 번호가 커지는 방향으로 이동 중이다. C-SCAN은 한 방향으로만 서비스하며 끝(199)에 도달하면 처음(0)으로 돌아가 같은 방향으로 다시 서비스한다.

  • 175 다음 바로 22→13으로 가는 순서 — 방향을 바꿔 내려오는 LOOK 방식이다.
  • 47에서 22→13을 먼저 처리하는 순서 — 진행 방향과 반대이다.
  • 199 다음 22→13 순서 — 끝에서 되돌아오며 서비스하는 SCAN 방식이다.
문제 13
윈도우 기반 컴퓨터 시스템에서 드라이버에 대한 설명으로 적절하지 않은 것은?
1드라이버는 운영체제와 하드웨어 사이에서 하드웨어 제어를 위한 소프트웨어 인터페이스를 의미한다.
2DirectX는 멀티미디어 주변장치의 드라이버에 해당한다.
3사운드 카드, 그래픽 카드와 같이 표준화되지 않고 복잡한 기능을 가진 주변 장치일수록 윈도우에서 지원되지 않아 전용 드라이버를 설치하고 최신으로 유지해야 그 성능을 100% 활용할 수 있다.
4윈도우의 안전모드에서 드라이버의 삭제 및 재설치를 수행할 수 있다.
정답 및 해설

적절하지 않은 것은 DirectX가 멀티미디어 주변장치의 드라이버라는 설명이다.

DirectX는 게임·멀티미디어 프로그램이 그래픽·사운드 하드웨어를 쉽게 쓰도록 하는 마이크로소프트의 API(응용 프로그래밍 인터페이스) 모음으로, 장치 드라이버 위에서 동작한다.

  • 드라이버는 운영체제와 하드웨어 사이의 제어용 소프트웨어 인터페이스이다 — 옳다.
  • 표준화되지 않은 복잡한 장치일수록 전용 드라이버를 최신으로 유지해야 한다 — 옳다.
  • 안전모드에서 드라이버 삭제·재설치가 가능하다 — 옳다.
문제 14
음수를 표현하기 위해 2의 보수를 사용한다고 가정할 때, 다음 회로에서 입력 M의 값이 1일 때 수행하는 동작은? (단, A= A3A2A1A0의 4 비트, B=B3B2B1B0의 4 비트, A3와 B3는 부호 비트이며, FA는 전가산기를 나타낸다)
1A-B
2A+B+1
3A+B
4B-A
정답 및 해설

M=1일 때 회로는 A-B를 수행한다.

각 Bi\mathrm{B}_{i}는 M과 XOR되어 FA에 들어가므로 M=1이면 B의 각 비트가 반전(1의 보수)되고, 최하위 자리올림 입력 C0\mathrm{C}_{0}에도 M=1이 들어간다.

따라서 A + B' + 1 = A + (B의 2의 보수) = A-B이다. M=0이면 B가 그대로 들어가고 C0\mathrm{C}_{0}=0이어서 A+B가 된다.

  • A+B — M=0일 때의 동작이다.
  • A+B+1 — B가 반전된다는 점을 놓친 결과이다.
  • B-A — A가 아니라 B가 반전되므로 틀렸다.
문제 15
이진 변수 A, B, C, D, E에 대하여 보기의 논리식으로 간략화될 수 있는 논리식은? (단, 변수 사이의 논리곱 기호는 생략한다)

A'+C'D

1A'+B'D+AC'D
2A'BCD'+A'B'CD+A'BC'D
3(AB)'+B+C'D
4A'BE+A'B'+C'D+A'BE'
정답 및 해설

A'+C'D로 간략화되는 것은 A'BE+A'B'+C'D+A'BE'이다.

A'BE+A'BE' = A'B(E+E') = A'B이고, A'B+A'B' = A'(B+B') = A'이므로 전체는 A'+C'D가 된다.

  • A'+B'D+AC'D — A'+AC'D = A'+C'D이지만 B'D 항이 남아 A=1, B=0, C=1, D=1일 때 1이 되므로 다르다.
  • A'BCD'+A'B'CD+A'BC'D — 최소항 세 개뿐이라 A'+C'D보다 훨씬 좁다.
  • (AB)'+B+C'D — A'+B'+B = 1이 되어 항상 참이다.
문제 16
공개키 암호화 방식에 대한 설명으로 옳지 않은 것은?
1공개키 암호화 방식은 암호화, 복호화에 서로 다른 키를 사용한다.
2공개키 암호화 방식은 비밀키(또는 대칭키) 암호화 방식에 비해 암호화 속도가 빠르다.
3공개키 암호화 방식은 알고리즘과 공개키를 알아도 개인키를 알아내는 것이 매우 어렵다.
4대표적인 공개키 암호화 방식의 알고리즘으로 RSA 방식이 있다.
정답 및 해설

옳지 않은 것은 공개키 암호화 방식이 비밀키 방식보다 암호화 속도가 빠르다는 설명이다.

공개키 방식은 큰 수의 거듭제곱 연산 등 복잡한 수학 연산을 사용하므로 대칭키 방식보다 훨씬 느리다. 그래서 실제로는 대칭키를 공개키로 전달하는 혼합 방식을 쓴다.

  • 암호화와 복호화에 서로 다른 키를 쓴다 — 옳다.
  • 공개키로부터 개인키를 알아내기가 매우 어렵다 — 옳다.
  • 대표 알고리즘은 RSA이다 — 옳다.
문제 17
다음 C 프로그램의 실행 결과는?
#include <stdio.h>
int f(int *i, int j) {
        *i += 5;
        return(2 * *i + ++j);
}
int main(void) {
        int x=10, y=20;
        printf("%d ", f(&x, y));
        printf("%d %d\n", x, y);
}
151 15 21
251 10 20
351 15 20
450 15 21
정답 및 해설

출력은 51 15 20이다.

x는 주소로 전달(참조에 의한 전달)되므로 *i += 5에 의해 main의 x가 15로 바뀐다. y는 값으로 전달되어 함수 안의 j만 바뀐다.

반환값 = 2 × 15 + (++j = 21) = 51
이후 x=15, y=20이 출력된다.

  • 51 15 21 — 값으로 전달된 y도 바뀐다고 본 경우이다.
  • 51 10 20 — 포인터로 x가 바뀐 것을 놓친 경우이다.
  • 50 15 21 — ++j를 후위 증가처럼 계산한 경우이다.
문제 18
다음 C 프로그램의 실행 결과는?
#include <stdio.h>
void main() {
      int a, b;
      a = 2;
      while (a-- > 0)
              printf("a = %d\n", a);
      for (b = 0 b< 2 b++)
              printf("a = %d\n", a++);
}
1a = 1
a = 0
a = -1
a = 0
2a = 1
a = 0
a = 0
a = 1
3a = 2
a = 1
a = 0
a = 1
4a = 2
a = 1
a = 1
a = 2
정답 및 해설

출력은 차례로 a = 1, a = 0, a = -1, a = 0이다.

while 조건 a-- > 0은 비교 후 감소한다.
2 > 0 참 → a=1 출력, 1 > 0 참 → a=0 출력, 0 > 0 거짓 → 반복 종료, 그래도 감소는 일어나 a=−1

for 문(인쇄본에는 세미콜론이 빠져 있으나 b를 0부터 1까지 반복하는 의도)은 2회 반복하며 printf에서 a++는 출력 후 증가한다.
−1 출력 후 a=0, 0 출력 후 a=1

  • while 종료 후 a를 0으로 보는 경우 — 거짓 판정 때도 후위 감소가 일어나는 점을 놓쳤다.
  • 첫 출력을 2로 보는 경우 — 조건 검사에서 이미 감소한 뒤 출력한다는 점을 놓쳤다.
문제 19
정렬 알고리즘에 대한 설명으로 옳지 않은 것은?
1합병 정렬은 히프 정렬에 비해서 더 많은 기억 장소가 필요하다.
2퀵 정렬 알고리즘의 수행시간은 최악의 경우 O(n2)이다.
3히프 정렬 알고리즘의 수행시간은 최악의 경우 O(log n)이다.
4삽입 정렬은 정렬할 자료가 이미 어느 정도 정렬되어 있는 경우 효과적이다.
정답 및 해설

옳지 않은 것은 히프 정렬의 최악 수행시간이 O(log n)이라는 설명이다.

히프 정렬은 n개 원소마다 O(log n)의 재조정을 하므로 최악의 경우에도 O(n log n)이다. 어떤 비교 정렬도 n개를 O(log n)에 정렬할 수는 없다.

  • 합병 정렬은 추가 배열이 필요해 히프 정렬보다 기억 장소를 더 쓴다 — 옳다.
  • 퀵 정렬은 피벗 선택이 나쁘면 최악 O(n2n^{2})이다 — 옳다.
  • 삽입 정렬은 거의 정렬된 자료에서 효율적이다 — 옳다.
문제 20
IP 주소에 대한 설명으로 옳지 않은 것은?
1IP 주소는 컴퓨터에 부여된 유일한 주소로서 컴퓨터를 이동하여 다른 네트워크에 접속하여도 항상 이전과 동일한 IP 주소를 사용한다.
2CIDR은 IP 주소 할당 방법의 하나로, 기존 8비트 단위로 통신망부와 호스트부를 구획하지 않는다.
3IP 버전에 따라 사용되는 주소 표현 형식이 다르다.
4자동 주소 설정 시에 사용될 수 있는 프로토콜은 DHCP(dynamic host configuration protocol)이다.
정답 및 해설

옳지 않은 것은 컴퓨터를 다른 네트워크로 옮겨도 항상 같은 IP 주소를 사용한다는 설명이다.

IP 주소는 네트워크 부분과 호스트 부분으로 구성되므로, 다른 네트워크에 접속하면 그 네트워크에 맞는 주소를 새로 받아야 한다. 장치에 고정된 주소는 MAC 주소이다.

  • CIDR은 8비트 단위 클래스 구분 없이 네트워크부를 정한다 — 옳다.
  • IPv4와 IPv6의 주소 표현 형식이 다르다 — 옳다.
  • DHCP로 주소를 자동 설정한다 — 옳다.