- Главная
- Информатика
- Формы Бэкуса-Наура

Содержание
- 2. Термины: Терминалы – это то, из чего состоит язык. Например, человеческий язык состоит из предложений, предложения
- 4. Более сложные варианты. Некоторые конструкции (в правой части строки), взятые в квадратные скобки ([ … ]),
- 5. Рассмотрим примеры: 1) Дадим определение идентификатору с помощью БНФ: ::= A|B|C|…|Z ::= 0|1| … |9 ::=
- 6. 2) Грамматика целых чисел без знака: ::= | ::= 0|1|2|…|9 Обратим внимание, что терминал «число» встречается
- 7. 4) Формула с плюсами, минусами и скобками. ::= | ::= |( ) ::= +|- Во второй
- 8. 6) Формула с плюсами и минусами, с умножением и делением без скобок, а также с унарным
- 9. 8) Добавляем функции (встроенные) одного переменного (например sin и cos). := { } := { }
- 11. Скачать презентацию
Слайд 2Термины:
Терминалы – это то, из чего состоит язык. Например, человеческий язык состоит
Термины:
Терминалы – это то, из чего состоит язык. Например, человеческий язык состоит

Нетерминал или нетерминальный символ — объект, обозначающий какую-либо сущность языка (например: формула, арифметическое выражение, команда) и не имеющий конкретного символьного значения.
Например, символы < и > обрамляют некоторые терминалы, знак |разделяет несколько альтернативных терминалов.
Текст может быть правильным (то-есть составленным по правилам этой грамматики) или неправильным. И основная задача теории – определить, правильный или неправильный этот текст. Правила «кодируются» с помощью своеобразных конструкций – форм Бэкуса-Наура.
Слайд 4Более сложные варианты.
Некоторые конструкции (в правой части строки), взятые в квадратные скобки
Более сложные варианты.
Некоторые конструкции (в правой части строки), взятые в квадратные скобки

([ … ]),
означают, что конструкция может отсутствовать (то-есть или присутствует один раз, или отсутствует). А если без таких скобок – значит присутствует строго один раз.
Фигурные скобки
({ … })
означают, что «обрамленная» ими конструкция повторяется некоторое (возможно нулевое) количество раз.
{/ … /}
означает, что повторение 1 или большее количество раз (то-есть ненулевое количество).
В некоторых случаях символы для нетерминалов < и > опускают.
Слайд 5Рассмотрим примеры:
1) Дадим определение идентификатору с помощью БНФ:
<Буква> ::= A|B|C|…|Z
<Цифра> ::= 0|1|
Рассмотрим примеры:
1) Дадим определение идентификатору с помощью БНФ:
<Буква> ::= A|B|C|…|Z
<Цифра> ::= 0|1|

<Идентификатор> ::= <Буква> {<Буква>|<Цифра>}
Помните? Идентификатор начинается обязательно с буквы, а дальше идет некоторое количество букв или цифр (в принятых обозначениях A, B, A1, B2C3)
Всегда есть «самый главный» терминал (и, соответственно, главная строка, в левой части которой он находится), соответствующий тому объекту, который мы исследуем. В данном случае самый главный терминал – это «Идентификатор».
Слайд 62) Грамматика целых чисел без знака:
<число> ::= <цифра>|<цифра><число>
<цифра> ::= 0|1|2|…|9
Обратим внимание, что
2) Грамматика целых чисел без знака:
<число> ::= <цифра>|<цифра><число>
<цифра> ::= 0|1|2|…|9
Обратим внимание, что

3) Формула с плюсами и минусами без скобок.
<формула> ::= <число>|<формула><знак><число>
<знак> ::= +|- (может быть и так: <знак> ::= +|-|*|/)
Другая форма записи
<формула> ::= <слаг> {
<слаг> ::= <число>
А если и числа, и переменные, то:
<формула> ::= <слаг> {
<слаг> ::= <число>|<переменная>
Слайд 74) Формула с плюсами, минусами и скобками.
<формула> ::= |<формула><знак><число>
::= <число>|(<формула>)
<знак> ::=
4) Формула с плюсами, минусами и скобками.
<формула> ::=
<знак> ::=

Во второй строке появились скобки. «оp» – это промежуточный терминал, введенный для удобства.
5) Формула с плюсами и минусами, а также с умножением и делением без скобок. Входят в формулу не только числа, но и переменные.
<формула> ::= <слаг> {
<слаг> ::= <множ>{
<множ> ::= <число>|<переменная>
Т.е., самые крупные блоки, которые мы выделяем из строки с формулой – это слагаемые. Этим определяется самый низший приоритет операций сложения-вычитания. Отметим, что левое слагаемое не состоит из вложенных слагаемых, в отличие от правого.
Слайд 86) Формула с плюсами и минусами, с умножением и делением без скобок,
6) Формула с плюсами и минусами, с умножением и делением без скобок,

<формула> ::= <слаг> {
<слаг> ::= <множ_со_знаком>{
<множ_со_знаком> ::= [
<множ> ::= <число>|<переменная>
7) Формула с плюсами и минусами, умножением и делением и со скобками.
<формула> ::= <слаг> {
<слаг> ::= <множ>{
<множ> ::= <число>|<переменная>|(<формула>)
Слайд 9 8) Добавляем функции (встроенные) одного переменного (например sin и cos).
<формула> :=
8) Добавляем функции (встроенные) одного переменного (например sin и cos).
<формула> :=

<слаг> := <множ>{
<множ> := <число>|<переменная>|(<формула>)|

Официальное приложение от Федеральной службы судебных приставов
Основные операционные системы
Changes to editorial photо
Komanda FOR organizācija ciklisko izpildes citas komandas rezultāti, saraksti, un virknes teksta failus
Квест Страна чисел
Информационная система соревнований (CIS)
Информационно-медийное направление
Как человек работает с информацией
Антивирусные программы
Презентация на тему Табличный процессор
Нейронные сети
Нечеткие множества
Правила этикета в сети интернета
Баги и баг-трекеры
Сравнительный анализ дизайнов сайта
Инструкция заполнения заявления для предоставления субсидий на оплату ЖКУ через ПГУ
Добросвет. Моя жизнь в твоих руках
Основы рисования в Microsoft Word
Создание анимации
Роль интернета в жизни современного курсанта
Вирусы. Хакеры
Где брать качественную научную информацию?
Лекция 4
Поиск информации с помощью браузера Internet Explorer
Массивы и их сортировка
Презентация на тему Язык программирования Си
Проектная деятельность и основа научного исследования
Моделирование. Урок №5