EA0015: 컴파일러

Similar documents
EA0015: 컴파일러

untitled

자연언어처리

<C1DFB1DE2842C7FC292E687770>

Microsoft PowerPoint - chap5.ppt

내지4월최종

우리나라의 전통문화에는 무엇이 있는지 알아봅시다. 우리나라의 전통문화를 체험합시다. 우리나라의 전통문화를 소중히 여기는 마음을 가집시다. 5. 우리 옷 한복의 특징 자료 3 참고 남자와 여자가 입는 한복의 종류 가 달랐다는 것을 알려 준다. 85쪽 문제 8, 9 자료

상품 전단지

::: 해당사항이 없을 경우 무 표시하시기 바랍니다. 검토항목 검 토 여 부 ( 표시) 시 민 : 유 ( ) 무 시 민 참 여 고 려 사 항 이 해 당 사 자 : 유 ( ) 무 전 문 가 : 유 ( ) 무 옴 브 즈 만 : 유 ( ) 무 법 령 규 정 : 교통 환경 재

2

DBPIA-NURIMEDIA

화이련(華以戀) hwp

ÆòÈ�´©¸® 94È£ ³»Áö_ÃÖÁ¾

歯1##01.PDF

<5BC1F8C7E0C1DF2D31B1C75D2DBCF6C1A4BABB2E687770>

120229(00)(1~3).indd

01Report_210-4.hwp

<C3D1BCB15FC0CCC8C45FBFECB8AE5FB1B3C0B0C0C75FB9E6C7E D352D32315FC5E4292E687770>



교육 과 학기 술부 고 시 제 호 초 중등교육법 제23조 제2항에 의거하여 초 중등학교 교육과정을 다음과 같이 고시합니다. 2011년 8월 9일 교육과학기술부장관 1. 초 중등학교 교육과정 총론은 별책 1 과 같습니다. 2. 초등학교 교육과정은 별책

시험지 출제 양식

¸é¸ñ¼Ò½ÄÁö 63È£_³»Áö ÃÖÁ¾

177

제주어 교육자료(중등)-작업.hwp

<C3D6C1BE5FBBF5B1B9BEEEBBFDC8B0B0DCBFEFC8A C3D6C1BEBABB292E687770>

초등국어에서 관용표현 지도 방안 연구

6±Ç¸ñÂ÷

과 위 가 오는 경우에는 앞말 받침을 대표음으로 바꾼 [다가페]와 [흐귀 에]가 올바른 발음이 [안자서], [할튼], [업쓰므로], [절믐] 풀이 자음으로 끝나는 말인 앉- 과 핥-, 없-, 젊- 에 각각 모음으로 시작하는 형식형태소인 -아서, -은, -으므로, -음

민주장정-노동운동(분권).indd

untitled

<C0CEBCE2BABB2D33C2F7BCF6C1A420B1B9BFAAC3D1BCAD203130B1C72E687770>


E1-정답및풀이(1~24)ok

< BDC3BAB8C1A4B1D4C6C75BC8A3BFDC D2E687770>

<C1B6BCB1B4EBBCBCBDC3B1E2342DC3D6C1BE2E687770>

최우석.hwp

교사용지도서_쓰기.hwp

0429bodo.hwp

時 習 說 ) 5), 원호설( 元 昊 說 ) 6) 등이 있다. 7) 이 가운데 임제설에 동의하는바, 상세한 논의는 황패강의 논의로 미루나 그의 논의에 논거로서 빠져 있는 부분을 보강하여 임제설에 대한 변증( 辨 證 )을 덧붙이고자 한다. 우선, 다음의 인용문을 보도록

cls46-06(심우영).hwp

伐)이라고 하였는데, 라자(羅字)는 나자(那字)로 쓰기도 하고 야자(耶字)로 쓰기도 한다. 또 서벌(徐伐)이라고도 한다. 세속에서 경자(京字)를 새겨 서벌(徐伐)이라고 한다. 이 때문에 또 사라(斯羅)라고 하기도 하고, 또 사로(斯盧)라고 하기도 한다. 재위 기간은 6

