전자계산기조직응용기사 필기 기출문제복원 (2020-08-22)

전자계산기조직응용기사
(2020-08-22 기출문제)

목록

1과목: 전자계산기 프로그래밍

1. C 언어에서 프로그램의 변수 선언을 “int c;”로 했을 경우에 “&c”는 어떤 의미인가?

  1. C의 범위
  2. C의 절대값
  3. C의 저장된 값
  4. C의 시작 주소
(정답률: 75%)
  • "&c"는 변수 c의 주소를 나타내며, 이는 변수 c가 저장된 메모리 공간의 시작 주소를 의미한다. 따라서 정답은 "C의 시작 주소"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

2. C언어에서 논리 곱(AND)을 나타내는 논리 연산자는?

  1. &&
  2. !
(정답률: 90%)
  • C언어에서 논리 곱(AND)을 나타내는 논리 연산자는 "&&"이다. 이는 두 개의 조건이 모두 참일 때만 전체 조건이 참이 되는 논리 연산자이기 때문이다. 예를 들어, "if (a > 5 && b < 10)"는 a가 5보다 크고 b가 10보다 작을 때만 조건이 참이 된다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

3. C 언어에서 사용되는 함수들의 기능에 대한 설명으로 틀린 것은?

  1. strcat : 문자열의 연결
  2. strcpy : 문자열의 복사
  3. strcmp : 문자열의 비교
  4. strlen : 문자열내의 문자 위치 확인
(정답률: 78%)
  • strlen 함수는 문자열의 길이를 반환하는 함수이며, 문자열 내의 문자 위치를 확인하는 기능은 포함되어 있지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

4. C 언어에서 정수형 변수 a에 256이 저장되어 있다. 이를 7자리로 잡아 왼쪽으로 붙여 출력하고자 할 경우 printf( )내의 변환 문자 사용으로 옳은 것은?

  1. %7f
  2. %-7d
  3. %7d
  4. %7s
(정답률: 73%)
  • 정답: "%-7d"

    이유:

    - "%7f": 실수형 변수를 출력할 때 사용하는 변환 문자이며, 출력 폭을 7칸으로 지정한다. 하지만 이 문제에서는 정수형 변수를 출력해야 하므로 사용할 수 없다.

    - "%7d": 정수형 변수를 출력할 때 사용하는 변환 문자이며, 출력 폭을 7칸으로 지정한다. 하지만 이 경우에는 오른쪽 정렬이 되므로, 256이 7자리로 왼쪽 정렬되어 출력되지 않는다.

    - "%7s": 문자열을 출력할 때 사용하는 변환 문자이며, 출력 폭을 7칸으로 지정한다. 하지만 이 문제에서는 정수형 변수를 출력해야 하므로 사용할 수 없다.

    - "%-7d": 정수형 변수를 출력할 때 사용하는 변환 문자이며, 출력 폭을 7칸으로 지정하고 왼쪽 정렬한다. 따라서 256이 7자리로 왼쪽 정렬되어 출력된다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

5. 하나의 오퍼랜드에 호출 할 벡터의 번호를 표현하여 가로채기를 요청하는 어셈블리어 명령은?

  1. TITLE
  2. INC
  3. INT
  4. REP
(정답률: 65%)
  • 정답은 "INT"이다. INT는 Interrupt(인터럽트)를 발생시키는 명령어이다. 인터럽트는 CPU가 현재 실행 중인 작업을 중단하고, 우선순위가 높은 작업을 처리하기 위해 다른 작업으로 전환하는 것을 말한다. 따라서 오퍼랜드에 호출할 벡터의 번호를 표현하여 가로채기를 요청하는 경우, 인터럽트를 발생시켜 해당 작업을 처리하도록 CPU에 요청하는 것이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

6. 객체지향 개념에서 같은 종류의 집단에 속하는 속성과 행위를 정의한 것으로 객체지향 프로그램의 기본적인 사용자 정의 데이터 형은?

  1. 메시지
  2. 메소드
  3. 클래스
  4. 복잡도
(정답률: 74%)
  • 클래스는 객체지향 프로그래밍에서 같은 종류의 집단에 속하는 속성과 행위를 정의하는 사용자 정의 데이터 형입니다. 클래스는 객체를 생성하기 위한 템플릿 역할을 하며, 객체의 속성을 정의하는 변수와 객체의 행위를 정의하는 메소드를 포함합니다. 따라서 클래스는 객체지향 프로그래밍의 기본적인 구성 요소 중 하나입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

7. 한 위치의 문자열을 다른 위치의 문자열과 비교하는 어셈블리어 명령은?

  1. REPE
  2. SCAS
  3. CMPS
  4. MOVS
(정답률: 82%)
  • 정답은 "CMPS"입니다. "CMPS"는 Compare String의 약자로, 두 개의 문자열을 비교하는 명령어입니다. 이 명령어는 두 개의 문자열을 비교하고, 비교 결과에 따라 플래그 레지스터를 설정합니다. "REPE"는 Repeat while Equal, "SCAS"는 Scan String, "MOVS"는 Move String의 약자입니다. 이들 명령어는 문자열을 조작하는 데 사용됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

8. C언에서 printf 포맷 스트리링에서 “고정 소숫점 표기나 지수 표기 중 선택하여 출력”하는 포맷 스트링과 인수 타입의 형태로 맞는 것은?

  1. %u, int
  2. %f, double
  3. %g 또는 %G, double
  4. %e 또는 %E, double
(정답률: 49%)
  • 정답은 "%g 또는 %G, double"이다.

    %g 또는 %G는 고정 소숫점 표기와 지수 표기 중에서 자동으로 선택하여 출력해주는 포맷 스트링이다. 이에 대한 인수 타입으로는 double이 적합하다.

    예를 들어, 다음과 같은 코드를 작성하면 소수점 이하가 0인 경우에는 고정 소숫점 표기로 출력되고, 그렇지 않은 경우에는 지수 표기로 출력된다.

    ```c
    double num1 = 123.456;
    double num2 = 0.0000123;

    printf("%gn", num1); // 출력: 123.456
    printf("%gn", num2); // 출력: 1.23e-05
    ```
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

9. 객체지향 설계에 있어서 정보은닉의 가장 근본적인 목적은?

  1. 코드를 개선하기 위하여
  2. 결합도를 높이기 위하여
  3. 모듈 라이브러리의 재사용을 위하여
  4. 고려되지 않은 영향들을 최소화 하기 위하여
(정답률: 81%)
  • 정보은닉의 가장 근본적인 목적은 객체 내부의 상태를 외부에서 직접적으로 접근하지 못하도록 하여, 객체의 불변성을 보장하고 객체 간의 결합도를 낮추는 것입니다. 이를 통해 고려되지 않은 영향들을 최소화하고 코드의 유지보수성을 높일 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

10. C 언어에서 저장 클래스를 명시하지 않은 변수는 기본적으로 어떤 기억 클래스로 간주되는가?

  1. Auto
  2. Register
  3. Static
  4. Extern
(정답률: 77%)
  • C 언어에서 저장 클래스를 명시하지 않은 변수는 기본적으로 "Auto" 기억 클래스로 간주된다. 이는 변수가 함수 내에서 선언된 경우에 해당하며, 이 경우 변수는 함수가 호출될 때 생성되고 함수가 종료될 때 소멸된다. 따라서 변수의 수명은 함수의 수명과 일치하며, 다른 저장 클래스를 명시하지 않은 경우에는 자동으로 "Auto"로 간주된다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

11. 객체지향 프로그램 언어를 구분하고 이해하는데 중요한 요소가 아닌 것은?

  1. 객체
  2. 클래스
  3. 정보집중화
  4. 폴리모피즘
(정답률: 64%)
  • 정보집중화는 객체지향 프로그래밍 언어의 중요한 요소가 아닙니다. 객체, 클래스, 폴리모피즘은 객체지향 프로그래밍의 핵심 개념이지만, 정보집중화는 객체지향 프로그래밍에서 사용되는 디자인 패턴 중 하나일 뿐입니다. 정보집중화는 객체들이 서로 상호작용할 때 중개자 역할을 하는 객체를 두어 결합도를 낮추고 유연성을 높이는 방법입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

12. 다음은 프로그램에서 이름이 유효한 범위를 한정하는 namespace의 기본형태이다. ㉠~㉣에 들어갈 내용의 순서를 올바르게 나열한 것은?

  1. 클래스, 변수, 함수, 기타요소
  2. 변수, 클래스, 함수, 기타요소
  3. 변수, 함수, 클래스, 기타요소
  4. 클래스, 함수, 변수, 기타요소
(정답률: 50%)
  • 정답은 "변수, 클래스, 함수, 기타요소"이다.

    이유는 namespace는 이름 충돌을 방지하기 위해 사용되는데, 변수, 클래스, 함수는 모두 이름이 중복될 가능성이 높은 요소들이기 때문이다.

    변수는 다른 함수나 클래스에서 같은 이름으로 사용될 수 있기 때문에 namespace를 통해 범위를 한정해줘야 한다.

    클래스는 멤버 변수나 멤버 함수의 이름이 다른 클래스와 중복될 가능성이 있기 때문에 namespace를 사용해 범위를 한정해줘야 한다.

    함수는 다른 함수나 클래스에서 같은 이름으로 사용될 수 있기 때문에 namespace를 통해 범위를 한정해줘야 한다.

    기타요소는 변수, 클래스, 함수 이외의 요소들을 의미하는데, 이들도 이름 충돌을 방지하기 위해 namespace를 사용할 수 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

13. 객체지향 언어에서 객체에게 어떤 행위를 하도록 지시하는 명령은 무엇인가?

  1. 상속
  2. 이벤트
  3. 메시지
  4. 메소드
