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

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

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

Технология программирования на языке python и разработка программ для машинного обучения. Лекция
Техническое предложение
Инструкция по созданию облака слов. Сервис Tagxedo
Операторы цикла. Цикл с параметром. Операторы цикла итерационного типа
Кодирование текстовой информации
Понятие сбоя системы и синего экрана. Способы восстановления системы
Табличные информационные модели моделирование и формализация. Правила оформления таблицы
В мире информатики
Лекция 1
Презентация на тему Компьютерная графика
Интерактивная система голосования VOTUM
Информационная безопасность
Сервис Datcom.kz, подписание документов электронной цифровой подписью
Безопасность в интернете
Nokia 5650. Разработка финской промышленности
“Жёлтый блокнот”. Принцип Дирихле
Таргетинг. Оформление
f1d4a0843d1d43f2bb3d70f557a49612
Основные принципы организации СС
Реляционная алгебра. Тема 3.2
Устройства отображения информации
Способы прохождения тестирования для поступления на госслужбу
Программирование в среде Robot C. Занятие 10: Структурное программирование
The increasing use of computers has negative effects
Шрифты. Шрифтовые пары. Редактирование шрифтов в проекте. Создание тени и подложки
Палитры цветов в системах цветопередачи RGB, CMYK и HSB
Образовательный центр Сириус. Школьный этап всероссийской олимпиады школьников по шести предметам в онлайн-формате
Установка ИМ на хостинг на примере OpenCart