n 정의 정규표현 (Regular Expression) n 정규문법 G 를대수학적인성질로표현 n 정규언어에속해있는스트링의모양을직접기술 n 정규문법은문법이나타내는언어의형태를체계적으로구하여정규표현으로나타낼수있음. 정규문법 (Regular ) 정규표현 (Regular ) 유

Microsoft PowerPoint - PL_03-04.pptx

장: 200 세외수입 관: 210 경상적세외수입 항: 213 수수료수입 (단위:천원) [ 일반회계 ] 1,405,842 1,399,860 5,982 < 청소행정과 > 1,028,442 1,022,460 5,982 사업장종량제봉투 제작비용(30L) 79.43원*30,00

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp

chap 5: Trees

< B5BFBEC6BDC3BEC6BBE E687770>

<3130BAB9BDC428BCF6C1A4292E687770>

11민락초신문4호


제1절 조선시대 이전의 교육

사진 24 _ 종루지 전경(서북에서) 사진 25 _ 종루지 남측기단(동에서) 사진 26 _ 종루지 북측기단(서에서) 사진 27 _ 종루지 1차 건물지 초석 적심석 사진 28 _ 종루지 중심 방형적심 유 사진 29 _ 종루지 동측 계단석 <경루지> 위 치 탑지의 남북중심

새만금세미나-1101-이양재.hwp

??

652

歯 조선일보.PDF

<33B1C7C3D6C1BEBABB28BCF6C1A42D E687770>

96부산연주문화\(김창욱\)

???? 1

Semantic Consistency in Information Exchange

chap 5: Trees

행당중학교 감사 7급 ~ 성동구 왕십리로 189-2호선 한양대역 4번출구에서 도보로 3-4분 6721 윤중중학교 감사 7급 ~ 영등포구 여의동로 3길3 용강중학교 일반행정 9급 ~ 1300

목 차 국회 1 월 중 제 개정 법령 대통령령 7 건 ( 제정 -, 개정 7, 폐지 -) 1. 댐건설 및 주변지역지원 등에 관한 법률 시행령 일부개정 1 2. 지방공무원 수당 등에 관한 규정 일부개정 1 3. 경력단절여성등의 경제활동 촉진법 시행령 일부개정 2 4. 대

종사연구자료-이야기방 hwp

정 답 과 해 설 1 (1) 존중하고 배려하는 언어생활 주요 지문 한 번 더 본문 10~12쪽 [예시 답] 상대에게 상처를 주고 한 사 람의 삶을 파괴할 수도 있으며, 사회 전체의 분위기를 해쳐 여러 가지 사회 문제를 발생시킬 수 있다. 04 5

삼외구사( 三 畏 九 思 ) 1981년 12월 28일 마산 상덕법단 마산백양진도학생회 회장 김무성 외 29명이 서울 중앙총본부를 방문하였을 때 내려주신 곤수곡인 스승님의 법어 내용입니다. 과거 성인께서 말씀하시길 道 를 가지고 있는 사람과 어울려야만 道 를 배울 수 있

zb 2) zb3) 나 위 시와 보기의 공통적인 표현 방법이 아닌 것은? 뻐꾹새야 뻐꾹새야 뻐꾹뻐꾹 울어 주면 < 보기> 고개를 넘어서 마을로 뻐꾹새야 뻐꾹새야 뻐꾹뻐꾹 울어 주면 밭을 매는 우리 엄마 허리 허리 덜 아프고 ᄂ밭을 매는 우리 엄마 허리 허리 덜 아프고

<34B1C720C0CEB1C7C4A7C7D828C3D6C1BEC6EDC1FD D28BCF6C1A4292E687770>

160215

<B8AEC6F7C6AEBAE4BEEE20C0CEBCE2>

05_tree

참고 금융분야 개인정보보호 가이드라인 1. 개인정보보호 관계 법령 개인정보 보호법 시행령 신용정보의 이용 및 보호에 관한 법률 시행령 금융실명거래 및 비밀보장에 관한 법률 시행령 전자금융거래법 시행령 은행법 시행령 보험업법 시행령 자동차손해배상 보장법 시행령 자본시장과

hwp