(정답률: 67%)
  • 객체지향 언어에서 객체에게 어떤 행위를 하도록 지시하는 명령은 "메시지"이다. 이는 객체간의 상호작용을 위해 사용되며, 메시지를 받은 객체는 해당 메시지를 처리하기 위한 적절한 메소드를 실행한다. 따라서 메시지는 객체지향 프로그래밍에서 중요한 개념 중 하나이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

14. 어셈블리 언어 명령 중 작성이 틀린 것은?

  1. MOV CX,DI
  2. GETCOUNT: MOV CX,DI
  3. GETCOUNT: CX,DI ; Initialize count
  4. GET_COUNT: MOV CX,DI ; Initialize count
(정답률: 57%)
  • 정답은 "GETCOUNT: CX,DI ; Initialize count"입니다. 이는 명령어가 아닌 라벨(label)과 레지스터(register)를 잘못 사용한 것입니다.

    "GETCOUNT: CX,DI ; Initialize count"는 라벨과 레지스터를 쉼표로 구분하고 있으며, 이는 올바른 문법이 아닙니다. 라벨과 레지스터는 쉼표로 구분하지 않고, 라벨 뒤에는 반드시 명령어가 와야 합니다.

    따라서 올바른 문법은 "GETCOUNT: MOV CX,DI" 또는 "GET_COUNT: MOV CX,DI ; Initialize count"와 같이 라벨 다음에 명령어를 작성하는 것입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

15. 표준 C 언어의 Escape Character의 약호가 잘못 짝지어진 것은?

  1. \t : tab
  2. \b : backspace
  3. \f : new line
  4. \o : null character
(정답률: 83%)
  • 정답은 "\f : new line" 이다. Escape Character 중 "\n"이 new line을 나타내는데, "\f"는 form feed를 나타낸다. 따라서 "\f : new line"은 약호가 잘못 짝지어진 것이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

16. C언어에서 문자형 자료 선언 시 사용하는 것은?

  1. double
  2. float
  3. char
  4. int
(정답률: 84%)
  • 문자형 자료를 선언할 때는 "char"를 사용합니다. 이는 문자를 저장하기 위한 자료형으로, 한 글자를 저장할 수 있습니다. "double"과 "float"는 실수형 자료형이며, "int"는 정수형 자료형입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

17. 다음 프로그램에서 int의 크기가 2바이트인 경우에 a와 b의 실행결과는?

  1. 32768, -32769
  2. 32769, -32767
  3. -32768, -32767
  4. -32768, -32769
(정답률: 74%)
  • int의 크기가 2바이트인 경우, 최대값은 32767이고 최소값은 -32768이다. 따라서 a는 32768이 되어 overflow가 발생하여 -32768이 된다. b는 -32769가 되어 underflow가 발생하여 32767이 된다. 따라서 정답은 "32768, -32769"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

18. 원시 프로그램을 하나의 긴 스트링으로 보고 문자 단위로 스캐닝 하여 문법적으로 의미있는 일련의 문자들로 분할해 내는 작업을 수행하는 것은?

  1. 바인딩
  2. 구문분석
  3. 어휘분석
  4. 정규표현
(정답률: 64%)
  • 어휘분석은 원시 프로그램을 문자 단위로 스캐닝하여 문법적으로 의미있는 일련의 문자들로 분할해 내는 작업을 말합니다. 따라서 이 작업은 프로그램의 어휘적인 구성 요소를 파악하는 것으로, 정답은 "어휘분석"입니다. "바인딩"은 변수나 함수와 같은 식별자를 메모리 주소나 값과 연결하는 작업을 말하며, "구문분석"은 프로그램의 구문적인 구성 요소를 파악하는 작업을 말합니다. "정규표현"은 문자열 패턴을 표현하는 데 사용되는 형식 언어를 말합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

19. 서브프로그램(Subprogram)을 사용하는 목적으로 가장 거리가 먼 것은?

  1. 반복되는 부분을 별도로 작성하여 필요할 때 이용할 수 있다.
  2. 컴파일(compile)을 독립적으로 하기 때문에 오류를 쉽게 찾을 수 있다.
  3. 실행 속도는 빠르나 컴퓨터의 기억장소를 줄일 수는 없다.
  4. 한 개의 프로그램을 여러 사람이 분담하여 작성할 수 있다.
(정답률: 64%)
  • 서브프로그램을 사용하는 목적 중에서 "실행 속도는 빠르나 컴퓨터의 기억장소를 줄일 수는 없다."가 가장 거리가 먼 것은, 서브프로그램은 반복되는 부분을 별도로 작성하여 필요할 때 이용할 수 있으며, 컴파일을 독립적으로 하기 때문에 오류를 쉽게 찾을 수 있으며, 한 개의 프로그램을 여러 사람이 분담하여 작성할 수 있다는 장점이 있지만, 실행 속도를 빠르게 하기 위한 것이 아니라 코드의 재사용성과 유지보수성을 높이기 위한 것이기 때문이다. 따라서 실행 속도를 빠르게 하기 위해서는 다른 방법을 사용해야 한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

20. 시스템 프로그래밍에 가장 적합한 언어는?

  1. C
  2. COBOL
  3. BASIC
  4. FORTRAN
(정답률: 82%)
  • C 언어는 저수준의 메모리 조작이 가능하고, 시스템 레벨에서의 작업을 수행할 수 있는 기능이 있어 시스템 프로그래밍에 가장 적합한 언어입니다. 또한, C 언어는 컴파일러를 통해 기계어로 변환되기 때문에 실행 속도가 빠르고, 운영체제나 하드웨어와의 상호작용이 용이합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

2과목: 자료구조 및 데이터통신

21. 데이터링크 프로토콜인 HDLC에서 프레임의 동기를 제공하기 위해 사용되는 구성 요소는?

  1. 플래그
  2. 제어부
  3. 정보부
  4. 프레임 검사 시퀀스
(정답률: 62%)
  • HDLC에서 프레임의 동기를 제공하기 위해 사용되는 구성 요소는 "플래그"입니다. 플래그는 프레임의 시작과 끝을 나타내는 특별한 비트 패턴으로, 제어부와 정보부를 감싸는 역할을 합니다. 이를 통해 수신 측에서 프레임의 시작과 끝을 인식하고, 제어부와 정보부를 올바르게 해석할 수 있습니다. 또한, 플래그는 프레임 검사 시퀀스를 구분하는 역할도 수행합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

22. 오류 제어 방식 중 stop-and-wait ARQ에 대한 설명으로 틀린 것은?

  1. 연속적으로 데이터 프레임을 전송하고 에러가 발생한 데이터 프레임만 재전송한다.
  2. 구현이 간단하고 송신측에서 최대 프레임 크기의 버퍼가 1개만 있어도 된다.
  3. 각각의 프레임에 대해서 확인 메시지가 필요하다.
  4. 데이터 프레임의 순서 번호를 이용하면 프레임의 중복 수신여부를 알 수 있다.
(정답률: 60%)
  • "연속적으로 데이터 프레임을 전송하고 에러가 발생한 데이터 프레임만 재전송한다."가 틀린 설명이 아니다.

    stop-and-wait ARQ는 송신측이 데이터 프레임을 전송하고, 수신측이 해당 프레임을 받았다는 확인 메시지(ACK)를 송신측으로 보내야 한다. 이후에 송신측은 다음 데이터 프레임을 전송할 수 있다. 따라서 "각각의 프레임에 대해서 확인 메시지가 필요하다."는 올바른 설명이다.

    하지만 "구현이 간단하고 송신측에서 최대 프레임 크기의 버퍼가 1개만 있어도 된다."와 "데이터 프레임의 순서 번호를 이용하면 프레임의 중복 수신여부를 알 수 있다."는 stop-and-wait ARQ의 특징이 아니므로 틀린 설명이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

23. 토큰 패싱 방식에서 토큰에 대한 실명으로 옳은 것은?

  1. 데이터 통신 시 에러를 체크하기 위해 사용된다.
  2. 전송할 데이터의 경로를 의미한다.
  3. 채널 사용권을 의미한다.
  4. 5바이트로 구성되어 있다.
(정답률: 57%)
  • 토큰 패싱 방식에서 토큰은 채널 사용권을 의미합니다. 이는 네트워크 상에서 특정 기기가 데이터를 전송하기 위해선 해당 채널의 사용권을 획득해야 한다는 것을 의미합니다. 따라서 토큰은 데이터 통신 시 에러를 체크하기 위해 사용되는 것이 아니며, 전송할 데이터의 경로를 의미하는 것도 아닙니다. 또한 토큰은 5바이트로 구성되어 있지만, 이는 토큰의 의미와는 직접적인 연관이 없습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

24. IPv4에서 TCP의 세그먼트와 IP의 데이터그램 양쪽 모두에 존재하는 것은?

  1. Version
  2. Sequence number
  3. Urgent Pointer
  4. Header Length
(정답률: 59%)
  • TCP의 세그먼트와 IP의 데이터그램 양쪽 모두에 존재하는 것은 "Header Length"이다. 이는 각각의 패킷의 헤더의 길이를 나타내며, 이 값이 없으면 패킷의 내용을 해석할 수 없기 때문이다. 따라서 모든 패킷은 헤더 길이를 포함하고 있어야 한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

25. IPv4에서 C클래스의 서브넷 마스크로 옳은 것은?

  1. 0.0.0.0
  2. 255.0.0.0
  3. 255.255.0.0
  4. 255.255.255.0
(정답률: 77%)
  • C클래스는 첫 번째 세그먼트가 192~223 사이의 숫자로 시작하는 IP 주소를 가지며, 서브넷 마스크는 기본적으로 255.255.255.0이다. 이는 24비트를 네트워크 부분으로, 8비트를 호스트 부분으로 사용하는 것을 의미한다. 따라서, "255.255.255.0"이 옳은 답이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

26. 주파수 대역폭이 fd(Hz)이고 통신로의 채널용량이 6fd(bps)인 통신로에서 필요한 S/N비는?

  1. 15
  2. 31
  3. 63
  4. 127
