스크랩

각 복사하기 버튼을 이용하여 블로그나 카페에 HTML 형식으로 붙여넣기 하실 수 있습니다.

소스복사하기

2016년 2학기 컴파일러구성 출석대체시험 핵심체크

다운로드: icon20162_출석_컴퓨터3_컴파일러구성.pdf


목차
제1장 컴파일러의 개요
제2장 형식언어와 오토마타
제3장 어휘분석

- 각 장별 출제예상문제 (해설포함)
 
본문내용
제1장 컴파일러의 개요

1. 컴파일러의 필요성
(1) 개요
- 원시프로그램 -> “번역기” -> 목적프로그램
번역기(translator) : 고급언어는 배우기 쉽고, 프로그램 작성이 용이하며 디버깅이 쉽고, 이식성을 높일 수 있지만, 이러한 언어로 작성된 프로그램은 기계가 이해할 수 있는 기계어로 바꾸어 주어야 한다. 번역기란 하나의 프로그래밍 언어로 작성된 프로그램을 입력하여 그와 동등한 의미를 갖는 다른 프로그래밍 언어로 된 프로그램을 출력하는 일종의 프로그램이다.

예) 어셈블리어로 작성된 프로그램 -> “어셈블러” -> 기계어 프로그램
고급언어로 작성된 프로그램 -> “컴파일러” -> 어셈블러어 또는 기계어 프로그램
고급언어로 작성된 프로그램 -> “프로프로세서” -> 고급언어로 작성된 프로그램
고급언어로 작성된 프로그램 -> “인터프리터” -> 실행결과

(2) 번역기의 종류와 기능
㉠ 어셈블러: 어셈블리어로 작성된 프로그램을 그에 대응하는 기계어로 번역하여 주는 번역기
㉡ 컴파일러: 원시언어가 FORTRAM, COBOL, PASCAL 등의 고급언어이고 목적언어가 어셈블리어나 기계어인 경우
㉢ 프리프로세서: 프로그래밍 언어에 유용한 기능을 추가하여 언어를 확장시켜 주는 역할을 함
㉣ 인터프리터: 고급언어를 입력으로 받아들여서 번역과 동시에 실행을 한 후 그 결과를 출력하기 때문에 APL, SNOBOL 등과 같은 대화용 언어를 구현할 경우 사용됨

2. 컴파일러와 인터프리터
(1) 컴파일러
- 고급 프로그래밍 언어를 기계어로 번역하는 프로그램
- 어휘분석단계, 구문분석단계, 의미분석단계, 중간코드단계, 코드최적화단계, 코드생성단계 의 6단계로 구성
- 입력 프로그램의 전체 문장을 입력된 순서대로 처리 후 전체적인 하나의 목적프로그램 완성 -> load -> 실행
- 시간이 효율적이나 큰 기억장소를 요구


- 중략 -
2024-04-19 00:24:24 211.234.109.229/data/data_scrap.html 최근 수정일: 2019-11-06 15:55:18. 총퀴리수 : 3 총쿼리시간 : 0.00216 [0.00051]/[ DB:report] select count(*) AS CNT from psCart where SessNum='20240419002424831144'; [0.00045]/[ DB:report] SELECT seq FROM psRlist WHERE rpID=10414234; [0.00120]/[ DB:report] SELECT * FROM psReportCo WHERE rpID=10414234;