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

Содержание
- 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).
<формула> :=

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

Программирование разветвляющихся алгоритмов
Психология программирования
Расширенный поиск в НКРЯ
Знаковые информационные модели
Измерение информации
Системы счисления
Основы HTML и CSS. Списки и таблицы
Интернет-технологии. Учебное пособие
Использование сервиса LearningApps в начальной школе
Компьютерная сеть. Основные понятия
Отношения между объектами
Базы данных. Курсовой проект
Мобильное Электронное Образование в ДОУ – доступность качественного образования
Моделирование
Как попасть в лайк тайм
Система мониторинга и оценки залогового обеспечения. Компания КСИ Фактор
Информационные технологии
Всемирная паутина Web
Автоматизация учета расчетов с персоналом по оплате труда
1С_Предприятие 8. Бухгалтерия ОСИ, ПТ, УК, СК, КСК для Казахстана(ГК Эксперт)
CSS технология (Каскадные таблицы стилей)
Цветовая модель
Многофункциональный торговый комплекс. Информационное моделирование
Моделирование окружающего мира
Photo Sharing Application
Есть, что сказать людям, но нет своего сайта?
Мем. Единица культурной информации
Презентация на тему Угрозы безопасности информации, их виды