(정답률: 65%)
  • 채널용량은 다음과 같이 계산됩니다.

    C = B log₂(1 + S/N)

    여기서 B는 대역폭이고, S/N은 신호 대 잡음 비율입니다. 이를 S/N에 대해 풀어서 정리하면 다음과 같습니다.

    S/N = 2^(C/B) - 1

    주어진 문제에서 대역폭이 fd이므로 B = fd입니다. 또한 채널용량이 6fd이므로 C = 6fd입니다. 이를 위의 식에 대입하면 다음과 같습니다.

    S/N = 2^(6fd/fd) - 1 = 2^6 - 1 = 63

    따라서 필요한 S/N비는 63입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

27. 피기백(Piggyback) 응답이란?

  1. 송신측이 대기시간을 설정하기 위한 목적으로 보낸 테스터 프레임용 응답을 말한다.
  2. 송신측이 일정한 시간 안에 수신측으로부터 ACK가 없으면 오류로 간주하는 것이다.
  3. 수신측이 별도의 ACK를 보내지 않고 상대편으로 향하는 데이터 전문을 이용하여 응답하는 것이다.
  4. 수신측이 오류를 검출한 후 재전송을 위한 프레임 번호를 알려주는 응답이다.
(정답률: 45%)
  • 피기백(Piggyback) 응답은 수신측이 별도의 ACK를 보내지 않고 상대편으로 향하는 데이터 전문을 이용하여 응답하는 것이다. 즉, 데이터 전송과 ACK 응답을 함께 보내는 것으로, 대기시간을 줄이고 효율적인 통신을 가능하게 한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

28. OSI 7계층에서 통신 매체에 대해 전기적, 기계적인 인턴페이스를 다루며, 비트를 전송하기 위해 전기적 신호로 부호화하여 전송하는 계층은?

  1. 응용계층
  2. 물리계층
  3. 네트워크계층
  4. 표현계층
(정답률: 76%)
  • 물리계층은 OSI 7계층 중 가장 하위에 위치하며, 통신 매체에 대한 전기적, 기계적인 인터페이스를 다루고 비트를 전송하기 위해 전기적 신호로 부호화하여 전송하는 역할을 합니다. 따라서 물리계층은 데이터를 전송하기 위한 물리적인 환경을 제공하며, 데이터의 전송 속도, 신호의 강도, 전송 거리 등과 같은 물리적인 제약 조건을 다룹니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

29. 해밍 거리가 8일 때, 수신 단에서 정정 가능한 최대 오류 개수는?

  1. 2
  2. 3
  3. 4
  4. 5
(정답률: 59%)
  • 해밍 거리가 8이라는 것은 두 개의 이진 코드 중 8개의 비트가 서로 다르다는 것을 의미합니다. 따라서, 최대 8개의 오류가 발생할 수 있습니다. 그러나, 이진 코드 중에서 한 비트만 바뀌면 다른 코드가 되므로, 최대한 많은 오류를 정정하기 위해서는 해밍 거리가 3인 코드를 사용해야 합니다. 이유는 해밍 거리가 3인 코드는 한 번에 1개의 오류를 정정할 수 있기 때문입니다. 따라서, 수신 단에서 정정 가능한 최대 오류 개수는 3입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

30. 원천 부호화(source coding) 방식에 속하지 않는 것은?

  1. DPCM
  2. DM
  3. LPC
  4. FDM
(정답률: 44%)
  • 원천 부호화(source coding) 방식은 정보를 압축하는 방식을 말하며, DPCM, DM, LPC는 모두 원천 부호화 방식에 속합니다. 하지만 FDM은 주파수 분할 다중화(Frequency Division Multiplexing) 방식으로, 정보를 압축하는 것이 아니라 다수의 신호를 동시에 전송하기 위한 방식입니다. 따라서 FDM은 원천 부호화 방식에 속하지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

31. 다음 자료에 대하여 삽입 정렬을 사용하여 오름차순으로 정렬한 경우 Pass 2의 결과는?

  1. 28, 33, 64, 76, 55, 12, 43
  2. 28, 64, 33, 76, 55, 12, 43
  3. 12, 28, 64, 33, 76, 55, 43
  4. 12, 28, 33, 55, 64, 76, 43
(정답률: 61%)
  • 삽입 정렬은 현재 위치에서 그 이하의 배열들을 비교하여 자신이 들어갈 위치를 찾아 삽입하는 정렬 방법입니다.

    Pass 1에서는 첫 번째 원소인 28이 이미 정렬된 상태이므로 Pass 2에서는 두 번째 원소인 33부터 시작합니다. 33은 28보다 크므로 그대로 둡니다. 다음으로 64를 삽입해야 하는데, 33보다 크므로 그대로 둡니다. 76도 마찬가지로 64보다 크므로 그대로 둡니다.

    다음으로 55를 삽입해야 하는데, 이전에 삽입된 원소들 중에서 33보다 작고 64보다 크므로 33과 64 사이에 삽입합니다.

    그 다음으로 12를 삽입해야 하는데, 이전에 삽입된 원소들 중에서 가장 작으므로 맨 앞에 삽입합니다.

    마지막으로 43을 삽입해야 하는데, 이전에 삽입된 원소들 중에서 33보다 작고 55보다 크므로 33과 55 사이에 삽입합니다.

    따라서 Pass 2의 결과는 "12, 28, 33, 55, 64, 76, 43"이 됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

32. DBMS의 필수 기능에 해당하지 않는 것은?

  1. 관리기능
  2. 정의기능
  3. 조작기능
  4. 제어기능
(정답률: 73%)
  • DBMS의 필수 기능은 정의기능, 조작기능, 제어기능이다. 이들은 데이터베이스를 생성, 수정, 삭제, 검색, 보호, 백업, 복원 등을 포함한 데이터 관리를 위한 기능을 제공한다. 반면, "관리기능"은 DBMS의 필수 기능에 해당하지 않는다. "관리기능"은 일반적으로 DBMS의 보조 기능으로 분류되며, 데이터베이스의 성능 모니터링, 사용자 권한 관리, 데이터베이스 구성 관리 등과 같은 작업을 수행한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

33. 이진트리의 레벨 k에서 가질 수 있는 최대 노드수는?

  1. 2k
  2. 2k-1
  3. 2k+1
  4. 22k+1
(정답률: 71%)
  • 이진트리에서 각 노드는 최대 2개의 자식 노드를 가질 수 있습니다. 따라서 레벨 k에서 최대 노드수는 2의 k승이 될 수 있습니다. 그러나 이진트리의 레벨은 1부터 시작하므로, 레벨 k에서는 2의 k-1승이 최대 노드수가 됩니다. 따라서 정답은 "2k-1"입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

34. Internal sort에 해당하지 않는 것은?

  1. bubble sort
  2. balanced merge sort
  3. quick sort
  4. radix sort
(정답률: 49%)
  • balanced merge sort는 external sort의 일종으로, 대용량의 데이터를 처리할 때 사용되는 알고리즘이다. 따라서 internal sort에 해당하지 않는다. 반면에 bubble sort, quick sort, radix sort는 모두 internal sort에 해당한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

35. 데이터베이스 설계 순서로 옳은 것은?

  1. 개념적 설계 → 논리적 설계 → 물리적 설계
  2. 논리적 설계 → 물리적 설계 → 개념적 설계
  3. 물리적 설계 → 개념적 설계 → 논리적 설계
  4. 개념적 설계 → 물리적 설계 → 논리적 설계
(정답률: 85%)
  • 데이터베이스 설계는 개념적 설계, 논리적 설계, 물리적 설계 순서로 진행됩니다. 개념적 설계는 사용자 요구사항을 수집하고 이를 개념적 모델로 변환하는 단계입니다. 논리적 설계는 개념적 모델을 논리적 모델로 변환하고 데이터베이스 구조를 정의하는 단계입니다. 마지막으로 물리적 설계는 논리적 모델을 물리적 모델로 변환하고 데이터베이스를 구현하는 단계입니다. 따라서 옳은 순서는 "개념적 설계 → 논리적 설계 → 물리적 설계" 입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

36. 다음의 tree를 postorder로 traverse한 결과는?

  1. ABDECFGHI
  2. DBEFCHGIA
  3. ABCDEFGHI
  4. DEBFHIGCA
(정답률: 65%)
  • Postorder traversal은 왼쪽 서브트리, 오른쪽 서브트리, 루트 노드 순으로 순회하는 것이다. 따라서, 위의 tree를 postorder로 traverse하면 다음과 같은 순서가 된다.

    DEBFHIGCA

    보기에서 "DEBFHIGCA"가 유일하게 나타나는 것을 볼 수 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

37. 데이터베이스의 3층 스키마에 해당하지 않는 것은?

  1. 관계 스키마
  2. 개념 스키마
  3. 외부 스키마
  4. 내부 스키마
(정답률: 85%)
  • 관계 스키마는 데이터베이스의 논리적 구조를 정의하는 스키마 중 하나이며, 개념 스키마와 외부 스키마 사이에 위치합니다. 하지만 내부 스키마는 데이터베이스의 물리적 구조를 정의하는 스키마로, 3층 스키마 중 하나가 아닙니다. 따라서 정답은 "내부 스키마"입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

38. 트랙잭션의 특성에 해당하지 않는 것은?

  1. Consistency
  2. Isolation
  3. Durability
  4. Automation
(정답률: 75%)
  • 트랙잭션의 특성 중 "Automation"은 포함되지 않습니다. 이유는 트랜잭션은 데이터베이스에서 실행되는 작업의 논리적 단위를 나타내는 것으로, 자동화된 프로세스나 기계적인 작업과는 관련이 없기 때문입니다. 따라서 "Automation"은 트랜잭션의 특성이 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

39. 선형 구조에 해당하지 않는 것은?

  1. 데크
  2. 스택
  3. 트리
