
- 강사: 데니즈 펠리바노글루
- 강좌: 40
- 학생들: 13414
- 런닝타임: 10 주
이 강의를 하게 된 동기
컴파일러를 공부해야 하는 이유는 무엇입니까? 그것의 용도는 무엇입니까? 왜 이 코스를 해야 합니까? 글쎄, 이것들은 당신이 그것을 해야 하는 이유 중 일부입니다.
. 언어 처리는 프로그래밍의 중요한 구성 요소입니다.
. 많은 수의 시스템 소프트웨어 및 응용 프로그램에는 구조화된 입력이 필요합니다.
. 운영 체제(명령줄 처리)
. 데이터베이스(쿼리 언어 처리)
. Latex, Nroff, Troff, 방정식 편집기, M4와 같은 유형 설정 시스템
. VLSI 설계 및 테스트
, . 소프트웨어 품질 보증 및 소프트웨어 테스팅
. XML, html 기반 시스템, Awk, Sed, Emacs, vi ..
. 양식 처리, 양식에서 자동으로 정보 추출
. 컴파일러, 어셈블러 및 링커
. 고급 언어 대 언어 번역가
. 자연어 처리
. 입력에 구조가 있는 경우 언어 처리를 생각할 수 있습니다.
. 왜 컴파일러를 공부해야 할까요? 컴파일러는 언어 처리 기술의 전체 스펙트럼을 사용합니다.
이름에서 알 수 있듯이 배너 디자인에 특별히 사용되는 Unix 배너 프로그램의 예입니다. 여기서 우리는 알파벳 "I"를 인쇄하려고 합니다. 오른쪽에 있는 표현을 사용하면 작업이 훨씬 간단해집니다. 그리고 이 모든 작업을 수행하기 위해 필요한 것은 오른쪽의 상위 수준 표현을 처리하는 컴파일러입니다. 따라서 컴파일러는 코더의 삶을 쉽게 만듭니다.
많은 일반 응용 프로그램은 개발 단계에서 구조화된 입력이 필요합니다(Unix의 배너 프로그램 설계).
xxxxxxxxx | 9x | |
|---|---|---|
xxxxxxxxx | 9x | |
xxxxxxxxx | 9x | |
트리플 엑스 | 3b 3배 | 3 9x |
트리플 엑스 | 3b 3배 | 6 3b 3배 |
트리플 엑스 | 3b 3배 | 3 9x |
트리플 엑스 | 3b 3배 | |
트리플 엑스 | 3b 3배 | |
트리플 엑스 | 3b 3배 | |
xxxxxxxxx | 9x | |
xxxxxxxxx | 9x | |
xxxxxxxxx | 9x | |
우리는 과정에서 무엇을 배울 것인가? 자 , 이제 드디어 중요한 질문이 나옵니다. 이 강좌에서 무엇을 배우게 될까요? 짐작 가는 게 있으신가요? 고급 언어가 기계어 코드를 생성하기 위해 어떻게 구현되는지, 컴파일러의 전체 구조와 다양한 구성 요소가 어떻게 결합되어 컴파일러가 되는지에 대한 설명입니다. . 과정에는 이론 및 실습 구성 요소가 있습니다. 둘 다 프로그래밍 언어를 구현하는 데 필요합니다. 이론의 실제 적용에 중점을 둘 것입니다. . 알고리즘의 정확성에 대한 증명보다는 알고리즘과 데이터 구조에 중점을 둘 것입니다. . 어휘 분석 이론, 구문 분석, 유형 검사, 런타임 시스템, 코드 생성, 최적화(증명 등에 너무 깊이 들어가지 않고) . 어휘 분석기, 파서, 유형 검사기, 런타임 시스템, 코드 생성기, 최적화 개발 기술. 컴파일러의 다양한 부분을 개발하기 위한 도구 및 사양 사용 과정이 끝날 때까지 우리는 무엇을 달성할 것으로 기대합니까?
|
필수 배경 및 독해
. 데이터 구조, 컴퓨터 구성, 운영 체제 과정
. C/C++/Java 프로그래밍 언어 능숙도
. 적어도 하나의 어셈블리 언어, 어셈블러, 링커 및 로더, 심볼릭 디버거에 대한 지식
. Aho, Sethi 및 Ullman이 작성한 컴파일러 디자인에 대한 전체 책(코드 최적화에 대한 장 제외)을 읽어야 합니다.
모든 자료는 강의에서 다루지 않습니다.
무료 인증
Academy Europe은 공인 온라인 과정의 공식 증빙 및 인정인 고품질 공식 졸업장, 인증서 및 전자 인증서를 제공합니다. 모든 학생의 학습 능력 및 높은 결과 달성 능력을 보여주며 이력서, 입사 지원서 및 자기 개선을 포함하여 개인 경력을 증진하는 데 매우 유용합니다.
Academy Europe에서 수료증을 받으려면 어떻게 해야 합니까?
- 코스를 마친 후에는 코스의 모든 수업이 끝날 때 "완료" 링크를 클릭해야 합니다.
- 물론 모든 수업을 마치면 마지막 수업이 끝날 때 "과정 끝내기" 링크가 활성화됩니다.
- "과정 끝내기" 링크를 클릭하면 공식적으로 Academy Europe에서 과정을 마칠 수 있습니다. 그러면 수료한 과정의 "인증서" 페이지가 자동으로 활성화됩니다.
- "인증서" 링크를 클릭하면 온라인으로 인증서를 보고 다운로드할 수 있습니다.
샘플: 수평 디플로마 – 수평 인증서 – 수직 전자 인증서

