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

Выделение лексем из текста программы

Читайте также:
  1. HTML - Урок 3. Форматирование текста
  2. II.2 Стилистическая характеристика рекламного текста
  3. Анализ содержания исходного текста
  4. Важность текста
  5. Ввод текста
  6. Верстка различных видов текста
  7. Виды компьютерных сетевых вирусов. Антивирусные программы.
  8. Вопрос текста
  9. Вскрытие текста
  10. Вывод текста
  11. Выделение
  12. Выделение задач в подсистеме Вентиляции

Ранее было введено понятие лексемы, перечислили их группы (идентификаторы, знаки операций и т.д.) и определили состав каждой из групп лексем. Первая задача, которую решает компилятор, - это лексический анализ текста программы. В результате лексического анализа из сплошного текста выделяются лексические единицы (лексемы). Программисту полезно знать, какими правилами при этом руководствуется компилятор.

Компилятор просматривает символы (литеры) текста программы слева направо. При этом его первая задача - выделить лексемы языка. За очередную лексическую единицу принимается наибольшая последовательность литер, которая образует лексему. Таким образом, из последовательности int_line компилятор не станет выделять как лексему служебное слово int, a воспримет всю последовательность как введенный пользователем идентификатор.

В соответствии с тем же принципом выражение d+++b трактуется как d++ +b, а выражение b-->с эквивалентно (b--)>с.

Следующая программа иллюстрирует сказанное:

Результат выполнения программы:

 

 

Результаты вычисления выражений n+++m, n-->m, m-->n полностью соответствуют правилам интерпретации выражений на основе таблицы рангов операций (см. табл. 1.4). Унарные операции ++ и -- имеют ранг 2. Аддитивные операции + и - имеют ранг 4. Операции отношений имеют ранг 6.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |

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



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