(정답률: 83%)
  • 트리는 비선형 구조이기 때문에 선형 구조에 해당하지 않습니다. 선형 구조는 데이터가 일렬로 나열되어 있는 구조를 말하며, 데크, 큐, 스택은 모두 선형 구조에 해당합니다. 하지만 트리는 부모와 자식 노드 간의 계층 구조를 가지고 있으며, 각 노드는 여러 개의 자식 노드를 가질 수 있습니다. 따라서 트리는 비선형 구조에 해당합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

40. 해싱 기법에서 동일한 홈 주소로 인하여 충돌이 일어난 레코드들의 집합을 의미하는 것은?

  1. Overflow
  2. Bucket
  3. Collision
  4. Synonym
(정답률: 63%)
  • 해싱 기법에서 동일한 홈 주소로 인하여 충돌이 일어난 레코드들의 집합을 "Synonym"이라고 부릅니다. 이는 충돌이 일어난 레코드들이 서로 동의어 관계에 있다는 의미입니다. 다른 보기들은 해싱 기법에서 충돌과 관련된 용어들이지만, "Synonym"은 충돌이 일어난 레코드들의 관계를 나타내는 용어입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

3과목: 전자계산기구조

41. 다음 진리표는 어떤 플립플롭인가? (단, A, B는 플립플롭의 입력, Qn은 현재상태, Qn+1은 다음 상태의 출력이다.)

  1. RS 플립플롭(flip-flop)
  2. D 플립플롭(flip-flop)
  3. JK 플립플롭(flip-flop)
  4. T 플립플롭(flip-flop)
(정답률: 67%)
  • 진리표를 보면 J와 K 입력이 모두 1일 때, 이전 상태의 출력과 반대로 출력이 바뀌는 것을 볼 수 있다. 이러한 특성 때문에 JK 플립플롭은 이전 상태를 유지하거나 반대로 바꿀 수 있는 토글(toggle) 기능을 가지고 있어서, 다른 플립플롭들보다 더욱 다양한 회로 설계에 활용될 수 있다. 따라서 정답은 "JK 플립플롭(flip-flop)"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

42. 채널 명령어(Channel Command Word)로 알수 있는 내용으로 틀린 것은?

  1. 명령코드
  2. 데이터 전송속도
  3. 데이터 주소
  4. 플래그
(정답률: 59%)
  • 채널 명령어(Channel Command Word)로는 데이터 전송속도를 알 수 없습니다. 채널 명령어는 데이터 전송에 필요한 명령코드, 데이터 주소, 플래그 등의 정보를 담고 있습니다. 데이터 전송속도는 채널 제어기에서 설정하거나, 데이터 전송 중에 동적으로 조정될 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

43. 기억장치의 계층구조에서 접근 시간이 짧은 순에서 긴 순으로 바르게 나열한 것은?

  1. Register-RAM-Cache-HDD
  2. RAM-Cache-Register-HDD
  3. Register-HDD-Cache-RAM
  4. Register-Cache-RAM-HDD
(정답률: 74%)
  • 기억장치의 계층구조에서는 접근 시간이 짧은 순으로 나열됩니다. 레지스터는 CPU 내부에 위치하며 가장 빠른 접근 시간을 가지고 있습니다. 캐시는 CPU와 메인 메모리 사이에 위치하며 레지스터보다는 느리지만 RAM보다는 빠른 접근 시간을 가지고 있습니다. RAM은 캐시보다는 느리지만 HDD보다는 빠른 접근 시간을 가지고 있습니다. HDD는 가장 느린 접근 시간을 가지고 있습니다. 따라서 "Register-Cache-RAM-HDD"가 올바른 순서입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

44. CPU의 구성 요소가 아닌 것은?

  1. 제어장치
  2. 출력장치
  3. 연산장치
  4. 레지스터
(정답률: 68%)
  • CPU는 제어장치, 연산장치, 레지스터로 구성되어 있습니다. 출력장치는 CPU와는 별개로 컴퓨터 시스템의 일부분으로, CPU가 처리한 결과를 사용자에게 보여주는 역할을 합니다. 따라서 출력장치는 CPU의 구성 요소가 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

45. 인터럽트 수행 순서를 바르게 나열한 것은?

  1. 나→가→라→마→다
  2. 나→가→마→라→다
  3. 나→마→가→다→라
  4. 나→라→가→마→다
(정답률: 70%)
  • 인터럽트는 현재 실행 중인 프로그램을 중단하고 다른 프로그램을 실행하는 것이다.

    따라서, 현재 실행 중인 프로그램인 "나"가 인터럽트를 발생시켜 "가"를 실행하고, "가"가 다시 인터럽트를 발생시켜 "마"를 실행한다. 그리고 "마"가 인터럽트를 발생시켜 "라"를 실행하고, "라"가 다시 인터럽트를 발생시켜 "다"를 실행한다.

    따라서, 인터럽트 수행 순서는 "나→가→마→라→다"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

46. 입·출력 인터페이스를 사용해야 하는 이유로 틀린 것은?

  1. 속도의 차이
  2. 전압레벨의 차이
  3. 전송 사이클 길이의 차이
  4. 마이크로 오퍼레이션의 차이
(정답률: 37%)
  • 마이크로 오퍼레이션의 차이는 입·출력 인터페이스를 사용해야 하는 이유가 아니다. 입·출력 인터페이스는 다른 시스템과의 통신을 위해 필요한 것으로, 시스템 내부의 마이크로 오퍼레이션의 차이와는 관련이 없다. 따라서, 정답은 "마이크로 오퍼레이션의 차이"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

47. 명령어-수준 병렬성을 최대한 유지하기 위한 제약사항이 아닌 것은?

  1. 데이터 추상화
  2. 데이터 의존성
  3. 프로시저 의존성
  4. 자원충돌
(정답률: 42%)
  • 데이터 추상화는 명령어-수준 병렬성과는 관련이 없는 개념입니다. 데이터 추상화는 데이터를 추상화하여 복잡성을 감소시키고, 데이터의 구현 세부사항을 숨기는 것을 의미합니다. 따라서 데이터 추상화는 병렬성과는 직접적인 연관이 없으므로, 제약사항이 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

48. Random Access 방식이 아닌 기억장치는?

  1. 자기 코어 장치
  2. 자기 디스크 장치
  3. 자기 테이프 장치
  4. 자기 드럼 장치
(정답률: 64%)
  • 자기 테이프 장치는 순차적으로 데이터를 읽고 쓰는 방식으로 동작하기 때문에 Random Access 방식이 아닌 기억장치이다. 데이터를 찾기 위해서는 처음부터 순서대로 읽어나가야 하기 때문이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

49. 3차원 렌더링 등 3D 작업의 효율적인 처리를 위해 특별히 사용되는 그래픽 가속 기능을 가진 프로세서의 명칭으로 옳은 것은?

  1. MPU
  2. SPU
  3. GPU
  4. FPU
(정답률: 80%)
  • 정답: GPU

    설명: GPU는 Graphics Processing Unit의 약자로, 그래픽 가속 기능을 가진 프로세서를 의미합니다. CPU와는 달리 병렬 처리에 특화되어 있어 3D 렌더링 등 그래픽 작업을 빠르고 효율적으로 처리할 수 있습니다. 따라서 3D 작업을 위해 특별히 사용되는 그래픽 가속 기능을 가진 프로세서의 명칭으로 GPU가 사용됩니다. MPU는 Microprocessor Unit, SPU는 Signal Processing Unit, FPU는 Floating Point Unit의 약자로 각각 마이크로프로세서, 신호 처리 유닛, 부동 소수점 연산 유닛을 의미합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

50. 인터럽트 발생 시 CPU가 저장해야 할 내용이 아닌 것은?

  1. 프로그램 카운터
  2. 프로세스 상태 워드
  3. 레지스터에 저장된 모든 내용
  4. 메모리에 저장된 모든 내용
(정답률: 54%)
  • 인터럽트 발생 시 CPU가 저장해야 할 내용은 현재 실행 중인 프로세스의 상태와 다음에 실행할 명령어의 주소 등이 포함되어 있습니다. 이러한 정보는 프로그램 카운터와 프로세스 상태 워드에 저장됩니다. 또한, CPU 내부의 레지스터에도 저장되어 있는데, 이는 현재 실행 중인 명령어와 관련된 정보를 담고 있습니다. 하지만, 메모리에 저장된 모든 내용은 인터럽트 발생 시 CPU가 저장해야 할 내용이 아닙니다. 메모리에 저장된 내용은 현재 실행 중인 프로세스와 관련된 데이터나 코드 등이 포함되어 있지만, 인터럽트 발생 시 CPU가 저장해야 할 정보는 이와는 별개입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

51. 8비트 레지스터 A, B에 각각 0xFF, 0xFE가 저장되어 있고, A+B 연산을 수행했을 때 오버플로(V), 캐리(C), 부호(S), 영(Z)을 나타내는 플래그 값으로 옳은 것은? (단, 음수 표현을 위해 2의 보수를 사용하는 컴퓨터 시스템이라 가정한다.)

  1. V=0, C=1, S=1, Z=0
  2. V=1, C=1, S=1, Z=1
  3. V=0, C=0, S=0, Z=0
  4. V=1, C=0, S=0, Z=1
(정답률: 39%)
  • A와 B의 값이 모두 양수이므로 덧셈 결과는 0x1FD가 된다. 이 값은 8비트로 표현할 수 있는 최대값인 0xFF를 초과하므로 오버플로가 발생한다. 따라서 V=1이 아닌 V=0이 된다. 또한, 덧셈 결과가 9비트가 되므로 캐리가 발생한다. 따라서 C=1이 된다. 덧셈 결과인 0x1FD는 부호 비트가 1이므로 음수이다. 따라서 S=1이 된다. 마지막으로, 덧셈 결과가 0이 아니므로 Z=0이 된다. 따라서 정답은 "V=0, C=1, S=1, Z=0"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