580 인물 강순( 康 純 1390(공양왕 2) 1468(예종 즉위년 ) 조선 초기의 명장.본관은 신천( 信 川 ).자는 태초( 太 初 ).시호는 장민( 莊 愍 ).보령현 지내리( 保 寧 縣 池 內 里,지금의 보령시 주포면 보령리)에서 출생하였다.아버지는 통훈대부 판무

미디어펜 기고문

<C1DFB0B3BBE7B9FD3128B9FDB7C92C20B0B3C1A4B9DDBFB5292E687770>

ad hwp

3. 은하 1 우리 은하 위 : 나선형 옆 : 볼록한 원반형 태양은 은하핵으로부터 3만광년 떨어진 곳에 위치 2 은하의 분류 규칙적인 모양의 유무 타원은하, 나선은하와 타원은하 나선팔의 유무 타원은하와 나선 은하 막대 모양 구조의 유무 정상나선은하와 막대나선은하 4.

근대문화재분과 제4차 회의록(공개)

인천광역시의회 의원 상해 등 보상금 지급에 관한 조례 일부개정조례안 의안 번호 179 제안연월일 : 제 안 자 :조례정비특별위원회위원장 제안이유 공무상재해인정기준 (총무처훈령 제153호)이 공무원연금법 시행규칙 (행정자치부령 제89호)으로 흡수 전면 개

교육실습 소감문

1

1 01 [ ] [ ] plus 002

도 1 명세서 도면의 간단한 설명 도 1은 본 발명의 바람직한 실시예에 따른 데이터 송수신 장치의 회로도이다. 도 2는 도 1에 도시된 등화기의 일 실시예를 보여주는 회로도이다. 도 3은 도 1에 도시된 프리엠퍼시스 회로의 일 실시예를 보여주는 회로도이다. 도 4는 본

¼þ·Ê¹®-5Àå¼öÁ¤

109

2/21

untitled

CR hwp

단위: 환경정책 형산강살리기 수중정화활동 지원 10,000,000원*90%<절감> 형산강살리기 환경정화 및 감시활동 5,000,000원*90%<절감> 9,000 4, 민간행사보조 9,000 10,000 1,000 자연보호기념식 및 백일장(사생,서예)대회 10

歯 동아일보(2-1).PDF

며 오스본을 중심으로 한 작은 정부, 시장 개혁정책을 밀고 나갔다. 이에 대응 하여 노동당은 보수당과 극명히 반대되는 정강 정책을 내세웠다. 영국의 정치 상황은 새누리당과 더불어 민주당, 국민의당이 서로 경제 민주화 와 무차별적 복지공약을 앞세우며 표를 구걸하기 위한

<33352D2D31342DC0CCB0E6C0DA2E687770>

<B9E9B3E2C5CDBFEFB4F5B5EBBEEE20B0A1C1A4B8AE20B1E6C0BB20B0C8B4C2B4D92E687770>

1) 음운 체계상의 특징 음운이란 언어를 구조적으로 분석할 때, 가장 작은 언어 단위이다. 즉 의미분화 를 가져오는 최소의 단위인데, 일반적으로 자음, 모음, 반모음 등의 분절음과 음장 (소리의 길이), 성조(소리의 높낮이) 등의 비분절음들이 있다. 금산방언에서는 중앙

DBPIA-NURIMEDIA

주지스님의 이 달의 법문 성철 큰스님 기념관 불사를 회향하면서 20여 년 전 성철 큰스님 사리탑을 건립하려고 중국 석굴답사 연구팀을 따라 중국 불교성지를 탐방하였습 니다. 대동의 운강석굴, 용문석굴, 공의석굴, 맥적산석 굴, 대족석굴, 티벳 라싸의 포탈라궁과 주변의 큰

1-1Çؼ³

15강 판소리계 소설 심청전 다음 글을 읽고 물음에 답하시오. [1106월 평가원] 1)심청이 수궁에 머물 적에 옥황상제의 명이니 거행이 오죽 하랴. 2) 사해 용왕이 다 각기 시녀를 보내어 아침저녁으로 문 안하고, 번갈아 당번을 서서 문안하고 호위하며, 금수능라 비

Transcription:

