정보처리 기능사 필기 기출문제 [08-07-13] 풀이입니다. (1과목, 2과목)
빨간 글자 = 정답(밑줄)
파란 글자 = 중요 문제, 많이 출제돼요
초록 글자 = 문제 풀이 팁
회색 글자 = 답만 암기, 중요하지 않아요
[1과목 : 전자 계산기 일반]
1. 일반적으로 digital type의 양을 바르게 표현한 것은?
가. 시간의 흐름
나. 연필의 개수
다. 온도의 변화
라. 식물의 성장
아날로그의 경우 연속적으로 변화하는 값을 의미합니다. 1,3,4번 보기의 경우는 변화하는 값을 명확하게 수치화하기 힘듭니다. 연필의 개수의 경우 1개, 2개와 같이 명확하게 수치로 나타낼 수 있기에 디지털 타입이 됩니다.
<아날로그(Analog)>
- 길이, 각도, 속도, 음의 높이와 같이 연속적으로 변하는 물리량을 나타내는 것을 말합니다.
- (연속된 값이이므로 하나의 값을 명확하게 수치로 나타내기가 어렵습니다.
<디지털(Digital)>
- 0과 1로 이루어지는 이진법 논리를 사용하여 어떤 값을 명확하게 표시하는 형태를 말합니다.
- (특정 값에 대한 명확하게 수치로 나타낼 수 있습니다.)
※아날로그와 디지털의 차이를 잘 이해하시면 좋아요
2. 일력 단자와 출력단자가 반대가 되는 즉 “0”이면 “1”, “1”이면 “0”이 되는 것은?
가. AND
나. NOT
다. OR
라. Flip-Flop
입력과 출력의 결과를 반대로 나타내는 회로를 NOT회로라 합니다.
<NOT = Complement = 인버터(Inverter)>
- 입력되는 값을 반전합니다. 토글(2가지 상태로 반복적으로 되풀이 하는 것.) 기능, Complement 연산이라고도 하며 값의 부정이라합니다
<진리표>
NOT Gate | |
입력 A | 출력 B |
0 | 1 |
1 | 0 |
<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 |
<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 |
<플립플롭(Flip-Flop)>
- 전원이 끊기기 전이나 상태 변화을 위한 신호가 발생전까지 현재의 상태를 그대로 유지하는 논리회로로 1bit를 기억하는 기억 소자입니다.
- 종류로는 D , T , RS, JK 4가지가 있습니다.
3. 다른 모든 플립플롭의 기능을 대용할 수 있으며 응용범위가 넓고 집적회로화 되어, 가장 널리 사용되는 플립플롭은?
가. RS 플립플롭
나. JK 플립플롭
다. D 플립플롭
라. T 플립플롭
모든 플립플롭의 기능을 수행할 수 있는 플립플롭은 JK플립플롭 입니다.
RS플립플롭과 JK플립플롭이 헷갈리지 않도록 아래의 표를 잘 보고 기억해 두시면 좋아
<RS, JK 플립플롭>
플립플롭 | j | k | 결과 |
s | r | ||
입력 | 0 | 0 | 변화 없음 |
1 | 0 | Set = 1 로 | |
0 | 1 | Reset = 0 으로 | |
1 | 1 | JK = 반전(토글) RS = 오류 |
※ 1 = 하다 0 = 하지 않는다
RS 플립플롭의 S = Set , R = Reset
J = S , R = K 와 같습니다.
<D Flip-Flop(Delay D 플립플롭)>
- 단순 버퍼와 같으며, 입력된 값을 그대로 출력해 줍니다.
<T Flip-Flop(Toggle T 플립플롭)>
- 2가지 상태를 나타내는 것으로 스위치 플립플롭입니다. 1은 0으로 0은 1로 반전합니다.
※플립플롭의 종류 4가지는 모두 시험에 잘 출제됩니다. 꼭 기억해 두세요
4. 16진수 FF를 10진수로 나타내면?
가. 254
나. 255
다. 256
라. 257
※16진수에서 A = 10 , B = 11, C = 12 , D = 13 , E = 14, F = 15 입니다.
5. 하나의 명령어가 2개의 오퍼랜드를 가지고 있으며, 처리할 데이터를 제1, 제2 오퍼랜드에 기억시키고 그 처리 결과를 제1 오퍼랜드에 기억시키므로 제1 오퍼랜드로 표시된 장소에 기억되어 있던 내용은 처리 후에 지워지게 되는 명령의 형식은?
가. 1주소 방식
나. 2주소 방식
다. 3주소 방식
라. 2메모리 방식
문제에 정답이 바로 적혀져 있습니다. '하나의 명령어가 2개의 오퍼랜드를 가지고 있으며' Operand(오퍼랜드)가 주소부 입니다.
2개의 주소부를 가지고 있다고 말해주니 2주소 방식이 됩니다.
<명령어의 구조>
명령어는 기본적으로 3가지 구조로 이루어 져 있습니다.
명령어 구조 | OP-code (명령부,연산자) | Mod(주소지정) | Operand(주소부) |
OP-code : 실제 명령이 있는 곳으로 입출력, 주소 지정, 제어 , 연산, 등의 기능을 가지고 있습니다.
MOD : 주소 지정부분으로 직접 주소지정, 간접주소 지정 등 주소 지정에 관련된 정보를 가지고 있습니다.(보통 명령어 형식에서는 생략하여 이야기 합니다.)
Operand : 연산에 사용되는 데이터 혹은 데이터의 주소 등을 저장하고 있습니다
<0주소 명령어>
- 주소가 필요없이 명령으로만 처리됩니다. 가장 대표적으로 Stack(스택)이 있으며 입력하는 PUSH 와 출력하는 POP 명령 2가지만 있어도 되므로 주소가 필요없다는 것을 알 수 있습니다.
<1주소 명령어>
- 누산기(ACC)가 가장 대표적이며 기존의 결과값에 누적합을 계산하므로 주소부가 1개만 있어도 되는 특징을 갖습니다.
<2주소 명령어>
- 하나의 명령어가 2개의 주소부(Operand)를 가지고 있으며 처리할 데이터를 1,2 주소부에 기억시키고 그 후 처리 결과를 1오퍼랜드에 기억시켜 1오퍼랜드에 있던 표시된 장소는 처리 후 지워지게 되는 명령 방식
<3주소 명령어>
- 2주소 기억 방식과 동일하게 처리는 진행되지만 처리된 결과를 3주소부에 기억 시키므로 기존의 값이 지워지지 않는 특징이 있습니다.
※명령어에 관한 문제가 많이 출제됩니다. 명령어의 구조부터 각 명칭, N주소 명령어까지 모두 기억해 두세요
6. 원판형의 자기디스크 장치에서 하나의 원으로 구성된 기억공간으로 원판형을 따라 동심원으로 나눈 것은?
가. 헤드(Head)
나. 릴(Reel)
다. 실린더(Cylinder)
라. 트랙(Track)
동심원을 물어보고 있습니다. 동심원은 '트랙'이에요
<트랙(Track)>
하드디스크의 플래터 표면에서 회전을 중심으로 데이터가 기록되는 동심원 입니다.
<헤드(Head)>
자기디스크의 자료를 읽고, 쓰고, 지우는 장치입니다.
<릴(Reel)>
자기테이프에서 테이프를 감는 장치 입니다.
<실린더(Cylinder)>
플래터가 여러장일때 서로 다른 면에 있는 동일 트랙의 모임
※크게 중요하지 않아요 간단하게만 읽고 답만 기억하시면서 넘어가도 돼요
7. 2진수 10110을 1의 보수(1' complement)로 표현한 것은?
가. 11110
나. 01000
다. 00110
라. 01001
첫번째 방식은 NOT = Complement 연산을 합니다.
위의 숫자를 모두 NOT 처리하면 01001이 출력됩니다.
두번째 방식은 보수의 개념으로 문제에 나와있는 숫자를 모두 1로 만들기위해 보충해주는 수를 구하면 됩니다.
10110 + X = 11111이 됩니다. 따라서 X = 01001이 되어야 합니다.
<보수(Complement)>
- 각 자리의 숫자의 합이 어느 일정한 수가 되게 하는 수입니다.
- 단순하게 일정한 수가 되도록 보충해 주는 숫자가 됩니다.
- 보수를 가산하여 뺄셈을 계산할 수 있습니다.
- N이 되기위해 특정수에 더해주는 숫자가 보수입니다.
- ex) 9에 대한 5의 보수는 4입니다. / 7에 대한 2의 보수는 5입니다.
※보수의 개념을 기억하시면 큰 도움이 됩니다.
8. 다음 진리표와 같이 연산이 행해지는 게이트는?
입력 | 출력 | |
X | Y | C |
0 1 0 1 |
0 0 1 1 |
0 0 0 1 |
가. OR
나. AND
다. NAND
라. XOR
<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 |
<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 |
<XOR >
- 배타적 논리합, Exclusive OR , EOR 이라 합니다.
- XOR의 경우 입력 받는 값이 서로 다른 경우에만 1(True)의 값이 출력 됩니다. 특정 bit를 반전 시키는 Compare 연산에 사용됩니다.
- AND, OR 과 마찬가지로 2개의 입력과 1개의 출력이 있으므로 이항 연산이라 합니다.
- 반가산기에서 SUM(합계)를 계산합니다.
<진리표>
XOR Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
<NAND>
NAND, NOR, XNOR 의 경우 결과값에 NOT 회로를 붙여 값의 반전만 하면 되므로 NAND만 설명후 넘어가도록 하겠습니다.
NAND : NOT AND로 AND 연산후 결과 값에 NOT회로 처리하면 됩니다.
<게이트 그림>
<진리표>
NAND Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 1 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
9. 8bit 컴퓨터에서 부호와 절대치 방식으로 수치 자료를 표현했을 때, 기억된 값은 얼마인가?
1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
가. -11
나. -12
다. 11
라. 12
부호화 절대치에서 가장 처음 숫자는 0이면 양수(+), 1이면 음수(-)는 반드시 암기하셔야 하며 뒤의 숫자는 2진수로 표현된 숫자이므로 계산하여 정답을 찾으시면 됩니다.
1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
(-) 음수 | 자리값 64 | 자리값 32 | 자리값 16 | 자리값 8 | 자리값 4 | 자리값 2 | 자리값 1 |
음수인 숫자에서 각 자리값을 더하면 8+2+1 이 되므로 –11이 정답입니다.
※ 출제빈도가 많지는 않지만 간혹 출제되는 문제로 부호화 절대치는 8자리 숫자로 표현한다는 것과 첫 번째 자리가 0이면 양수, 1이면 음수라는 점은 기억해 두세요
10. 불대수(Boolean algebra)의 정리 중 틀린 것은?
정답은 라.
+ = 합집합 • = 교집합 입니다.
A 집합과 0(공집합)을 + (합집합)하면 A집합이 그대로 출력 됩니다.
A U 0 = A 입니다.
※ ↓ 불대수 벤다이어 그램으로 정리 ↓
11. 그림의 전기회로를 컴퓨터의 논리회로로 치환하면?
가. AND
나. OR
다. NOT
라. NAND
사진속에 전구에 불이 켜지려면 sw1(스위치1)과 sw2(스위치2) 둘 중 하나만 눌러도 전구에 불이 켜질 수 있습니다.
이렇게 여러 길로 연결 된 것을 '병렬 연결'이라 하며 이러한 병렬 연결은 여러 값중 하나라도 1인 경우 1이 될 수 있는 OR회로가 됩니다.
<OR 게이트>
- 논리 합, 합집합, 병렬 연결로 이해하시면 됩니다. 특적 bit를 1(Set = 1로 만드는)Selective-Set 연산에 주로 사용됩니다.
- OR의 경우 입력 값이 모두 0(False = 거짓)일 경우에만 0이 출력 되며 이외에는 1로 출력 됩니다.
- 입력 값이 2개이며 출력이 1개이므로 이항 연산이라 합니다.
<AND 게이트>
- 논리 곱, 교집합, 직렬 연결로 이해하시면 됩니다. 특정 비트를 Clear(0으로 만드는)하는 MASK 연산에 사용됩니다.
- AND의 경우 입력 값이 모두 다 1(True : 참)일 때 결과 값이 1의 결과 값이 출력되는 게이트입니다.
- 입력에 2개의 값이 필요하며 출력은 1개의 값이 출력됩니다. 이러한 것을 이항 연산(항이 두 개)이라 합니다.
- 반가산기에서는 자리올림(Carry)값을 나타냅니다.
※AND와 OR은 8번 문항에서 보다 자세히 설명을 하였기에 해설을 줄일께요.
<NOT = Complement = 인버터(Inverter)>
- 입력되는 값을 반전합니다. 토글(2가지 상태로 반복적으로 되풀이 하는 것.) 기능, Complement 연산이라고도 하며 값의 부정이라합니다
<진리표>
NOT Gate | |
입력 A | 출력 B |
0 | 1 |
1 | 0 |
<NAND>
NAND, NOR, XNOR 의 경우 결과값에 NOT 회로를 붙여 값의 반전만 하면 되므로 NAND만 설명후 넘어가도록 하겠습니다.
NAND : NOT AND로 AND 연산후 결과 값에 NOT회로 처리하면 됩니다.
<게이트 그림>
<진리표>
NAND Gate | ||
입력 A | 입력 B | 출력 C |
0 | 0 | 1 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
12. 다음의 논리회로에 맞는 불 대수식은? (A, B는 입력, Y는 출력)
정답은 나
OR회로로만 이루어진 문제입니다.
A, B가 OR 회로를 지나 A+B가 됩니다.
이후 A+B가 B회로와 다시 OR회로를 지나며 (A+B)+B가 됩니다.
세 입력이 동일한 논리 연산을 수행시 입력의 순서가 바뀌어도 연산 결과가 동일합니다.
이러한 결합법칙으로 A+(B+B)로 변경할 수 있습니다.
B+B=B이므로 결과값은 A+B가 됩니다.
13. 2진수로 부여된 주소 값이 직접 기억장치의 피연산자가 위치한 곳을 지정하는 주소 지정 방법은?
가. 즉시주소지정(Immediate Addressing)
나. 직접주소지정(Direct Addressing)
다. 간접주소지정(Indirect Addressing)
라. 인덱스주소지정(Index Addressing)
문제 지문에서 '직접 기억장치의 피연산자가 위치한 곳을 지정'이라고 되어 있네요
'직접' '지정' 두단어만 가지고 유추해도 정답을 알 수있네요
<직접 주소(Direct Address)>
- 명령어의 주소부 Operand에 있는 데이터의 값이 실제 주소를 나타내며 주소부가 실제 주소를 나타내므로 다시 기억장치를 참조 할 필요 없으므로 이것을 직접 주소라 합니다. 주소 길이에 제한을 받습니다.
<즉시 주소 지정(즉치 주소 지정)(Immediate Address)>
- 명령어 자체의 주소부(Operand)에 실제 데이터를 가지고 있는 방식으로 기억 장치를 접근(Access)하지 않으므로 속도가 빠릅니다.
<간접주소(Indirect Address)>
- 명령어의 주소부(Operand)의 값이 실제 데이터의 주소를 가진 번지 주소를 가지고 있는 방식으로 최소 2회 이상 기억 장치를 접근해야 목표 데이터를 접근할 수 있습니다. 속도는 느리지만 긴 주소를 표현할때 적합합니다.
<인덱스 주소 지정>
- 명령어 주소 + Index Register 를 계산하여 유효 주소를 계산
14. 연산에 사용되는 데이터 및 연산의 중간 결과를 레지스터에 저장하는 주된 이유는?
가. 비용 절약을 위하여
나. 연산 속도의 향상을 위하여
다. 기억장소의 절약을 위하여
라. 연산의 정확도를 높이기 위하여
연산의 중간 결과를 저장하는 레지스터는 누산기(AC)입니다.
누산기는 이렇게 연산 결과를 저장하는데 이는 속도향상이 목적입니다.
<누산기(Accumulator) = AC , ACC>
- 산술 연산과 논리 연산 동작을 수행한 후 결과를 축적하는 레지스터입니다.
- 산술 연산 또는 논리 연산의 결과를 일시적으로 기억하는 장치입니다.
- 대표적인 연산 장치로 1주소 명령어를 처리합니다.
※이외의 보기는 중요함이 없고 의미가 없는 보기이기에 넘어갈게요
15. 제어논리장치(CLU)와 산술논리연산장치(ALU)의 실행 순서를 제어하기 위해 사용되는 레지스터는?
가. 누산기(accumulator)
나. 프로그램 상태 워드(Program Status Word)
다. 명령 레지스터(instruction register)
라. 플래그 레지스터(flag register)
플래그(Flag : 깃발)를 흔들어 신호를 주고 받으며 순서를 제어 하는 모습을 상상해 보시면 이해가 될 수 있어요
프로그램상태워드(PSW)와 플래그 레시즈터는 동일하게 볼수 있지만 이 문제에서는 연산에 주로 관련된 PSW보다는 제어에 중점이된 플래그레지스터를 정답으로 봅니다.
<플래그 레지스터(Flag Register) ≒ 상태 레지스터; Status Register, PSWR ; Program Status Word Register)>
- 시스템 내부의 순간 순간의 상태가 기록된 정보를 PSW라고 하며 이를 기억하여 오버플로, 언더플로, 자리올림, 계산 상태, 인터럽트 등의 정보를 저장하고 있는 레지스터 입니다.
<누산기(Accumulator) = AC , ACC>
- 산술 연산과 논리 연산 동작을 수행한 후 결과를 축적하는 레지스터입니다.
- 산술 연산 또는 논리 연산의 결과를 일시적으로 기억하는 장치입니다.
- 대표적인 연산 장치로 1주소 명령어를 처리합니다.
<명령 레지스터(IR : Instruction Register)>
- 현재 실행중인 명령어의 내용을 기억하는 레지스터로 명령만 기억합니다.
※플래그레지스터와 상태레지스터에 관한 문제중 조금 어렵게 출제됐습니다. 답만 암기하셔도 괜찮아요 저 두가지를 구별 짓기엔 기능사보다는 산업기사/기사에서 출제되가 될법한 내용이 됩니다.
16. 전송속도는 느리지만 동시에 많은 채널이 동작되도록 하며 하나의 입·출력 채널을 이용하여 시분할 방식으로 다수의 장치에서 데이터의 전송을 동시에 수행하도록 하는 채널은?
가. 셀렉터 채널
나. 멀티플렉서 채널
다. 입력 채널
라. 출력 채널
'동시에 많은 채널이 동작'이라는 지문을 가지고 여러개(Multi) 단어로 생각하면 정답은 쉽게 찾을 수 있어요
아래 채널에 관한 해설로도 정답을 알 수 있어요. 해설을 기억하시는게 좋지만 어렵다면 문제 내용을 가지고 정답을 찾아보세요
<채널(Channel)>
- CPU를 대신하여 주기억 장치와 입출력 장치 사이에서 입출력을 제어하는 처리장치로 입출력전용 프로세서라 합니다.
- CPU와 독립적으로 동작하여 입출력을 완료하여 실제 CPU의 부담을 줄여줌으로 시스템의 속도를 향상시켜 줍니다.
↘셀렉터채널(Selector)
- 고속의 입출력 장치 제어를 하며 1개의 입출력 장치와의 사이에서 데이터를 주고 받을 수 있는 채널로 멀티플렉서(다중, 복수)와는 반대되는 개념입니다.
↘ 멀티플렉서채널(Multiplexer)
- 저속의 입출력장치 제어를 하며 컴퓨터와 복수의 주변 장치에서 동시에 데이터를 주고 받을 수 있는 채널입니다.
↘ 블록 멀티플렉서 채널(Block Multiplexer)
- 셀렉터와 멀티플렉서의 혼합된 기능
17. 일반적으로 컴퓨터의 CPU에서 하나의 명령어를 실행하기 위하여 이루어지는 동작 단계를 바르게 나열한 것은?
가. fetch cycle → instruction decoding cycle → wite-back 작업 → 명령어 실행단계
나. fetch cycle → instruction decoding cycle → 명령어 실행단계 → write-back 작업
다. fetch cycle → write-back 작업 → 명령어 실행단계 → instruction decoding cycle
라. instruction decoding cycle → fetch cycle → 명령어 실행단계 → wite-back 작업
명령을 실행하기 위해서는 가장 먼저 명령어를 가져오기(인출 : Fetch)를 한 후 이 명령어가 무엇인지 해독(Decoding)을 한 다음에 실행하면 됩니다.
이를 생각하면 정답이 2번이라는 것을 알게 됩니다.
<인출 단계(Fetch Cycle)>
- 명령어를 주기억장치로부터 중앙처리장치의 명령 레지스터(IR)로 가져와 해독하는 단계로 해석된 명령어의 모드 비트에 따라 직접 주소와 간접 주소를 판단합니다.
<디코더(Decoder) = 명령 해독기>
- n Bit의 Code화된 정보를 2^n 개의 출력으로 번역하는 회로로 명령어의 명령부나 번지를 해독할 때 사용하며 주로 AND게이트로 구성되어 있습니다.
- ≒이름 그대로 명령어를 해독하는 회로 (Instruction decoder)
※인출, 해독, 실행 3가지 순서정도로 기억해 두세요
18. 다음 그림에서 ALU로 2개의 값이 입력되었을 때 AND 연산 후의 값으로 맞는 것은?
가. 010100
나. 001011
다. 101011
라. 111111
위와 같은 문제가 출제가 되면 숫자를 위아래로 겹쳐서 세로 방향으로 연산을 하면 정답을 알 수 있습니다.
<AND 게이트>
- 논리 곱, 교집합, 직렬 연결로 이해하시면 됩니다. 특정 비트를 Clear(0으로 만드는)하는 MASK 연산에 사용됩니다.
- AND의 경우 입력 값이 모두 다 1(True : 참)일 때 결과 값이 1의 결과 값이 출력되는 게이트입니다.
- 입력에 2개의 값이 필요하며 출력은 1개의 값이 출력됩니다. 이러한 것을 이항 연산(항이 두 개)이라 합니다.
- 반가산기에서는 자리올림(Carry)값을 나타냅니다.
19. 레지스터 중 PC(Program Counter)를 바르게 설명한 것은?
가. 현재 실행 중인 명령어의 내용을 기억한다.
나. 다음에 수행할 명령어의 번지를 기억한다.
다. 기억장소의 내용을 기억한다.
라. 연산의 결과를 일시적으로 보관한다.
프로그램카운터(PC)는 시험에 정말 많이 출제됩니다. 꼭 기억하셔야 해요
<프로그램카운터(PC : Program Counter = 프로그램 계수기)>
- 다음에 실행할 명령어의 번지(주소)를 저장하고 있습니다.
<명령 레지스터(IR : Instruction Register)>
- 현재 실행중인 명령어의 내용을 기억하는 레지스터로 명령만 기억합니다.
<Memory Buffer Register(MBR ; 메모리 버퍼 레지스터)>
- 기억장치를 출입하는 데이터를 잠시 기억하는 레지스터로 CPU가 데이터 처리시 반드시 거치게 되어 있습니다.
- 메모리에 액세스할 때 데이터를 메모리와 주변 장치 사이에서 송수신을 용이하게 하며 지정된 주소에 데이터를 써 넣거나 읽어내는 데이터를 저장하는 레지스터입니다.
<누산기(Accumulator) = AC , ACC>
- 산술 연산과 논리 연산 동작을 수행한 후 결과를 축적하는 레지스터입니다.
- 산술 연산 또는 논리 연산의 결과를 일시적으로 기억하는 장치입니다.
- 대표적인 연산 장치로 1주소 명령어를 처리합니다.
※PC, IR, AC 3가지는 시험에 가장 많이 출제되는 레지스터들 입니다.
20. 기억장소인 스택(Stack)에 데이터를 저장하기 위해 사용되는 것은?
가. pull
나. pop
다. push
라. move
아래의 내용을 보시면 스택이 어떤 구조인지 이해하시기 편해요
<스택(Stack)>
- 리스트의 한쪽 끝으로만 자료의 삽입(Push), 삭제(Pop) 작업이 이루어지는 자료 구조로 가장 나중에 삽입된 자료가 가장 먼저 삭제되는 후입선출(LIFO : Last In First Out)방식입니다.
- TOP(Stack의 기억공간에 가장 마지막으로 삽입된 자료가 기억된 위치)과 Bottom(Stack의 가장 밑바닥 부분)으로 구성되어 있습니다.
- 부 프로그램 호출시 복귀주소를 저장할 때, 인터럽트 처리후 복귀주소를 저장할 때 사용됩니다.
- 0주소 지정방식의 자료 저장소로 후위 표기법으로 산술식을 연산할 때 사용됩니다.
[2과목 : 패키지 활용]
21. 다음 SQL 검색문의 의미로 가장 적절한 것은?
SELECT DISTINCT 학과명 FROM 학생 |
가. 학생 테이블의 학과명을 모두 검색하라.
나. 학생 테이블의 학과명을 중복되지 않게 모두 검색하라.
다. 학생 테이블의 학과명 중에서 중복된 학과명은 모두 검색하라.
라. 학생 테이블을 학과명 구별하지 말고 모두 검색하라.
학과명을 검색(SELECT)합니다. 중복되지 않게(DISTINCT) 학생 테이블에서(FROM)...으로 해석 하면 됩니다.
<SELECT ~ FROM ~ WHERE>
- 검색문으로 조건에 맞는 튜플을 검색합니다.
- 구조 : SELECT [속성명(필드명)] FROM [테이블] WHERE [조건]
- 옵션 – DISTINCT : 중복 없이 검색합니다. (중복된 데이터가 있을 시 한번만 표시합니다.)
22. 데이터베이스 개체(Entity)의 속성 중 하나의 속성이 가질 수 있는 모든 값의 집합을 무엇이라고 하는가?
가. 객체(Object)
나. 속성(Attribute)
다. 도메인(Domain)
라. 카디널리티(Cardinality)
'속성이 가질 수 있는 모든 값의 집합, 모든 원자값들의 집합'= 도메인을 지칭하는 말입니다.
<도메인(Domain)>
- 하나의 속성이 취할 수 있는 같은 타입의 원자값 들의 집합입니다.
- 사용 예) 성별, 학년, 등 미리 정해진 것 외에 입력 할 수 없도록 지정해 놓은 것입니다.
<속성(Attribute : 애트리뷰트)>
- 테이블을 구성하는 항목(Field)이라고도 하며 데이터 베이스를 구성하는 가장 작은 단위입니다.
- 개체(Entity)의 성질이나 특성을 나타냅니다.
- 데이터의 가장 작은 논리적 단위입니다.
<개체(Object)>
- 개별적인 요소로 취급되어 문서에 연걸하거 삽입할 수 있는 그림이나 도표, 소리 등의 개개의 요소를 의미합니다.
기수(Cardinality) : 튜플 수
※ 카디널리티는 시험에 잘 안나와요. 다른 내용을 중점적으로 기억해 두세요
23. SQL의 데이터 조작문(DML)에 해당하지 않는 것은?
가. UPDATE
나. DROP
다. INSERT
라. SELECT
DROP은 정의어(DDL)입니다.
조작어(DML)과 정의어(DDL)을 구별 짓는 문제가 많으니 잘 정리해서 기억해 두시기 바랍니다.
1. <조작어 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...]
2. <정의어 DDL(Data Definition Language)>
- DB(DataBase)의 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어로 번역한 결과가 데이터 사전(Data-Dictionary)이라는 특별한 파일에 여러 개의 테이블로 저장됩니다.
↘ <Create>
- 테이블, 스키마, 뷰, 도메인, 인덱스 생성
↘ <Alter>
- 테이블 수정
↘ <Drop>
- 테이블, 스키마, 뷰, 도메인, 인덱스 제거
↘ <DROP 옵션>
- -Restrict : 제거할 요소를 다른 개체에서 참조 중일 때 삭제를 취소
- -Cascade : 제거할 요소를 다른 개체에서 참조 중일 때 참조하는 모든 개체들 까지 전부 삭제
24. 데이터베이스 구성 요소들의 상호 관계를 논리적으로 정의한 것으로, 데이터의 구조와 제약조건에 대해 기술한 것은?
가. 차수
나. 트랜잭션
다. 스키마
라. 튜플
'구조와 제약 조건에 대하여 기술' 시험에 자주 등장하는 문구 입니다.
스키마를 의미하는 내용이니 꼭 기억해 두세요
<스키마(Schema) = 스킴(Scheme) = 메타데이터(Meta-data)>
- 데이터 베이스를 구성하는 개체, 속성, 관계 등 구조에 대한 정의와 이에 대한 제약 조건을 기술한것입니다.
- 내부, 외부, 개념 스키마 3가지가 있습니다.
↘스키마의 종류
- 외부 스키마 – 일반 사용자나 응용 프로그래머의 관점에서의 스키마
- 개념 스키마 – 데이터 베이스의 접근 권한 , 보안, 무결성 규칙에 대한 정의 (기관이나 조직체의 관점에서의 스키마)
- 내부 스키마 – 시스템 프로그래머 또는 설계자 관점에서의 스키마
차수(Degree) : 속성 수
<트랜잭션(Transaction)>
- 하나의 작업을 수행하기 위해 필요한 데이터베이스의 연산들을 모아놓은 것입니다.
- 데이터페이스에서 논리적인 작업의 단위가 됩니다.
<튜플(Tuple)>
- 테이블에서 행을 구성하는 개체(Entity)이며 레코드라고도 합니다.
25. DBMS의 필수기능으로 가장 적절한 것은?
가. 정의기능, 조작기능, 제어기능
나. 예비기능, 회복기능, 조작기능
다. 참조기능, 보안기능, 저장기능
라. 보안기능, 병행제어기능, 검증기능
첫글자로 정. 조. 제. 라고 기억하셔도 괜찮아요
<DBMS의 필수 기능>
정의 기능 , 조작 기능 , 제어 기능
- 정의 기능 : 데이터베이스에 저장될 데이터의 타입과 구조에 대한 정의와 데이터를 이용하는 방식을 정의합니다.
- 조작 기능 : 데이터의 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 데이터 접근 수단을 정의합니다.
- 제어 기능 : 데이터의 정확성과 보안성을 유지하기 위한 무결성, 보안 및 권한 검사, 병행 제어 등의 기능을 정의합니다.
26. 하나 이상의 기본 테이블로부터 유도되어 만들어지는 가상 테이블을 무엇이라 하는가?
가. 뷰(VIEW)
나. 유리창(WINDOW)
다. 테이블(TABLE)
라. 도메인(DOMAIN)
가상의 테이블 = View(뷰)를 말합니다.
<뷰(View)>
- 하나 이상의 기본테이블에서 유도되어 만들어진 가상의 테이블입니다.
- 기본 테이블로부터 유도된 테이블이기 때문에 기본 테이블과 같은 형태의 구조를 가지며 조작도 기본 테이블과 거의 같습니다.
- 가상 테이블이기에 물리적으로 구성되어 있지 않으며 논리적 데이터의 독립성을 제공합니다.
<테이블(Table) = 릴레이션(Relation)>
- 데이터들을 표로 작성한 것으로 행과 열로 표현됩니다.
- 관계형 데이터베이스에서는 릴레이션이라고도 합니다.
<도메인(Domain)>
- 하나의 속성이 취할 수 있는 같은 타입의 원자값 들의 집합입니다.
- 사용 예) 성별, 학년, 등 미리 정해진 것 외에 입력 할 수 없도록 지정해 놓은 것입니다.
※2번 보기는 없습니다. 의미 없는 보기입니다.
27. 스프레드시트의 기능 중 조건에 맞는 내용만 선별하여 추출하는 기능은?
가. 정렬
나. 필터
다. 슬라이드 쇼
라. 매크로
조건에 맞는 내용을 찾아내는 것은 '필터'이곡 특정 문구나 서식을 찾는것은 검색입니다.
헷갈리지 않도록 구별 지어 기억하시면 좋습니다.
<필터(Filter)>
- 데이터 목록에서 설정된 조건에 맞는 데이터만 추출하여 화면에 나타내는 기능입니다.
<정렬(Sort)>
- 불규칙하게 입력된 데이터 목록을 특정 기준에 따라 재배열하는 기능입니다.
- 오름차순(작은 값부터 큰 값으로 ex) 1 → 2 → 3 , 가 → 나 → 다)으로 정렬이 가능합니다.
- 내림차순(큰 값부터 작은 값으로 ex) 3 → 2 → 1 . 다 → 나 → 가)으로 정렬이 가능합니다.
<매크로(Macro)>
- 반복적이고 복잡한 일련의 작업을 순서대로 기록해 두었다가 필요할 때마다 호출 명령을 통하여 자동으로 처리하는 프로그램입니다.
- 프로그램 작성시 동일한 코드가 반복되는 경우 그 코드를 한번만 작성하여 필요시 호출하여 사용하는 것입니다
<슬라이드 쇼(Slide Show)>
- 프레젠테이션 프로그램에서 모든 장면의 슬라이드를 완성한 뒤 슬라이드 전환, 애니메이션 적용, 사운드, 동영상 제어 등 다양한 효과와 함께 결과물을 보여주는 것입니다.
28. 프레젠테이션에서 사용하는 하나의 화면을 무엇이라 하는가?
가. 슬라이드
나. 매크로
다. 개체
라. 셀
프레젠 테이션에서 하나의 화면 단위는 '슬라이드'입니다.
<슬라이드(Slide)>
프레젠테이션을 구성하는 내용의 하나의 화면 단위를 말하며 각 페이지의 기본 단위가 됩니다.
<매크로(Macro)>
- 반복적이고 복잡한 일련의 작업을 순서대로 기록해 두었다가 필요할 때마다 호출 명령을 통하여 자동으로 처리하는 프로그램입니다.
- 프로그램 작성시 동일한 코드가 반복되는 경우 그 코드를 한번만 작성하여 필요시 호출하여 사용하는 것입니다
<개체(Object)>
- 개별적인 요소로 취급되어 문서에 연걸하거 삽입할 수 있는 그림이나 도표, 소리 등의 개개의 요소를 의미합니다.
※개체는 Entity가 있고 Object가 있습니다. 프레젠테이션에서의 개체는 Object로 문제가 많이 출제되므로 해당되는 해설을 달았습니다.
<셀(Cell)>
- 행과 열이 교차되며 만들어진 사각형으로 입력의 기본 단위입니다.
29. 다음 SQL 명령문의 의미로 가장 적절한 것은?
DROP TABLE 성적 CASCADE; |
가. 성적 테이블과 이 테이블을 참조하는 다른 테이블도 함께 제거하시오.
나. 성적 테이블이 다른 테이블에 의해 참조 중이면 제거하지 마시오.
다. 성적 테이블만 제거 하시오.
라. 성적 테이블의 인덱스만 제거하시오
1번은 CASCADE 옵션
2번은 RESTRICT 옵션
두가지는 잘 기억해 두세요
<Drop>
- 테이블, 스키마, 뷰, 도메인, 인덱스 제거
↘ <DROP 옵션>
- -Restrict : 제거할 요소를 다른 개체에서 참조 중일 때 삭제를 취소
- -Cascade : 제거할 요소를 다른 개체에서 참조 중일 때 참조하는 모든 개체들 까지 전부 삭제
30. 스프레드시트 작업에서 반복적으로 실행하는 경우에 한 번의 명령으로 자동화시켜 처리하는 기능은?
가. 필터
나. 정렬
다. 매크로
라. 테이블
'반복', '자동화' 이와같은 단어는 매크로에서 항상 나오는 단어입니다. 기억해 두시면 보다 문제를 쉽게 풀수 있어요
<매크로(Macro)>
- 반복적이고 복잡한 일련의 작업을 순서대로 기록해 두었다가 필요할 때마다 호출 명령을 통하여 자동으로 처리하는 프로그램입니다.
- 프로그램 작성시 동일한 코드가 반복되는 경우 그 코드를 한번만 작성하여 필요시 호출하여 사용하는 것입니다
<필터(Filter)>
- 데이터 목록에서 설정된 조건에 맞는 데이터만 추출하여 화면에 나타내는 기능입니다.
<정렬(Sort)>
- 불규칙하게 입력된 데이터 목록을 특정 기준에 따라 재배열하는 기능입니다.
- 오름차순(작은 값부터 큰 값으로 ex) 1 → 2 → 3 , 가 → 나 → 다)으로 정렬이 가능합니다.
- 내림차순(큰 값부터 작은 값으로 ex) 3 → 2 → 1 . 다 → 나 → 가)으로 정렬이 가능합니다.
<테이블(Table) = 릴레이션(Relation)>
- 데이터들을 표로 작성한 것으로 행과 열로 표현됩니다.
- 관계형 데이터베이스에서는 릴레이션이라고도 합니다.
※시험의 보기로, 문제로 모두 다 잘 나옵니다. 매크로, 필터, 정렬 잘 봐두세요 이번 회차에서도 계속 보기로, 문제로 출제가 되었네요
'산업인력공단 (큐넷)-자격증 > 정보처리기능사(필기)' 카테고리의 다른 글
[시골개]정보처리기능사 필기 2008년 10월 05일 기출문제 풀이(1과목,2과목) (0) | 2024.02.08 |
---|---|
[시골개]정보처리기능사 필기 2008년 07월 13일 기출문제 풀이(3과목,4과목) (3) | 2024.02.07 |
[시골개]정보처리기능사 필기 2008년 03월 30일 기출문제 풀이(3과목,4과목) (2) | 2024.02.04 |
[시골개]정보처리기능사 필기 2008년 03월 30일 기출문제 풀이(1과목,2과목) (1) | 2024.02.02 |
[시골개]정보처리기능사 필기 2008년 02월 03일 기출문제 풀이(3과목,4과목) (0) | 2024.02.02 |