52. 데이터 전송 인스트럭션(Instruction)에서 사용빈도가 가장 낮은 인스트럭션 형식은?

  1. 스택 인스트럭션 형식
  2. 메모리-메모리 인스트럭션 형식
  3. 레지스터-메모리 인스트럭션 형식
  4. 레지스터-레지스터 인스트럭션 형식
(정답률: 61%)
  • 메모리-메모리 인스트럭션 형식은 두 개의 메모리 주소를 직접적으로 조작하는 인스트럭션 형식으로, 레지스터를 사용하지 않기 때문에 데이터 전송 속도가 느리고 사용빈도가 가장 낮다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

53. 2진수(binary) 0101을 그레이 코드(Gray Code)로 변환하면?

  1. 0101
  2. 0110
  3. 0111
  4. 1100
(정답률: 49%)
  • 그레이 코드는 인접한 두 수의 비트 차이가 1인 코드이다. 따라서 0101과 인접한 그레이 코드는 0111이다.

    0101 -> 0111
    첫 번째 비트는 그대로 유지하고, 두 번째 비트부터는 이전 비트와 다른 값을 취한다.
    0101의 두 번째 비트는 1이므로, 그레이 코드에서는 0이 된다.
    0101의 세 번째 비트는 0이므로, 그레이 코드에서는 1이 된다.
    0101의 네 번째 비트는 1이므로, 그레이 코드에서는 1이 된다.

    따라서 0101의 그레이 코드는 0111이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

54. 8진수 (563)8의 7의 보수를 구하면?

  1. (325)8
  2. (324)8
  3. (215)8
  4. (214)8
(정답률: 54%)
  • 8진수 7의 보수란 각 자리수를 7에서 뺀 값이다. 따라서,

    7의 보수 = (777 - 563)8 = (214)8

    위와 같이 계산할 수 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

55. 보조기억장치의 특징 중 틀린 것은?

  1. 대용량 기억장치이다.
  2. CPU가 직접 접근할 수 없다.
  3. 주기억장치보다 액세스 속도가 빠르다.
  4. 전원이 차단되어도 내용이 유지된다.
(정답률: 64%)
  • 보조기억장치의 특징 중 "주기억장치보다 액세스 속도가 빠르다."는 틀린 것이다. 이는 주기억장치가 CPU와 직접적으로 연결되어 있기 때문에 액세스 속도가 더 빠르다. 반면 보조기억장치는 CPU가 직접 접근할 수 없으며, 데이터를 주기억장치로 옮겨와서 사용해야 하기 때문에 액세스 속도가 느리다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

56. Flynn의 병렬 프로세서 구조를 분류할 때 MIMD에 해당하지 않는 것은?

  1. Symmetric Multiprocessor
  2. Nonuniform Memory Access
  3. Clusters
  4. Uni processor
(정답률: 50%)
  • MIMD는 Multiple Instruction Multiple Data의 약자로, 여러 개의 프로세서가 각각 다른 명령어와 데이터를 처리하는 구조를 의미합니다. 따라서 Uni processor는 하나의 프로세서만을 사용하는 구조이므로 MIMD에 해당하지 않습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

57. 10진수 741을 2진화 10진 코드(BCD code)로 표시하면?

  1. 0010 1110 0101
  2. 0111 0100 0001
  3. 0010 1111 0101
  4. 0111 0110 0001
(정답률: 69%)
  • BCD 코드는 10진수를 4비트씩 나누어 각각을 2진수로 표현하는 방식입니다. 따라서 7, 4, 1을 각각 4비트씩 나누어 0111, 0100, 0001로 표현하면 됩니다. 따라서 정답은 "0111 0100 0001"입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

58. 복수 모듈 기억장치에 관한 설명으로 틀린 것은?

  1. 각 모듈이 공통으로 사용하는 MAR, MBR이 있다.
  2. 복수 모듈기억 장치를 사용함으로써 중앙처리장치의 유휴시간을 줄일 수 있다.
  3. m개의 모듈로 구성된 메모리에서의 m개의 연속적인 명령이 동시레 fetch될 수 있다.
  4. 기억장치에 접근 식 각 모듈에 번갈아 가면서 접근하도록 하는 것을 인터리빙이라고 한다.
(정답률: 43%)
  • "각 모듈이 공통으로 사용하는 MAR, MBR이 있다."가 틀린 설명입니다. 각 모듈은 자체적인 MAR과 MBR을 가지고 있으며, 이를 통해 각 모듈은 독립적으로 메모리에 접근할 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

59. 1워드당 32비트인 컴퓨터 명령어 시스템에서 OPCODE가 8비트, 주소모드가 1비트인 경우에 이 컴퓨터가 가질 수 있는 레지스터의 최대 수는? (단, 기억장소의 크기는 1메가바이트 이다.)

  1. 3
  2. 4
  3. 8
  4. 16
(정답률: 43%)
  • OPCODE가 8비트이므로 최대 2^8 = 256개의 명령어를 가질 수 있습니다. 주소모드가 1비트이므로 주소모드는 2가지가 가능합니다. 따라서 하나의 명령어에는 최대 2개의 주소모드가 가능합니다. 이 컴퓨터가 가질 수 있는 레지스터의 수는 주소모드에 따라 다르게 할당됩니다. 예를 들어, 주소모드가 0일 때는 레지스터가 2개 필요하고, 주소모드가 1일 때는 레지스터가 3개 필요합니다. 따라서 레지스터의 최대 수는 3개가 됩니다. 이는 기억장소의 크기와는 무관합니다. 따라서 정답은 "3"이 되어야 합니다. "8"은 잘못된 답입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

60. EX-OR 기능을 수행하기 위하여 필요한 NAND 게이트의 수는?

  1. 2개
  2. 3개
  3. 4개
  4. 5개
(정답률: 43%)
  • EX-OR 기능을 수행하기 위해서는 두 입력 중 하나만 1이어야 하므로, NAND 게이트를 이용하여 입력을 반전시키고 다시 NAND 게이트를 이용하여 출력을 반전시키면 EX-OR 기능을 구현할 수 있다. 이를 위해 NAND 게이트를 2개 사용하여 입력을 반전시키고, 그 결과를 다시 NAND 게이트 2개를 사용하여 출력을 반전시키면 EX-OR 기능을 수행할 수 있다. 따라서, 필요한 NAND 게이트의 수는 4개이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

4과목: 운영체제

61. 교착상태의 4가지 발생 조건의 설명 중 틀린 것은?

  1. 점유와 대기 – 자원을 점유하고 있으면서 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야 한다.
  2. 상호배제 – 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있다.
  3. 비선점 – 하나의 프로세스가 CPU를 할당받고 있을 때 우선순위가 높은 다른 프로세서가 강제로 CPU를 빼앗아 사용할 수 있다.
  4. 환형대기 – 대기하는 프로세스들이 자신에게 할당된 자원을 점유하면서 앞뒤에 있는 프로세스의 자원을 요구해야 한다.
(정답률: 57%)
  • 정답은 "비선점 – 하나의 프로세스가 CPU를 할당받고 있을 때 우선순위가 높은 다른 프로세서가 강제로 CPU를 빼앗아 사용할 수 있다." 이다. 비선점 스케줄링에서는 우선순위가 높은 프로세스가 CPU를 할당받을 수 있지만, 이미 CPU를 할당받은 프로세스가 끝날 때까지 기다려야 한다. 따라서 다른 프로세스가 강제로 CPU를 빼앗아 사용할 수 없다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

62. HRN(Highest Response-ratio Next) 방식으로 스케줄링할 경우, 입력된 작업이 다음과 같을 때 우선 순위가 가장 높은 작업은?

  1. A
  2. B
  3. C
  4. D
(정답률: 64%)
  • HRN 방식은 응답 비율이 높은 작업을 먼저 처리하는 방식입니다. 응답 비율은 (대기 시간 + 서비스 시간) / 서비스 시간으로 계산됩니다.

    따라서 각 작업의 응답 비율을 계산해보면 다음과 같습니다.

    - 작업 A: (0 + 3) / 3 = 1
    - 작업 B: (2 + 2) / 2 = 2
    - 작업 C: (4 + 1) / 1 = 5
    - 작업 D: (6 + 1) / 1 = 7

    작업 D의 응답 비율이 가장 높으므로, 우선 순위가 가장 높은 작업은 작업 D입니다. 따라서 정답은 A입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

63. 프로세스 내에서의 작업 단위로서 시스템의 여러 자원을 할당받아 실행하는 프로그램의 단위는?

  1. Task
  2. Spooling
  3. Thread
  4. Segment
(정답률: 66%)
  • 프로세스는 실행 중인 프로그램을 의미하며, 이 프로세스 내에서 작업을 처리하는 단위가 스레드입니다. 스레드는 프로세스 내에서 독립적으로 실행되는 작업 단위로, 프로세스 내의 자원을 공유하면서 실행됩니다. 따라서 스레드는 프로세스 내에서 작업을 분리하여 병렬적으로 처리할 수 있어서 시스템의 성능을 향상시키는 데에 유용합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

64. 매크로 프로세서의 처리과정 중 기본적인 기능으로 틀린 것은?

  1. 매크로 정의 확장
  2. 매크로 호출 인식
  3. 매크로 정의 인식
  4. 매크로 정의 저장
(정답률: 62%)
  • 매크로 정의 확장은 매크로를 정의할 때 사용하는 것이 아니라, 매크로를 호출할 때 매크로 정의를 확장하여 실행하는 과정을 말한다. 따라서 매크로 프로세서의 처리과정 중 기본적인 기능으로는 포함되지 않는다.

    매크로 호출 인식은 매크로를 호출하는 코드를 인식하는 과정이고, 매크로 정의 인식은 매크로를 정의하는 코드를 인식하는 과정이다. 매크로 정의 저장은 매크로를 정의한 코드를 저장하는 과정이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