5 Context-Free Grammar

무엇을공부하나? 앞에서배운 " 정규식 " 은언어의 " 어휘 (lexeme)" 를표현하는도구로사용되었다. 언어의 " 구문 (syntax)" 은 " 정규언어 " 의범위를벗어나기때문에 " 정규식 " 으로표현이불가능하다. 본장에서배우는 " 문맥자유문법 " 은언어의 " 구문 (syntax)" 을표현할수있는도구이다. 어떤 " 문맥자유문법 " G가있으면 G가표현하는언어인 L(G) 가존재한다. 본장에서는주어진프로그래밍언어의구문을 " 문맥자유문법 " 으로표현하는방법을배운다. 5 Context-Free Grammar 5-2

강의내용 문맥자유문법 (Context-Free Grammar) 유도 (Derivation) 문맥자유문법에의하여정의되는언어 파스트리 (Parse Tree) 모호한문법 (Ambiguous Grammar) 추상구문트리 (Abstract Syntax Tree) C-Minus 문맥자유문법 교재 Kenneth C. Louden, Compiler Construction Principles and Practice, PWS Publishing Company, 1997. (3.1, 3.2, 3.3, 3.4, A.2) John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman, Introduction to Automata Theory, Languages, and Computation, 3rd Edition, Addison Wesley, 2006. (5.1, 5.2, 5.4) 5 Context-Free Grammar 5-3

문맥자유문법 (Context-Free Grammar) 문맥자유문법은 G는아래와같이 4개의요소 (N,, P, S) 로구성된다. 1 N은 non-terminal 심볼의유한집합, 2 는 terminal 심볼의유한집합, 3 P는생산규칙 (production rule) N->( N)* 의유한집합, 그리고 4 S N는시작 (starting) 심볼. 5 Context-Free Grammar 5-4

문맥자유문법쓰기 G exp =(N,, P, S) N={exp, op} ={+, -, *, (, ), number} P={ exp -> exp op exp exp -> ( exp ) exp -> number op -> + op -> - op -> * } S=exp 문맥자유문법을쓸때보통 production rule P 만쓰고 P의첫 rule의좌측 nonterminal 심볼을시작심볼 S라고가정한다. 5 Context-Free Grammar 5-5

유도 (Derivation) Direct derivation => 만약 A->v P 이고 u=xay 이며 v=xvy 이면 u => v 를 direct derivation 이라고한다. exp => ( exp ) ( exp ) => ( exp op exp ) ( exp op exp ) => ( exp + exp ) ( exp + exp ) => ( number + exp ) ( number + exp ) => ( number + number ) Derivation =>* Derivation =>* 은 direct derivation 이 0 회이상일어난것을의미한다. exp =>* ( number + number ) 5 Context-Free Grammar 5-6

Leftmost/Rightmost Derivation Derivation 을할때항상가장왼쪽 nonterminal 심볼을선택하면 leftmost derivation 이라고하고항상가장오른쪽 nonterminal 심볼을선택하면 rightmost derivation 이라고한다. Leftmost derivation exp => exp op exp => number op exp => number + exp => number + number Rightmost derivation exp => exp op exp => exp op number => exp + number => number + number 5 Context-Free Grammar 5-7

문맥자유문법에의하여정의되는언어 어떤문맥자유문법 G=(N,, P, S) 가있을때언어 { w * S =>* w } 을문맥자유문법 G 에의하여정의되는언어 L(G) 라고한다. number L(G) ( number + number ) L(G) number * number + number L(G) (number - number) * number L(G)... 5 Context-Free Grammar 5-8

파스트리 (Parse Tree) 어떤문맥자유문법 G=(N,, P, S) 가있을때파스트리 (parse tree) 혹은구문트리 (syntax tree) 는다음조건을만족하는 " 라벨을가지는 ordered 트리 " 이다. 각노드는라벨 L N 를가진다. 루트노드의라벨은 S 이다. 만약한노드가내부 (internal) 노드이며라벨 A 를가지면 A N 이다. 만약한노드가잎 (leaf) 노드이며라벨 v 를가지면 v 이다. 만약한내부노드가라벨 A 를가지며 A->x 1... x n P 이면이노드의자식노드는각각라벨 x 1,..., x n 을가진다. 5 Context-Free Grammar 5-9

