5.2.1. BNF 표시 및 구문

Table 5.1은 형식적 언어를 설명하는 데 사용하는 BNF(Backus Naur Format) 심볼을 요약합니다.

Table 5.1. BNF 구문

심볼설명
"따옴표는 일반적으로 BNF 구문의 일부인 문자가 정의에서 리터럴 문자로 사용된다는 점을 나타내는 데 사용됩니다. 예를 들어, B"+"C 정의는 B+C 패턴으로만 대체될 수 있습니다. B+C 정의는 예를 들어, BC, BBC 또는 BBBC 패턴으로만 대체할 수 있습니다.
A ::= BAB로 정의합니다. 예를 들어, A::= B"+" | CAB+ 또는 C에 해당한다는 의미입니다. ::= 표시는 구성요소의 측면에서 보다 상위 수준의 생성을 정의하는 데 사용됩니다. 각 구성요소는 더욱 단순한 구성요소의 측면에서 구성요소를 정의하는 ::= 정의도 가질 수 있습니다. 예를 들어, A::= BB::= C | DA 정의가 C 또는 D 패턴에 해당한다는 의미입니다.
[A]선택적 요소(A). 예를 들어, A::= B[C]DABD 또는 BCD로 확장될 수 있음을 의미합니다.
A+A 요소가 한 번 이상 나타날 수 있습니다. 예를 들어, A::= B+A 정의가 B, BB 또는 BBB로 확장될 수 있음을 의미합니다.
A*A 요소가 0번 이상 나타날 수 있습니다.
A | BA 또는 B 요소가 나타날 수 있지만 둘 다는 나타날 수 없습니다.
(A B)AB 요소가 함께 그룹화됩니다. 이것은 | 연산자가 사용되거나 복잡한 패턴이 반복될 때 특히 유용합니다. 예를 들어, A::=(B C)+ (D | E)A 정의가 BCD, BCE, BCBCD, BCBCE, BCBCBCD 또는 BCBCBCE 중 하나로 확장될 수 있음을 의미합니다.
Copyright © 2002-2006 ARM Limited. All rights reserved.ARM DUI 0206GK
Non-Confidential