65. OS의 가상기억장치 관리에서 프로세스가 일정 시간동안 자주 참조하는 페이지들의 집합은?

  1. Thrashing
  2. Deadlock
  3. Locality
  4. Working Set
(정답률: 63%)
  • 정답은 "Working Set"입니다.

    가상기억장치 관리에서 프로세스가 일정 시간동안 자주 참조하는 페이지들의 집합을 "Working Set"이라고 합니다. 이는 프로세스가 메모리에서 필요로 하는 페이지들을 사전에 예측하여 미리 메모리에 올려놓음으로써 페이지 부재(Page Fault)를 최소화하고 성능을 향상시키는 기술입니다. 따라서, Working Set은 프로세스의 성능을 향상시키는 중요한 개념입니다.

    다른 선택지들은 다음과 같은 의미를 가집니다.

    - Thrashing: 메모리 부족 상태에서 페이지 교체가 지나치게 빈번하게 일어나서 시스템 성능이 급격히 저하되는 현상
    - Deadlock: 둘 이상의 프로세스가 서로가 가지고 있는 자원을 점유하고 있어서 무한정 대기하는 상태
    - Locality: 프로세스가 일정 시간동안 참조하는 메모리 영역이 지역성을 가지는 현상 (시간 지역성, 공간 지역성)
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

66. 은행가 알고리즘(Banker’s Algorithm)은 교착상태의 해결 방법 중 어떤 기법에 해당하는가?

  1. Avoidance
  2. Detection
  3. Prevention
  4. Recovery
(정답률: 74%)
  • 은행가 알고리즘은 교착상태를 예방하는 방법으로, "Avoidance"에 해당한다. 이 알고리즘은 시스템이 안정 상태로 유지될 수 있는 자원 할당 상태를 사전에 파악하여, 안정 상태를 유지할 수 있는 자원 요청만을 허용하는 방식으로 교착상태를 예방한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

67. CPU 스케줄링 알코리즘을 평가하는 기준으로 틀린 것은?

  1. 응답 시간(response time)
  2. 바인딩 시간(binding time)
  3. CPU 이용률(CPU utilization)
  4. 반환 시간(turn-around time)
(정답률: 51%)
  • 바인딩 시간은 CPU 스케줄링 알고리즘과는 관련이 없는 개념입니다. 바인딩 시간은 프로그램이 실행되기 전에 변수나 함수 등이 메모리 상의 주소에 할당되는 시간을 의미합니다. 따라서 이 보기에서 틀린 것은 "바인딩 시간(binding time)"입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

68. UNIX 시스템에서 사용자와 운영체제 서비스를 연결해 주는 인터페이스로 상위수준의 소프트웨어가 커널의 기능을 이용할 수 있도록 지원해주는 것은?

  1. 시스템 호출
  2. 파일 서브 시스템
  3. 하드웨어 제어 루틴
  4. 프로세스 제어 서브 시스템
(정답률: 50%)
  • 시스템 호출은 사용자와 운영체제 서비스를 연결해주는 인터페이스로, 상위수준의 소프트웨어가 커널의 기능을 이용할 수 있도록 지원해줍니다. 이를 통해 사용자는 운영체제의 다양한 기능을 호출하여 사용할 수 있습니다. 예를 들어, 파일 입출력, 프로세스 생성 및 제어, 메모리 할당 등의 기능을 시스템 호출을 통해 사용할 수 있습니다. 따라서 시스템 호출은 UNIX 시스템에서 매우 중요한 역할을 합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

69. 운영체제의 성능을 판단 할 수 있는 요소로 틀린 것은?

  1. 비용
  2. 신뢰도
  3. 처리 능력
  4. 사용가능도
(정답률: 72%)
  • 운영체제의 성능을 판단하는 요소로 비용은 포함되지 않습니다. 비용은 운영체제를 구매하거나 유지보수하는 데 필요한 경제적인 측면을 나타내는 것이며, 성능과는 직접적인 연관성이 없습니다. 따라서 비용은 운영체제의 성능을 판단하는 요소가 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

70. 디스크 액세스 작업 중 가장 많은 시간이 걸리는 작업은?

  1. seek time
  2. latency time
  3. transmission time
  4. channels selection
(정답률: 60%)
  • 디스크 액세스 작업 중 가장 많은 시간이 걸리는 작업은 "seek time"이다. Seek time은 디스크 헤드가 원하는 데이터를 찾기 위해 디스크의 특정 위치로 이동하는 데 걸리는 시간을 의미한다. 이 작업은 디스크의 회전 속도나 데이터가 저장된 위치와 관계없이 발생하므로, 다른 작업들보다 더 많은 시간이 소요된다. 따라서 seek time을 최소화하는 것이 디스크 액세스 속도를 향상시키는 중요한 요소 중 하나이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

71. 시스템소프트웨어의 구성에서 처리프로그램과 관계가 없는 것은?

  1. Job Scheduler
  2. Language Translate Program
  3. Service Program
  4. Problem Program
(정답률: 53%)
  • "Job Scheduler"는 처리프로그램과 관련이 없는 것이다. 이는 시스템에서 실행되는 작업들을 일정한 시간에 실행시키기 위한 스케줄링을 담당하는 소프트웨어이기 때문이다. 따라서 "Job Scheduler"는 처리프로그램과는 직접적인 관계가 없다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

72. 디스크 입·출력 요청 대기 큐에 다음과 같은 순서로 기억되어 있다. 현재 헤드가 53에 있을 때, 이들 모두를 처리하기 위한 총 이동 거리는 얼마인가? (단, FCFS 방식을 사용한다.)

  1. 320
  2. 640
  3. 710
  4. 763
(정답률: 64%)
  • FCFS 방식은 먼저 들어온 요청부터 처리하는 방식이므로, 디스크 헤드는 53에서 시작하여 요청이 들어온 순서대로 이동하면 된다. 따라서 이동 거리는 다음과 같다.

    - 98 - 53 = 45
    - 183 - 98 = 85
    - 37 - 183 = 146
    - 122 - 37 = 85
    - 14 - 122 = 108
    - 124 - 14 = 110
    - 65 - 124 = 59
    - 67 - 65 = 2

    따라서 총 이동 거리는 45 + 85 + 146 + 85 + 108 + 110 + 59 + 2 = 640 이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

73. 다중 처리기 운영체제 구조 중 Master/Slave(주/종)처리기에 대한 설명으로 틀린 것은?

  1. 비대칭 구조를 갖는다.
  2. 주 프로세서는 운영체제를 수행한다.
  3. 주 프로세서가 고장 날 경우에는 전체 시스템은 작동한다.
  4. 종 프로세서는 입·출력 발생 시 주 프로세서에게 서비스를 요청한다.
(정답률: 73%)
  • "주 프로세서가 고장 날 경우에는 전체 시스템은 작동한다."는 틀린 설명입니다. Master/Slave 구조에서는 주 프로세서가 시스템의 중앙 제어를 담당하고, 종 프로세서는 보조적인 역할을 수행합니다. 따라서 주 프로세서가 고장 날 경우, 시스템 전체가 정지될 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

74. 다음의 프로세스 상태 전이 중 전이의 원인이 프로세스 자신에게 있는 것은?

  1. 블럭
  2. 디스패치
  3. 웨이크 업
  4. 타이머 런 아웃
(정답률: 38%)
  • 프로세스가 입출력 작업 등의 외부 이벤트를 기다리는 동안 블럭 상태에 빠지게 됩니다. 이 때문에 블럭 상태 전이는 프로세스 자신에게 원인이 있는 것입니다. 따라서 "블럭"이 정답입니다. 디스패치는 프로세스가 실행되는 상태로 전이되는 것을 의미하며, 웨이크 업은 블럭 상태에 있는 프로세스를 깨워서 실행 가능한 상태로 만드는 것을 의미합니다. 타이머 런 아웃은 CPU 할당 시간이 다 된 프로세스가 실행 대기 상태로 전이되는 것을 의미합니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

75. 병행 프로그래밍 기법에서 발생할 수 있는 오류에 대한 방지 방법으로 틀린 것은?

  1. 모니터(Monitor)
  2. 비동기화(Asynchronization)
  3. 상호 배제(Mutual Exclusion)
  4. 세마포어(Semaphore)
(정답률: 47%)
  • 정답은 "비동기화(Asynchronization)"입니다.

    병행 프로그래밍에서 비동기화는 오류를 방지하는 방법 중 하나가 아닙니다. 오히려 비동기화는 동기화를 보장하지 않기 때문에 오류가 발생할 가능성이 더 높아질 수 있습니다.

    모니터, 상호 배제, 세마포어는 모두 동기화 기법으로, 공유 자원에 대한 접근을 제어하여 오류를 방지하는 방법입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

76. 계수 기반 페이지 교체 알고리즘이 아닌 것은?

  1. First-In First-Out
  2. Least Frequently Used
  3. Most Frequently Used
  4. Least Recently Used
(정답률: 58%)
  • "First-In First-Out"은 가장 먼저 들어온 페이지를 가장 먼저 교체하는 알고리즘이다. 따라서 가장 오래된 페이지를 우선적으로 교체하게 된다. 이와 달리 "Least Frequently Used"와 "Most Frequently Used"는 페이지의 사용 빈도에 따라 교체하는 알고리즘이며, "Least Recently Used"는 가장 오래 전에 사용된 페이지를 우선적으로 교체하는 알고리즘이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

77. 4개의 페이지를 수용할 수 잇는 주기억장치가 있으며, 초기에는 모두 비어 있다고 가정한다. 다음의 순서로 페이지 참조가 발생할 때, LRU페이지 교체 알고리즘을 사용할 경우 몇 번의 페이지 결함이 발생하는가?

  1. 4회
  2. 5회
  3. 6회
  4. 7회