파스트리 스트링 "number + number" 에대한파스트리 5 Context-Free Grammar 5-10

파스트리와 Derivation 하나의파스트리는같은스트링을만드는다른여러개의다른 derivation 을표현할수있다. ( 내부노드에숫자 ) exp => exp op exp => number op exp => number + exp => number + number exp => exp op exp => exp op number => exp + number => number + number 5 Context-Free Grammar 5-11

파스트리 스트링 "( number - number ) * number" 에대한파스트리 5 Context-Free Grammar 5-12

모호한문법 (Ambiguous Grammar) 어떤문맥자유문법 G 가있을때스트링 w L(G) 에대하여서로다른 2 개이상의파스트리가존재하면이문법을 " 모호한문법 " 이라고한다. 아래문법은스트링 "number - number * number" 에대하여오른쪽그림과같이 2 개의서로다른파스트리를가지므로모호한문법이다. exp -> exp op exp exp -> ( exp ) exp -> number op -> + - * 5 Context-Free Grammar 5-13

추상구문트리 (Abstract Syntax Tree) 파스트리는컴파일러가코드를생성하는데꼭필요한정보이외의불필요한정보도포함하고있다. 추상구문트리 (abstract syntax tree) 는컴파일러가꼭필요로하는정보만을가진트리이다. ( 컴파일러설계자가고안함 ) number number 파스트리 추상구문트리 5 Context-Free Grammar 5-14

C-Minus 문맥자유문법 - 1/4 1. program -> var_declaration_list fun_declaration_list 2. var_declaration_list -> var_declaration_list var_declaration empty 3. fun_declaration_list -> fun_declaration_list fun_declaration fun_declaration 4. var_declaration -> type_specifier var SEMICOLON type_specifier var LBRACKET num RBRACKET SEMICOLON 5. type_specifier -> INT VOID 6. var -> ID 7. num -> NUM 8. fun_declaration -> type_specifier var LPAR params RPAR LBRACE local_declarations statement_list RBRACE 9. params -> param_list VOID 10. param_list -> param_list COMMA param param 5 Context-Free Grammar 5-15

C-Minus 문맥자유문법 - 2/4 11. param -> type_specifier var type_specifier var LBRACKET RBRACKET 12. local_declarations -> local_declarations var_declaration empty 13. statement_list -> statement_list statement empty 14. statement -> compound_stmt expression_stmt selection_stmt iteration_stmt funcall_stmt return_stmt input_stmt output_stmt 15. compound_stmt -> LBRACE statement_list RBRACE 16. expression_stmt -> expression SEMICOLON SEMICOLON 17. expression -> var ASSIGN expression var LBRACKET expression RBRACKET ASSIGN expression simple_expression 18. simple_expression -> additive_expression relop additive_expression additive_expression 5 Context-Free Grammar 5-16

C-Minus 문맥자유문법 - 3/4 19. relop -> LT LE GT GE EQ NE 20. additive_expression -> additive_expression addop term term 21. addop -> PLUS MINUS 22. term -> term mulop factor factor 23. mulop -> MULTIPLY DIVIDE 24. factor -> LPAR expression RPAR var var LBRACKET expression RBRACKET num PLUS num MINUS num 25. selection_stmt -> IF LPAR expression RPAR statement ELSE statement 26. iteration_stmt -> WHILE LPAR expression RPAR statement 27. funcall_stmt -> var ASSIGN call var LBRACKET expression RBRACKET ASSIGN call call 5 Context-Free Grammar 5-17

C-Minus 문맥자유문법 - 4/4 28. call -> var LPAR args RPAR 29. args -> arg_list empty 30. arg_list -> arg_list COMMA expression expression 31. return_stmt -> RETURN SEMICOLON RETURN expression SEMICOLON 32. input_stmt -> INPUT var SEMICOLON INPUT var LBRACKET expression RBRACKET SEMICOLON 33. output_stmt -> OUTPUT expression SEMICOLON 34. empty -> 5 Context-Free Grammar 5-18