사전 조건
그래픽 사용자 인터페이스, 객체 지향 프로그래밍, 소프트웨어 도구 및 메뉴에 대한 기본 지식은 이 튜토리얼의 유일한 전제 조건입니다.
아카데미 유럽에서 이 과정을 진행하기 전에 우리는 당신이 좋은 적성과 논리적으로 생각할 수 있다고 가정합니다. 당신은 다른 것을 시도하고 싶어해야합니다.
코스의 이상적인 후보자는 일반적으로 다음을 소유합니다.
– 규율과 세심함
– 연구를 수행할 수 있는 능력
– 신속하고 효율적이며 정확하게 작업을 수행할 수 있는 능력
– 분석적 판단
– 기술/과학적 데이터 해석에 대한 인내심
– 배우고자 하는 의지, 팔을 걷어붙이고 꿈을 향해 노력하는 자세!
– 컴퓨터, 태블릿 또는 스마트폰 및 인터넷 연결
– 기본적인 컴퓨터 기술
오디언스 (Audience)
이 튜토리얼은 인간의 컴퓨터 상호작용을 직업의 다음 단계로 기꺼이 받아들이고자 하는 사용자를 위해 만들어졌습니다.
Academy Europe의 이 과정은 학생들에게 양질의 교육과 훈련을 제공하는 것을 목표로 합니다.
Academy Europe은 학생, 특정 학습 요구 사항 및 전반적인 학습 성공에 전념합니다.
이 과정은 학생 중심의 독립적인 학습, 비동기식 학습 접근 방식을 지향합니다.
Academy Europe에서 이 과정을 마친 학생들은 자신의 경력에서 자기 계발과 승진을 얻게 됩니다.
이 과정은 오디오 및 영상, 비디오, 구두 프레젠테이션 및 기사를 통해 사용자에게 제공되는 최소 두 가지 학습 기술을 기반으로 하며 모두 원격 교육 접근 방식과 동기화됩니다.
교육 과정
- 4 구간
- 40 레슨
- 10의 주
- 코스 소개1
- 컴파일러 소개31
- 3.1컴파일러란?
- 3.2번역하는 방법?
- 3.3큰 그림
- 3.4쉽게 번역하는 방법?
- 3.5처음 몇 단계
- 3.6어휘 분석
- 3.7다음 단계
- 3.8파싱
- 3.9의미 이해
- 3.10의미 분석
- 3.11의미론적 분석에 대한 추가 정보
- 3.12다시 한 번 컴파일러 구조
- 3.13프런트 엔드 단계
- 3.14구문 분석
- 3.15의미 분석
- 3.16코드 최적화
- 3.17최적화의 예
- 3.18코드 생성
- 3.19중간 코드 생성
- 3.20번역 후 최적화
- 3.21컴파일러 구조
- 3.22최종 컴파일러 구조
- 3.23모델의 장점
- 3.24컴파일러 설계의 문제
- 3.25범용 중급 언어
- 3.26컴파일러가 올바른 코드를 생성하는지 어떻게 알 수 있습니까?
- 3.27개발 및 테스트 노력을 줄이는 방법은 무엇입니까?
- 3.28사양 및 컴파일러 생성기
- 3.29컴파일러를 리타게팅하는 방법?
- 3.30부트 스트랩
- 3.3121세기 컴파일러
- 어휘 분석7
- 과정 수료1