(정답률: 59%)
  • LRU 페이지 교체 알고리즘은 가장 오래 전에 참조된 페이지를 교체하는 알고리즘이다. 따라서, 초기에는 모두 비어있는 상태이므로 페이지 결함이 발생한다.

    1. 1번 페이지 참조: [1]
    2. 2번 페이지 참조: [1, 2]
    3. 3번 페이지 참조: [1, 2, 3]
    4. 1번 페이지 참조: [2, 3, 1]
    5. 4번 페이지 참조: [3, 1, 4]
    6. 1번 페이지 참조: [3, 4, 1] (2번 페이지가 LRU이므로 교체)
    7. 2번 페이지 참조: [4, 1, 2] (3번 페이지가 LRU이므로 교체)
    8. 5번 페이지 참조: [1, 2, 5] (4번 페이지가 LRU이므로 교체)
    9. 1번 페이지 참조: [2, 5, 1] (3번 페이지가 LRU이므로 교체)

    따라서, 페이지 결함이 총 5회 발생한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

78. 천재지변이나 외부 침입자로부터의 보안을 의미하며, 연기나 열을 감지하고 사람의 음성, 지문 등을 확인 할 수 있는 보안 방법은?

  1. 내부 보안
  2. 운용 보안
  3. 시설 보안
  4. 사용자 인터페이스 보안
(정답률: 52%)
  • 시설 보안은 건물 내부와 외부에서 발생할 수 있는 천재지변이나 외부 침입자로부터의 보안을 의미합니다. 이를 위해 연기나 열을 감지하고 사람의 음성, 지문 등을 확인하여 보안을 유지합니다. 따라서 시설 보안이 정답입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

79. 부트 로더(BOOT LOADER)의 설명으로 옳은 것은?

  1. 램(RAM)에 기억되어 있다.
  2. 운영체제의 다른 이름이다.
  3. 전원을 켤때 작동하는 것이며, reset스위치와는 관련이 없다.
  4. 메모리가 비어 있는 상태에서 처음에 실행되는 프로그램이다.
(정답률: 64%)
  • 부트 로더는 컴퓨터의 전원을 켤 때, 메모리가 비어 있는 상태에서 처음에 실행되는 프로그램입니다. 따라서 "메모리가 비어 있는 상태에서 처음에 실행되는 프로그램이다."가 옳은 설명입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

80. 시스템은 일정 시간 단위로 CPU를 한 사용자에서 다음 사용자로 신속하게 전환함으로써, 각각의 사용자들은 실제로 자신만이 컴퓨터를 사용하고 있는 것처럼 사용할 수 있는 처리 방식은?

  1. Batch Processing System
  2. Off-Line Processing System
  3. Real Time Processing System
  4. Time-Sharing Processing System
(정답률: 70%)
  • 시스템이 일정 시간 단위로 CPU를 다른 사용자에게 전환함으로써, 각각의 사용자들은 자신만이 컴퓨터를 사용하고 있는 것처럼 처리를 할 수 있습니다. 이러한 처리 방식을 Time-Sharing Processing System이라고 합니다. 다른 보기들은 이와 다른 처리 방식을 가지고 있습니다. Batch Processing System은 일괄 처리 방식, Off-Line Processing System은 오프라인에서 처리하는 방식, Real Time Processing System은 실시간 처리 방식입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

5과목: 마이크로 전자계산기

81. 입·출력 장치끼리 인터럽트를 발생한 주변장치를 찾아내는 방식은?

  1. 폴링 인터럽트
  2. 벡터 인터럽트
  3. 마스크 인터럽트
  4. 데이지 체인
(정답률: 40%)
  • 데이지 체인은 인터럽트를 발생시킨 주변장치를 찾아내기 위해 각 장치마다 고유한 우선순위를 부여하고, 인터럽트가 발생하면 우선순위가 가장 높은 장치부터 검사하여 해당 장치가 인터럽트를 발생시켰는지 확인하는 방식입니다. 이 방식은 폴링 인터럽트와 달리 시스템의 부하를 줄일 수 있으며, 벡터 인터럽트와 마스크 인터럽트보다는 구현이 간단하고 비용이 적게 듭니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

82. 비동기식(Asynchronous) 직렬(Serial) 입·출력 인터페이스의 설명 중 옳은 것은?

  1. 데이터를 block으로 묶어서 전송하는 방식이다.
  2. 변복조장치(MODEM)를 사용한 장거리 데이터 전송은 불가능하다.
  3. 단위 데이터의 전후에 스타트(start) 신호와 스톱(stop) 신호가 필요하다.
  4. 고속 데이터 전송이 필요한 입출력 장치의 인터페이스에 적합하다.
(정답률: 49%)
  • 단위 데이터의 전후에 스타트(start) 신호와 스톱(stop) 신호가 필요한 이유는, 비동기식 직렬 입·출력 인터페이스에서는 데이터를 비트 단위로 전송하기 때문입니다. 이 때, 언제 데이터가 시작되고 끝나는지를 알려주는 신호가 필요하며, 이를 위해 스타트와 스톱 신호가 사용됩니다. 이러한 방식은 데이터 전송 속도가 느리고, 오류 검출 기능이 부족하다는 단점이 있지만, 간단하고 저렴한 장치로 구현할 수 있어서 일부 입·출력 장치에서는 여전히 사용되고 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

83. 표(Table)형식의 자료를 처리 할 때 가장 유용하게 사용할 수 있는 명령어의 주소 지정 방식은?

  1. Relative Addressing
  2. Indexed Addressing
  3. Absolute Addressing
  4. Implied Addressing
(정답률: 60%)
  • 표(Table)형식의 자료를 처리할 때는 각 행(row) 또는 열(column)의 시작 주소를 기준으로 일정한 간격으로 데이터가 저장되기 때문에, 주소 지정 방식 중에서도 일정한 간격으로 주소를 계산하는 Indexed Addressing 방식이 가장 유용하다. 이 방식은 인덱스 레지스터를 사용하여 기준 주소와 인덱스 값을 더하여 실제 데이터가 저장된 주소를 계산하는 방식으로, 표 형식의 자료를 처리할 때 각 행 또는 열의 시작 주소와 인덱스 간격만 알면 쉽게 데이터에 접근할 수 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

84. 마이크로컴퓨터의 시스템 소프트웨어 중 사용자가 작성한 프로그램을 실행하면서 에러를 검출할 때 사용되는 것은?

  1. 로더(loader)
  2. 디버거(debugger)
  3. 컴파일러(compiler)
  4. 텍스트 에디터(text editor)
(정답률: 69%)
  • 디버거는 프로그램 실행 중 발생하는 에러를 검출하고 수정하는 도구이다. 디버거를 사용하면 프로그램 실행 중 변수의 값을 확인하거나 코드의 실행 흐름을 추적할 수 있어서 에러를 찾아내기 쉽다. 따라서 사용자가 작성한 프로그램을 실행하면서 에러를 검출할 때 디버거를 사용한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

85. RISC 컴퓨터의 특징으로 틀린 것은?

  1. 명령어 수가 최소화 된다.
  2. 파이프라인이 효율적이다.
  3. 주소지정 방식이 다양하다.
  4. 명령어 길이가 고정적이어서 해독하기가 쉽다.
(정답률: 42%)
  • 주소지정 방식이 다양하다는 것은 RISC 컴퓨터에서는 주소지정 방식이 상대적으로 제한적이며, 대부분의 명령어가 레지스터를 이용한 연산에 기반하고 있기 때문에 주소지정 방식이 다양하지 않다는 것이 맞다. 따라서, 주어진 보기 중에서 "주소지정 방식이 다양하다."가 틀린 것이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

86. 컴퓨터 시스템을 사용하기 위해 근본적으로 필요한 프로그램으로 운영체제(OS), 각종 언어의 컴파일러, 링커, 로더, 텍스트 에디터, 라이브러리 프로그램, 진단 프로그램 등을 무엇이라 하는가?

  1. Application Program
  2. System Program
  3. Problem Program
  4. Macro Program
(정답률: 69%)
  • "System Program"은 컴퓨터 시스템을 사용하기 위해 근본적으로 필요한 프로그램들을 의미합니다. 이에 반해 "Application Program"은 특정 작업을 수행하기 위해 설계된 프로그램을 의미하며, "Problem Program"은 오류가 있는 프로그램을 의미합니다. "Macro Program"은 작업을 자동화하기 위해 사용되는 프로그램을 의미합니다. 따라서, 시스템을 운영하기 위해 필요한 프로그램들을 모두 포함하는 "System Program"이 정답입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

87. DMA(Direct Memory Access) 방식에 대한 설명으로 틀린 것은?

  1. 입·출력 전송 시 DMA는 CPU에 버스 사용을 요청한 후 CPU의 레지스터를 경유하여 자료를 전송하게 된다.
  2. DMA제어기는 Address register, Word counter, Control and Status register로 구성되어 있다.
  3. DMA는 블록으로 대용량의 데이터를 전송할 수 있다.
  4. Cycle Stealing방식은 한 번에 하나의 워드만을 전송하는 방식이다.
(정답률: 31%)
  • 입·출력 전송 시 DMA는 CPU에 버스 사용을 요청한 후 CPU의 레지스터를 경유하여 자료를 전송하게 된다. - 이 설명은 옳은 설명이다. DMA는 CPU의 개입 없이 입·출력 장치와 메모리 간 데이터 전송을 수행하는 방식이다. DMA 제어기는 CPU의 개입 없이 입·출력 장치와 메모리 간 데이터 전송을 수행하기 위해 Address register, Word counter, Control and Status register로 구성되어 있다. DMA는 블록으로 대용량의 데이터를 전송할 수 있으며, Cycle Stealing 방식은 DMA가 메모리와 입·출력 장치 간 데이터 전송을 수행할 때 CPU의 일부 시간을 빼앗아 사용하는 방식이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

