انت هنا الان : شبكة جامعة بابل > موقع الكلية > نظام التعليم الالكتروني > مشاهدة المحاضرة

Lecture 5 BNF

الكلية كلية العلوم للبنات     القسم قسم الحاسبات     المرحلة 2
أستاذ المادة محمد عبد الله ناصر الزبيدي       17/10/2012 09:46:32
BNF
A metalanguage is a language used to talk about a language (usually a different one). We can use English as its own metalanguage (e.g. describing English grammar in English).
It is essential to distinguish between the metalanguage terms and the object language terms.
? BNF stands for either Backus-Naur Form or Backus Normal Form.
? BNF is a metalanguage used to describe the grammar of a programming language.
? BNF is formal and precise.
? BNF is essential in compiler construction
< > indicate a non terminal that needs to be further expanded, e.g.
Symbols not enclosed in < > are terminals; they represent themselves, e.g. if, while, …
The symbol ::= means is defined as
The symbol | means or ; it separates alternatives,Example :
::= < digit > | < integer > < digit > or < integer > ::= < digit > | < digit > < integer >
< digit > ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
? "Extended BNF" allows repetition as well as recursion.
? Repetition is often more efficient when using BNF to construct a compiler.
Example :
< if statement > ::= if ( < condition > ) < statement > |
if ( < condition > ) < statement > else < statement >
< identifier > ::= < letter > | < identifier > < letter > |
< identifier > < digit >

المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .