검색 여닫기
검색
메뉴 여닫기
515
223
4
2천
noriwiki
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
특수 문서 목록
파일 올리기
환경 설정 메뉴 여닫기
notifications
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
user-interface-preferences
한국어
개인 도구
로그인
Terminal and nonterminal symbols 문서 원본 보기
noriwiki
문서 공유하기
다른 명령
←
Terminal and nonterminal symbols
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
[[분류: 프로그래밍 언어]] == 개요 == Terminal 그리고 Nonterminal symbols는 [[formar grammar]]에서 production rule을 표현하기 위해서 사용하는 기호들의 분류이다. Terminal symbols는 불변의 값, 상수나 표현식을 의미하며, nonterminal symbol은 terminal symbol의 합으로 구성되는 기호들을 의미한다. == Terminal symbols == Terminal symbols(말단 기호)는 grammar을 사용하여 변화하지 않는 기호를 의미한다. 예를 들어서, 다음과 같은 상황에서: 기호 <code>A => B</code> 기호 <code>A => C</code> B와 C는 더이상 바뀔 수 있는 규칙이 존재하지 않음으로 말단 기호이다. 그러나 A는 바뀔 수 있는 기호로서, 말단 기호가 아니다 (Nonterminal symbols)이다. == Nonterminal symbols == 비말단 기호는 변화할 수 있는 기호를 말한다. 이 기호들은 주로 변수라고 불린다. Formal grammar은 start symbol즉 말단 기호부터 출발하여 여러 Production rule을 거쳐서 비말단 기호를 만들어 낸다. 위의 예시에서, 기호 A는 비 말단 기호로, 변수에 해당한다. == 예시 == 다음과 같은 [[Backus-Naur form]]으로 나타낸 형태를 보자: <syntaxhighlight lang="bnf"> <digit> ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' <integer> ::= ['-'] <digit> {<digit>} </syntaxhighlight> 다음과 같은 형태에서 기호 (-, 0, 1, ... 9)는 말단 기호이며 <digit>그리고 <integer>은 비말단 기호이다. 다음과 같은 표현식 에서: :<chem>S -> cAd</chem> <br> :<chem>A -> a | ab</chem> S와 A는 비말단 기호이며, a,b,c,d는 말단기호이다.
Terminal and nonterminal symbols
문서로 돌아갑니다.