88. DRAM에 관한 설명으로 틀린 것은?

  1. 읽기 전용 메모리이다.
  2. refresh 회로가 필요하다.
  3. 가격이 저렴하고, 전력 소모가 적다.
  4. 경제성이 뛰어나 주기억장치로 많이 사용된다.
(정답률: 59%)
  • DRAM은 "읽기 전용 메모리"가 아니라 "동적 랜덤 액세스 메모리"이다. 이는 데이터를 읽고 쓰는 데 사용되는 메모리로, 데이터를 저장하기 위해 전력이 필요하며, 일정 시간마다 refresh 회로를 통해 데이터를 유지해야 한다. 가격이 저렴하고 전력 소모가 적어 경제성이 뛰어나 주기억장치로 많이 사용된다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

89. ADD B라는 인스트럭션의 형식은 무엇인가?

  1. 1-주소 인스트럭션
  2. 2-주소 인스트럭션
  3. 3-주소 인스트럭션
  4. 자료자신 인스트럭션
(정답률: 58%)
  • ADD B 인스트럭션은 1-주소 인스트럭션 형식을 따른다. 이는 명령어에서 하나의 주소만 사용되며, 해당 주소에 있는 값을 더하는 연산을 수행한다는 것을 의미한다. 즉, ADD B는 B라는 주소에 있는 값을 현재 누적된 값에 더하는 명령어이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

90. 번지부에 표현된 값을 특정값과 계산하여 상대적인 위치로 데이터를 지적하는 번지 지정 방식은?

  1. direct address
  2. indirect address
  3. immediate data
  4. relative address
(정답률: 54%)
  • 번지부에 표현된 값은 상대적인 위치를 나타내므로, 특정값과 계산하여 상대적인 위치로 데이터를 지적하는 방식이 상대 주소(relative address) 방식이다. 따라서 정답은 "relative address"이다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

91. 스택(Stack)에 대한 설명으로 틀린 것은?

  1. 서브루틴 호출 시 복귀 주소가 저장된다.
  2. 스택은 선입선출(FIFO, First-In First-Out)구조로 되어있다.
  3. 스택 포인터에 의해 가장 최근에 들어온 데이터의 주소가 지시되어 진다.
  4. 스택에 데이터를 저장하기 위해서는 PUSH명령어를 사용한다.
(정답률: 68%)
  • 스택은 선입선출(FIFO, First-In First-Out)구조로 되어있다. (이 부분이 틀린 것이다.)

    스택은 후입선출(LIFO, Last-In First-Out) 구조로 되어있다. 가장 최근에 들어온 데이터가 가장 먼저 나가는 구조이다. 스택 포인터는 스택의 가장 위에 있는 데이터의 주소를 가리키며, PUSH 명령어를 사용하여 데이터를 스택에 저장할 수 있다. 서브루틴 호출 시에는 복귀 주소를 스택에 저장하여, 서브루틴이 끝난 후에는 저장된 복귀 주소를 참조하여 이전 위치로 돌아갈 수 있다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

92. 내부 인터럽트의 발생 조건이 아닌 것은?

  1. 레지스터 오버플로우
  2. “0”으로 나누기
  3. 스택 오버플로우
  4. I/O 장치의 데이터 전송 요구
(정답률: 68%)
  • 내부 인터럽트는 프로그램 실행 중에 발생하는 예외 상황으로, 레지스터 오버플로우, “0”으로 나누기, 스택 오버플로우 등의 오류가 발생할 때 발생합니다. 하지만 I/O 장치의 데이터 전송 요구는 외부 인터럽트의 일종으로, 외부 장치에서 발생하는 신호에 의해 발생합니다. 따라서 I/O 장치의 데이터 전송 요구는 내부 인터럽트의 발생 조건이 아닙니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

93. 마이크로프로세서 내에서 연산 후 결과가 저장되는 레지스터는?

  1. 누산기
  2. 인덱스 레지스터
  3. 프로그램 카운터
  4. 인스트럭션 레지스터
(정답률: 61%)
  • 누산기는 마이크로프로세서 내에서 연산을 수행하고 그 결과를 저장하는 레지스터입니다. 다른 레지스터들은 주로 프로그램 실행을 위한 정보를 저장하거나 제어를 위한 목적으로 사용됩니다. 따라서 누산기가 연산 결과를 저장하는 레지스터라는 이유로 정답으로 선택됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

94. memory mapped I/O에 관한 설명 중 틀린 것은?

  1. I/O 전달 명령과 memory 전달 명령은 같다.
  2. 기억장소상의 주소와 입출력 주소를 특별히 구분하지 않는다.
  3. 기억장소의 주소 범위는 인터페이스 주소할당에 영향을 받지 않는다.
  4. 명령어 활용면에서 isolated 입출력에 비해서 유리하다.
(정답률: 35%)
  • "I/O 전달 명령과 memory 전달 명령은 같다."는 memory mapped I/O에 대한 설명이 아니라, direct memory access (DMA)에 대한 설명이다. 따라서 이것이 틀린 것이다.

    기억장소상의 주소와 입출력 주소를 특별히 구분하지 않는다는 것은 memory mapped I/O의 특징 중 하나이다.

    기억장소의 주소 범위는 인터페이스 주소할당에 영향을 받지 않는다는 것은 memory mapped I/O가 인터페이스 주소 할당에 영향을 받지 않는다는 것을 의미한다. 즉, 인터페이스 주소 할당과는 별개로 기억장소의 주소 범위를 사용할 수 있다는 것이다.

    명령어 활용면에서 isolated 입출력에 비해서 유리하다는 것은 memory mapped I/O가 isolated I/O에 비해 명령어 사용이 간편하다는 것을 의미한다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

95. ALU의 기능에 대한 설명 중 틀린 것은

  1. 가산을 한다.
  2. AND 동작을 한다.
  3. complement 동작을 한다.
  4. PC를 1만큼 증가시킨다.
(정답률: 52%)
  • ALU는 산술 연산과 논리 연산을 수행하는 장치이며, PC를 증가시키는 기능은 ALU에 포함되어 있지 않습니다. PC를 증가시키는 기능은 CPU의 제어 장치에서 수행됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

96. 동시에 여러 개의 입·출력장치를 제어할 수 있는 채널은?

  1. 멀티플렉서 채널
  2. 레지스터 채널
  3. 직렬 채널
  4. Simplex 채널
(정답률: 75%)
  • 멀티플렉서 채널은 여러 개의 입·출력장치를 하나의 채널로 제어할 수 있기 때문에 동시에 여러 개의 입·출력장치를 제어할 수 있습니다. 다른 선택지인 레지스터 채널은 레지스터를 이용하여 입·출력장치를 제어하는 방식이며, 직렬 채널은 한 번에 하나의 비트만 전송할 수 있는 방식입니다. Simplex 채널은 단방향 통신만 가능한 방식이므로 여러 개의 입·출력장치를 제어할 수 없습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

97. 가상(virtual) 메모리에 관한 설명 중 옳은 것은?

  1. 데이터를 미리 주기억장치에 넣어준다.
  2. 주기억장치에서 많은 데이터를 한 번에 가져온다.
  3. 보조기억장치를 이용한 주기억장치의 용량확보이다.
  4. 자주 참조되는 프로그램과 데이터를 모은 메모리이다.
(정답률: 67%)
  • 가상 메모리는 보조기억장치를 이용하여 주기억장치의 용량을 확보하는 것입니다. 이는 주기억장치의 용량이 한정되어 있을 때, 보조기억장치를 이용하여 필요한 데이터를 주기억장치에 옮겨서 사용하는 것을 말합니다. 이를 통해 주기억장치의 용량을 확보하고, 더 많은 프로그램과 데이터를 처리할 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

98. CPU주변회로의 Read/Write signal 이나 Chip Select signal등의 신호는 어느 버스에 싣게 되는가?

  1. 자료 버스
  2. 주소 버스
  3. 제어 버스
  4. 보조 버스
(정답률: 68%)
  • CPU 주변 회로의 Read/Write signal이나 Chip Select signal 등의 신호는 제어 버스에 싣게 됩니다. 이는 제어 버스가 시스템의 제어 신호를 전송하는 데 사용되는 버스이기 때문입니다. 자료 버스는 데이터 전송에 사용되는 버스이고, 주소 버스는 메모리나 입출력 장치의 주소를 전송하는 데 사용되는 버스입니다. 보조 버스는 다른 버스와는 별개로 사용되는 버스입니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

99. CPU 관여 없이 주기억장치와 입·출력장치 사이에서 입·출력을 제어하는 것은? (문제오류로 실제 시험에서는 1, 2번이 정답처리 되었습니다. 여기서는 1번을 누르면 정답 처리 됩니다.)

  1. 채널에 의한 입·출력
  2. DMA에 의한 입·출력
  3. 인터럽트에 의한 입·출력
  4. 프로그램에 의한 입·출력
(정답률: 64%)
  • 채널에 의한 입·출력은 CPU의 관여 없이 입·출력장치와 주기억장치 사이에서 데이터 전송을 제어하는 방식입니다. 채널은 입·출력장치를 직접 제어하며, CPU는 채널에게 입·출력 작업을 지시하고 결과를 받아오는 역할을 합니다. 이 방식은 CPU의 부담을 줄이고 입·출력 작업을 빠르게 처리할 수 있습니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

100. 특정한 비트만 0으로 하기 위한 연산은?

  1. OR 연산
  2. AND 연산
  3. EX-OR 연산
  4. 보수 연산
(정답률: 38%)
  • AND 연산은 두 비트가 모두 1일 때만 결과가 1이 되므로, 특정한 비트를 0으로 만들기 위해서는 해당 비트가 1인 다른 비트와 AND 연산을 하면 해당 비트는 0이 되고, 다른 비트는 그대로 유지됩니다.
profile_image
1

*오류신고 접수시 100포인트 지급해드립니다.

< 이전회차목록 다음회차 >