Главная страница
Навигация по странице:

  • Примеры работы

  • Курсовая работа теория автоматов и формальных языков. Булычев отчет. Разработка компилятора модельного языка программирования


    Скачать 1.38 Mb.
    НазваниеРазработка компилятора модельного языка программирования
    АнкорКурсовая работа теория автоматов и формальных языков
    Дата25.12.2019
    Размер1.38 Mb.
    Формат файлаdocx
    Имя файлаБулычев отчет.docx
    ТипКурсовая
    #102105
    страница2 из 11
    1   2   3   4   5   6   7   8   9   10   11
    4 Расширенная форма Бэкуса — Наура
    <выражение>::= <операнд>{<операции_группы_отношения> <опе-ранд>}

    <операнд>::= <слагаемое> {<операции_группы_сложения> <слагае-мое>}

    <слагаемое>::= <множитель> {<операции_группы_умножения> <множитель>}

    <множитель>::= <идентификатор> | <число> | <логическая_константа> | <унарная_операция> <множитель> | (<выражение>)

    <число>::= <целое> | <действительное>

    <логическая_константа>::= true | false
    Правила, определяющие идентификатор, букву и цифру:
    <идентификатор>::= <буква> {<буква> | <цифра>}

    <буква>::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z

    <цифра>::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

    Правила, определяющие целые числа:

    <целое>::= <двоичное> | <восьмеричное> | <десятичное> | шестнадцатеричное>

    <двоичное>::= {/ 0 | 1 /} (B | b)

    <восьмеричное>::= {/ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 /} (O | o)

    <десятичное>::= {/ <цифра> /} [D | d]

    <шестнадцатеричное>::= <цифра> {<цифра> | A | B | C | D | E | F | a | b | c | d | e | f} (H | h)
    Правила, описывающие действительные числа:
    <действительное>::= <числовая_строка> <порядок> |n [<числовая_строка>] . <числовая_строка> [порядок]

    <числовая_строка>::= {/ <цифра> /}

    <порядок>::= ( E | e )[+ | -] <числовая_строка>


    1. Примеры работы

    1. Рабочий код. Все работает без ошибок



    2. Ошибка: лексическая ошибка, неправильная запись вещественного числа



    1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта