АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Определение типов лексем

Читайте также:
  1. I. Определение жестокого обращения с детьми.
  2. I. ОПРЕДЕЛЕНИЕ ПРЕДМЕТА МАТЕМАТИКИ, СВЯЗЬ С ДРУГИМИ НАУКАМИ И ТЕХНИКОЙ
  3. T.5 Определение нормальной скорости распространения пламени и термодинамических параметров
  4. T.5. Определение нормальной скорости распространения пламени и термодинамических параметров.
  5. V. Определение классов
  6. V. Определение основных параметров шахтного поля
  7. V.2 Определение величин удельных ЭДС.
  8. VI. ОПРЕДЕЛЕНИЕ РЕЗУЛЬТАТОВ ПЕРВЕНСТВА
  9. VI. Определение учебной нагрузки педагогических работников, отнесенных к профессорско-преподавательскому составу, и основания ее изменения
  10. VII. Определение установившихся скоростей поезда рассчитанной массы на прямом горизонтальном участке пути при работе электровоза на ходовых позициях.
  11. XI. ОПРЕДЕЛЕНИЕ ПОБЕДИТЕЛЕЙ И ПРИЗЕРОВ
  12. А Определение годовых амортизационных отчислений различными способами

Типы лексем, выделяемых лексическим анализатором из программы на входном языке, определяются входным языком. Обычно лексические анализаторы исключают из текста исходной программы комментарии, незначащие пробелы, символы табуляции и перевода строки и выделяют лексемы следующих типов:

§ идентификаторы;

§ константы (числовые, строковые, символьные);

§ ключевые слова входного языка;

§ знаки операций (арифметические, логические, отношения);

§ разделители.

 

Типы лексем запишем в виде таблицы (см. табл. 4).

Табл. 4.

Тип Лексемы
Идентификаторы a, A,...., z, Z
Константы 0, 1,..., 9
Ключевые слова void, main, if, else, for, goto, cin<<, cout >>, or, and, not, vector, int, float, boolean
Знаки операций +=, -=, =, *=, /=, +, -, *, /, ++, --, <, >, <=, >=,!=, ==, ~,
Разделители ,.;: { } [ ]? < > = + -

 

Соотношения между токенами и лексемами для различных языковых конструкций иллюстрируется в табл. 5.

 

Табл. 5.

Токен Лексемы Языковая конструкция
Ident Var, Label Идентификатор- последовательность символов, состоящая из букв и цифр, не начинающаяся с цифры.
IF if Ключевое слово IF
ELSE else Ключевое слово ELSE
MAIN main Ключевое слово MAIN
VOID void Ключевое слово VOID
FOR for Ключевое слово FOR
GOTO goto Ключевое слово GOTO
CIN<< cin<< Ключевое слово CIN<<
COUT>> cout>> Ключевое слово COUT>>
OR or Ключевое слово OR
AND and Ключевое слово AND
NOT not Ключевое слово NOT
CI NatNumber, Number, Dimension, Index Целочисленные константы
CF FloatNumber Вещественные константы
VEC Vector Вектор
VECTOR vector Ключевое слово VECTOR
TypeBase int, float, bool Базовые типы данных
AssignRel +=, -=, *=, /=, = Отношение присваивания
AddOperation +, - Аддитивная операция (оператор типа «сложения»)
MultOperation *, / Мультипликативная операция (оператор типа «умножения»)
RelOperation <, >, <=, >=, ==,!= Операция отношения
UnaryOperation ++, -- Унарная операция (оператор типа «сложения»)
( ( Разделитель “(”
) ) Разделитель “)”
[ [ Разделитель “[“
] ] Разделитель “]”
, , Разделитель “,”
. . Разделитель ”.”
; ; Разделитель “;”
{ { Разделитель “{“
} } Разделитель “}”
Separator :,? Разделители для условного присваивания

 

 


Тип «Ключевое слово»

 

Номер таблицы Индекс Значение
    void
    main
    if
    else
    for
    goto
    vector

 

Тип «Оператор ввода-вывода»

 

Номер таблицы Индекс Значение
    cin<<
    cout>>

 

Тип «Описатель»

 

Номер таблицы Индекс Значение
    int
    float
    bool

 

Тип «Логическое отношение»

 

Номер таблицы Индекс Значение
    not
    and
    or

Тип «Оператор присваивания»

 

Номер таблицы Индекс Значение
    +=
    -=
    *=
    /=
    =

Тип «Бинарная операция»

 

Номер таблицы Индекс Значение
    +
    -
    *
    /

 

Тип «Унарная операция»

 

Номер таблицы Индекс Значение
    ++
    --

 

 

Тип «Оператор длины»

 

Номер таблицы Индекс Значение
    ~

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)