2023년 2학기 방송통신대 프로그래밍언어론 중간과제물
천세진
다운로드
장바구니
과제정보
학과 | 컴퓨터과학과 | 학년 | 2학년 |
---|---|---|---|
과목명 | 프로그래밍언어론 | 자료 | 5건 |
공통 |
1. 다음에 대해 답하시오. (15점)
(1) 메모리에 적재된 프로그램의 기계어 명령어 하나를 컴퓨터의 CPU가 수행하는 과정에 대해간략히 설명하시오. (2) 고급 프로그래밍 언어로 작성된 프로그램을 컴퓨터의 CPU가 수행하기 위해 필...
1. 다음에 대해 답하시오. (15점)
(1) 메모리에 적재된 프로그램의 기계어 명령어 하나를 컴퓨터의 CPU가 수행하는 과정에 대해간략히 설명하시오. (2) 고급 프로그래밍 언어로 작성된 프로그램을 컴퓨터의 CPU가 수행하기 위해 필요한 프로그래밍 언어 구현 방법을 두 가지 이상 이름만 나열하시오. (3) (2)에서 제시한 방법 중 한 가지에 대해서만 10줄에서 20줄 사이로 자세히 설명하시오. 2. 다음에 대해 답하시오. (15점) (1) BNF로 표현된 다음 세 개의 구문을 하나의 EBNF로 합쳐 표현하고 그렇게 표현한 이유를 설명하시오. <do-while문> ::= do { <문장들> } while <논리식> ; <문장들> ::= <문장> <문장들> | <문장> <논리식> ::= True | False (2) (1)에서 답한 EBNF 표현을 구문 도표로 표현하고 그렇게 표현한 이유를 설명하시오. |
소개글
"2023년 2학기 방송통신대 프로그래밍언어론 중간과제물"에 대한 내용입니다.목차
1. 다음에 대해 답하시오. (15점)(1) 메모리에 적재된 프로그램의 기계어 명령어 하나를 컴퓨터의 CPU가 수행하는 과정에 대해 간략히 설명하시오.
① 명령어 인출(Instruction Fetch)
② 명령어 해독(Instruction Decode)
③ 명령어 실행(Instruction Execute)
(2) 고급 프로그래밍 언어로 작성된 프로그램을 컴퓨터의 CPU가 수행하기 위해 필요한 프로그래밍 언어 구현 방법을 두 가지 이상 이름만 나열하시오.
(3) (2)에서 제시한 방법 중 한 가지에 대해서만 10줄에서 20줄 사이로 자세히 설명하시오.
2. 다음에 대해 답하시오. (15점)
(1) BNF로 표현된 다음 세 개의 구문을 하나의 EBNF로 합쳐 표현하고 그렇게 표현한 이유를 설명하시오.
<do-while문> ::= do { <문장들> } while <논리식> ;
<문장들> ::= <문장> <문장들> | <문장>
<논리식> ::= True | False
(2) (1)에서 답한 EBNF 표현을 구문 도표로 표현하고 그렇게 표현한 이유를 설명하시오.
본문내용
1. 다음에 대해 답하시오.(1) 메모리에 적재된 프로그램의 기계어명령어 하나를 컴퓨터의 CPU가 수행하는 과정에 대해 간략히 설명하시오.
① 명령어 인출 (Instruction Fetch)
명령어 인출 (Instruction Fetch)은 중앙 처리 장치(CPU)의 핵심 단계 중 하나로, 프로그램 실행의 시작점이며, 명령어 실행 주기의 첫 번째 단계입니다. 이 단계에서 CPU는 다음에 실행할 명령어의 주소를 결정하고 해당 명령어를 메모리로부터 인출하여 처리합니다. 프로그램 카운터 (Program Counter, PC) : CPU는 프로그램 카운터라고 하는 특별한 레지스터의 값을 참조합니다. 이 레지스터는 현재 실행 중인 프로그램의 다음 명령어의 주소를 가지고 있습니다. 명령어 인출 단계에서 CPU는 PC 레지스터의 값을 읽어옵니다. 메모리 주소 버스 전달 : CPU는 PC 레지스터에서 읽어온 다음 명령어의 주소를 메모리 주소 버스에 전달합니다. 메모리 주소 버스는 CPU와 시스템 메모리 간의 통신 수단으로, 주소 정보를 메모리에 전달하는 역할을 합니다. 메모리 접근 : 메모리 주소 버스로 전달된 주소를 기반으로 시스템 메모리에서 명령어를 찾아옵니다. CPU는 주소로 식별된 메모리 위치에서 데이터를 읽는 명령을 발생시킵니다. 명령어 인출 : 시스템 메모리에서 명령어를 읽어옵니다. 메모리로부터 읽어온 명령어는 주로 고속 기억 장치인 캐시 메모리에 임시로 저장됩니다.