Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте www.za4et.net.ru

Компьютеры, Программирование Компьютеры, Программирование     Программное обеспечение Программное обеспечение

Разработка программы-компилятора

Коврик для запекания, силиконовый "Пекарь".
Коврик "Пекарь", сделанный из силикона, поможет Вам готовить вкусную и красивую выпечку. Благодаря материалу коврика, выпечка не
202 руб
Раздел: Коврики силиконовые для выпечки
Забавная пачка денег "100 долларов".
Купюры в пачке выглядят совсем как настоящие, к тому же и банковской лентой перехвачены... Но вглядитесь внимательней, и Вы увидите
60 руб
Раздел: Прочее
Крючки с поводками Mikado SSH Fudo "SB Chinu", №4BN, поводок 0,22 мм.
Качественные Японские крючки с лопаткой. Крючки с поводками – готовы к ловле. Высшего качества, исключительно острые японские крючки,
58 руб
Раздел: Размер от №1 до №10

СодержаниеВведение 1. Анализ задания 2. Разработка лексического анализатора 2.1 Выбор и обоснование структур данных 2.2 Разработка автоматных грамматик для распознавания лексем 2.3 Разработка автоматов, работающих по правилам грамматики 2.3.1 Автомат для распознавания имён 2.3.2 Автомат для распознавания 16-ричных констант 2.3.3 Автомат для распознавания римских констант 2.3.4 Объединённый автомат 2.4 Разработка алгоритма и программы лексического анализа 2.4.1 Выделение лексем 2.4.2 Распознавание лексем 2.4.3 Реализация лексического анализатора 2.4.4 Тестирование лексического анализатора 3. Разработка синтаксического анализатора 3.1 Уточнение грамматики языка применительно к варианту задания 3.2 Разработка алгоритма синтаксического анализа 3.3 Алгоритмы распознающих функций 3.3.1 Функция Lex Progr 3.3.2 Функция Lex Descr Lis 3.3.3 Функция Lex Descr 3.3.4 Функция Lex ame Lis 3.3.5 Функция Lex Oper Lis 3.3.6 Функция Lex Assig 3.3.7 Функция Lex Exp 3.3.8 Функция Lex Simple Exp 3.3.9 Функция Lex erm 3.3.10 Функция Lex m ozh 3.3.12 Функция Lex Body 3.4 Тексты распознающих процедур 3.5 Результаты тестирования синтаксического анализатора 4. Реализация двухфазного компилятора 4.1 Результаты тестирования двухфазного компилятора 5. Описание программы 5.1 Общие сведения и функциональное назначение 5.2 Вызов и загрузка 5.3 Входные данные 5.4 Выходные данные 5.5 Описание логической структуры программы 5.5.1 Файлы программы 5.5.2 Общее описание работы программы Список использованной литературы ВведениеПо классификации программного обеспечения ЭВМ компиляторы относятся к системным обрабатывающим программам. Их функцией является перевод программы с языка высокого уровня в машинный код. В процессе перевода в программе выделяются и изменяются такие уровни или слои как алфавит, лексика, синтаксис при сохранении семантики. Алфавит - набор допустимых символов и знаков, из которых строятся элементарные конструкции языка. Отдельные знаки объединяются в лексемы. Лексема - отдельная неделимая конструкция, имеющая смысл. Слова (лексемы) объединяются в предложения (операторы) согласно правилам синтаксиса. Синтаксис - описание правильных конструкций языка или правил получения правильных конструкций языка. Компиляция состоит из этапов анализа и синтеза. В анализ входит лексический, синтаксический и семантический анализ. Лексический анализ состоит из распознавания лексем, их классификации и определения правильности. Синтаксический анализ заключается в проверке правильности структур языка, таких как предложения или операторы и всей программы в целом. 1. Анализ заданияЗадание можно разделить на 3 части: лексический анализ, синтаксический анализ, разработка компилятора в целом Лексический анализ включает этапы: преобразование исходного текста в длинную строку; выделение лексических единиц (лексем); распознавание типов лексем; добавление лексем в соответствующие таблицы; сохранение таблиц в виде файлов. В данном задании используются следующие типы лексем: идентификаторы; ключевые слова; 16-ричные и римкие константы; знаки операций; разделители. Идентификаторы (имена) Следует отметить, что идентификатор может начинаться только с буквы, следующие символы могут быть как буквы, так и цифры и знак подчеркивания (‘ ’).

Кроме того, идентификаторы не могут совпадать со служебными словами. В данном задании встречаются следующие идентификаторы: ‘var15’, ‘ ’. Их следует записать в таблицу идентификаторов. Ключевые слова Этот класс лексем, как правило, описывается тем же синтаксисом, что и идентификаторы. Основное отличие состоит в том, что все ключевые слова заранее перечислены и каждое играет в языке свою особую роль. Оно не может заменяться другими ключевыми словами. Лексический анализатор должен отличать ключевые слова от обычных имен, различать между собой и возвращать для каждого из них свои (уникальные) значения. Лексический анализатор должен различить следующие ключевые слова: ‘program’, ‘var’, ‘i eger’, ‘begi ’, ‘repea ’, ‘u il’, ‘e d’, и записать их в таблицу терминальных символов. Константы. В данном задании встречаются как 16-ричные, так и римские константы. Необходимо, чтобы лексический анализатор правильно различал константы и различал их тип (16-ричная константа, римская константа) и записывал тип в таблицу констант. Константа считается римской, если она состоит из знака и символов ‘X’,’V’ и ‘I’ и образована по правилам составления римских констант. Она считается 16-ричной, если начинается с символа ‘$’ и знака и состоит из цифр и букв ‘A’. ’F’. Константы могут быть как положительными, так и отрицательными, это зависит от знака после символа ‘$’. Лексический анализатор должен различить константы: ‘$ 00’, ‘$-0A’ - как 16-ричные; ‘-XII’ - как римскую. Эти лексемы он должен записать в таблицу констант с указанием их типа (’16-рич. ’ - для 16-ричной константы, ’римск. ’ - для римской константы) и указанием десятичной формы. Знаки операций. Их особенность состоит в том, что они могут быть одно - или двухсимвольными. В данном задании встречаются как односимвольные, так и двухсимвольные операции. Такие лексемы лексический анализатор должен распознать правильно (двухсимовольные операции не разбивать на отдельные операции) и записать их в таблицу терминальных символов. В данном задании встречаются следующие операции: Односимовольные: ‘-’, ‘&l ;’; Двухсимвольные: ‘: =’. Разделители. К ним относятся специальные символы, разделяющие конструкции языка, например:; , . ( ) пробелы символы табуляции и перехода на новую строку. Они могут либо возвращаться в синтаксический анализатор в качестве лексем, либо только указывать на окончание предыдущей лексемы и пропускаться при вводе следующей. Некоторые из этих символов одновременно могут играть роль терминальных символов в грамматическом описании отдельных конструкций языка. В данном задании встречаются следующие разделители: ‘; ’, ‘: ’, ‘. ’,’ (‘,’) ’. Границами лексем являются разделители, знаки операций, пробелы. В процессе синтаксического анализа решаются две задачи: распознавание предложений языка; определение правильности конструкций.

Предложение считается синтаксически правильным, если оно представляет сентенциальную форму грамматики языка, т.е. может быть выведено с помощью некоторой цепочки переходов из начального символа грамматики. В процессе синтаксического анализа всего исходного текста в целом и каждого предложения в отдельности возможно два направления движения по цепочке правил: сверху вниз и снизу вверх. В процессе синтаксического анализа строится дерево грамматического разбора для каждого предложения. Это дерево строится от начального к конечному символу или наоборот. Дерево вывода состоит из начального (корневого) узла. В него включают еще промежуточные узлы и внешние узлы. Каждой ветви соответствует одно из правил грамматики. Входные данные - таблица кодов лексем, сформированная на стадии лексического анализа. Выходные данные - сообщение об успешном завершении анализа или сообщение об имеющихся ошибках. 2. Разработка лексического анализатора 2.1 Выбор и обоснование структур данных1. Таблица констант организована в виде двоичных деревьев Для хранения таблицы имен используется массив из записей Co s ab, содержащих следующие элементы: Номер лексемы. Лексема. Тип константы (16-ричная или римская). Ширина константы. 10-тичная форма. Левая ветвь дерева (номер элемента, который является левой ветвью для данного). Правая ветвь дерева (номер элемента, который является правой ветвью для данного). Путь к элементу по дереву (последовательность левых и правых ветвей, которые необходимо пройти, чтобы достичь данного элемента). 2. Таблица терминальных символов организована в виде двоичных деревьев Для хранения таблицы имен используется массив из записей erm ab, содержащих следующие элементы: Номер лексемы. Лексема. Разделитель (если лексема является разделителем, то это поле равно 1, если нет, то 0). Знак операция (если лексема является знаком операции, то это поле равно 1, если нет, то 0). Ключевое слово (если лексема является ключевым словом, то это поле равно 1, если нет, то 0) Левая ветвь дерева (номер элемента, который является левой ветвью для данного). Правая ветвь дерева (номер элемента, который является правой ветвью для данного). Путь к элементу по дереву (последовательность левых и правых ветвей, которые необходимо пройти, чтобы достичь данного элемента). 3. Для хранения таблицы идентификаторов используется метод с использованием хэш-функций Для хранения таблицы констант используется массив из записей Id ab, содержащих следующие элементы: Ссылка на элемент цепочки. Номер. Лексема. В данном случае хэш-функция вычисляется по методу деления, т.е.h (k): = {K/α}где K - ключ записи, α - некоторый коэффициент Для наиболее удобного распределения данных в таблице коэффициент α примем:α= Li 2где L - количество символов i-той строки, в которой хранится идентификатор. Код K рассчитывается как сумма ASCII-кодов символов строки, в которой хранится идентификатор. 4. Для хранения таблицы кодов лексем используется массив из записей Code ab, содержащих следующие элементы: Номер. Тип лексемы (C - константа, I - идентификатор, - терминальный символ).

Вы получили основные сведения об установке MySQL и узнали об основах администрирования баз данных MySQL с помощью утилит-клиентов. Мы рассмотрели API языка С, который наряду с другими языками программирования может применяться с СУРБД MySQL. Вы также познакомились с некоторыми операторами языка SQL в действии. Мы надеемся, что эта глава вдохновит вас на использование баз данных на основе SQL для хранения ваших данных и заставит искать дополнительную информацию об этих мощных средствах управления базами данных. И как напоминание, основной информационный ресурс MySQL — исходная страница MySQL на сайте www.mysql.com.  Глава 9 Средства разработки В этой главе рассматриваются средства разработки программ, применяемые в ОС Linux, некоторые из них доступны и в ОС UNIX. В дополнение к обязательным составляющим, таким как компиляторы и отладчики, Linux предлагает ряд средств, каждое из которых предназначено для одного вида работы и позволяет разработчику комбинировать эти средства новыми оригинальными способами. Такой подход — часть идеологии UNIX, которую унаследовала ОС Linux

1. Разработка стратегии выхода на рынок ЗАО “ДАРМА” с применением программы имитационного моделирования Project Expert

2. Разработка базы данных «Магазин бытовой техники “Электрон” средствами СУБД MS Access»

3. Учет основных средств в программе "1С Предприятие"

4. Разработка электронного обучающего пособия по теме "Pascal работа с циклами" с использованием средства разработки Smart Web Builder

5. Математические модели и инструментальные средства внутрифирменного управления персоналом

6. Разработка общего плана обработки детали "Втулка" с подробной разработкой технологических переходов для поверхности 028e8
7. Разработка программы диагностики и тестирования аппаратных средств ПК
8. Разработка анализатора газов на базе газового сенсора RS 286-620

9. Диагностика банкротства предприятия и разработка антикризисной программы (на примере ООО «Оптима»)

10. Разработка схемы топологии локальной корпоративной сети, описание ее технических характеристик и решаемых задач

11. Разработка алгоритмов и программ выполнения операций над последовательными и связанными представлениями структур данных

12. Изучение методики перевода из одной системы исчисления в другую и разработка программы для этой операции

13. Разработка программы- тренажера "Управление электросетями"

14. Разработка игровой программы "Морской бой"

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

16. Разработка рисунка настенного календаря с помощью графического редактора CorelDRAW. Создание базы данных «Туристических фирм г. Минска» с помощью пакета программ Access

Доска пробковая, с алюминиевой рамой, 60x45 см.
Доска выполнена из пробки высокого качества, имеет регулируемые элементы крепления, алюминиевая рамка соединяется пластиковыми уголками.
681 руб
Раздел: Демонстрационные рамки, планшеты, таблички
Глобус Зоогеографический с подсветкой, диаметр 250 мм.
Диаметр: 250 мм. Масштаб: 1:50 млн. Материал подставки: пластик. Цвет подставки: черный. Цвет дуги может отличаться от представленного на фото.
1069 руб
Раздел: Глобусы
Подставка под кухонные приборы "Лавандовый букет".
Подставка предназначена для хранения столовых приборов. Очень практичная и функциональная подставка займет достойное место на вашей кухне
319 руб
Раздел: Подставки для столовых приборов

17. Разработка программы рисования линий с помощью мыши

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

19. Исследование и разработка конструкции бандажированного опорного валка стана 2500 горячей прокатки

20. Разработка конструкции мобильной ленточной пилорамы

21. Помощь жертвам активного манипулирования психикой (разработка программы консультирования о выходе из нетрадиционных религиозных культов с учетом индивидуально-психологических особенностей личности)

22. Разработка конструкции и технологии изготовления печатного узла
23. Разработка программы стимулирования сбыта
24. Прогнозирование банкротства и разработка антикризисной программы предприятия

25. Разработка программы туристского путешествия в Великом Новгороде

26. Разработка маркетинговой программы

27. Механизмы и несущие конструкции радиоэлектронных средств

28. Особенности разработки образовательных программ для руководителей высшего звена

29. Разработка конструкции и технологии изготовления печатного узла

30. Разработка программы совершенствования организации международных перевозок

31. Разработка демонстрационных программ для применения в процессе преподавания физики

32. О содержании и методике разработки региональной комплексной программы "Образование и занятость населения"

Мягкая магнитная мозаика "Забавные животные", 4+, 5 цветов.
Мягкие бархатистые детальки пяти ярких цветов и разнообразных форм и размеров с обратной стороны снабжены плоским магнитным слоем. В
379 руб
Раздел: Магнитная
Пакеты фасовочные в евроупаковке, 25х40 см (1000 штук), 10 мкм.
Пакеты фасовочные из пищевого полиэтилена низкого давления, используется для фасовки, хранения и перевозки пищевых и непищевых
481 руб
Раздел: Пакеты для продуктов
Планшет для пастелей "Бабочка" А3, 20 листов.
Планшет для пастелей "Бабочка" на жесткой подложке - незаменимый помощник художника. Благодаря жесткому основанию, бумага на
320 руб
Раздел: Папки для акварелей, рисования

33. Разработка и внедрение средств противопожарной защиты на горных предприятиях

34. Модели угроз безопасности систем и способы их реализации, определение критериев уязвимости и устойчивости систем к деструктивным воздействиям, разработка методов и средств мониторинга для выявления фактов применения несанкционированных информационных возд

35. Разработка модулей программы /Укр./

36. Разработка алгоритмов и диалоговых программ автоматизированного формирования

37. Разработка и применение пакетов прикладных программ

38. Разработка контрольно-проверочной программы модуля ввода-вывода МФПУ-1
39. Разработка программы контроллера автоматически связываемых объектов для управления конструкторской документацией в среде Windows 95/NT (дипломная работа)
40. Разработка системной поддержки вызова программ,реализованных на языке Fortran, из среды Java

41. Программа Microsoft Excel. Ее применение для разработки электронных таблиц

42. Разработка библиотечных средств

43. Ошибки при выполнении программы. Опции компилятора

44. Разработка конструкции устройства для ориентирования абразивных зёрен

45. Обоснование средств механизации возделывания кормовой свеклы в СПК "Орловский" с разработкой зубового рыхлителя

46. Компьютерное мошенничество, вызванное манипуляциями программами ввода (вывода) и платежными средствами (QFM, QFP).

47. Описание пакета прикладных программ Microsoft Office

48. Принципы разработки алгоритмов и программ для решения прикладных задач

Рамка пластиковая со стеклом 30x30, арт. ST31-S.
Пластиковая рамка со стеклом универсальна и для фотографий, и для картин. Она не испортится со временем и отлично подойдет для обрамления
309 руб
Раздел: Прочие
Штамп самонаборный "Printer С20-Set", 38x14 мм, синий.
Размер оттиска: 38х14 мм. 4 строк текста, без рамки. Касса шрифта с пинцетом для набора в комплекте. В комплекте: сменная подушка,
492 руб
Раздел: Штемпельная продукция, губочницы
Кошелёк "Pixie Crew" с силиконовой панелью для картинок (чёрный, алфавит).
Повседневные вещи кажутся скучными и однотонными, а тебе хочется выглядеть стильно и быть не как все? "Pixie Crew" сделает твою
799 руб
Раздел: Косметички, кошельки

49. Проект разработки программы-калькулятора CalcKurs на языке программирования Pascal

50. Проектирование и разработка программы ЧАТ для локальной сети

51. Разработка анимационно-обучающей программы механической системы

52. Разработка и стандартизация программных средств информационных технологий

53. Разработка математической модели на основе описанных методов

54. Разработка обучающей программы, поддерживающей изучение темы "Структуры данных"
55. Разработка программ в среде программирования Turbo Pascal 7.0
56. Разработка программ с использованием динамической памяти

57. Разработка программы "Ведение основных фондов" для централизованной бухгалтерии комитета по образованию при администрации г. Богородицка

58. Разработка программы Helpopr

59. Разработка программы автоматизированного рабочего места диспетчера такси

60. Разработка программы для решения систем линейных уравнений

61. Разработка программы игры "Собери картинку"

62. Разработка программы на Delphi

63. Разработка программы на языке Borland Object Pascal (Ide Borland Delphi)

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

Ящик почтовый с замком, синий.
Ящик почтовый с замком. Материал: пластик. Длина: 385 мм. Ширина: 310 мм. Высота: 80 мм.
448 руб
Раздел: Прочее
Набор линеров "Sacura Pigma Micron", 3 штуки, черные.
Универсальные капиллярные ручки для письма, создания скетчей, иллюстраций, чертежей, ведения дневниковых, архивных записей и журналов
564 руб
Раздел: Капиллярные
Конверт С6, комплект 1000 штук.
Формат С6 (114 х 162 мм). Белый, без надписей. Клей декстрин. Плотность бумаги - 80 г/м2. В комплекте - 1000 штук. Конверт почтовый
512 руб
Раздел: Прочее

65. Разработка программы приема и передачи сообщений в локальной сети Microsoft

66. Разработка программы рисования замкнутых многоугольников на языке С++, с использованием библиотеки VCL

67. Разработка программы, генерирующей пароли пользователей

68. Разработка средства функционального диагностирования вычислительных устройств

69. Разработка форматов хранения данных программы. Структурирование

70. Разработка электронного органайзера средствами C++ Builder 6
71. Решение математических задач с помощью алгоритмического языка Turbo Pascal, Microsoft Excel, пакета MathCAD и разработка программ в среде Delphi
72. Среда разработки и платформа для выполнения программ LabVIEW

73. Исследование и разработка методов и технических средств и измерения для формирования статистических высококачественных моделей радиоэлементов

74. Разработка пакета программ для расчета фазированной антенной решетки

75. Тенденции развития конструкций электронных средств и факторы, определяющие их построение

76. Разработка технологии горячего блюда из мяса птицы и подбор средств измерения для контроля качества

77. Разработка маркетинговой программы продвижения на рынок нового вида бытовых услуг

78. Разработка программы маркетингового исследования для ОАО МЖК "Краснодарский"

79. Разработка программы продвижения новой продукции

80. Разработка программы развития деятельности предприятия розничной торговли на примере ИП Колпакова Т.И.

Фоторамка-коллаж для 6 фото, 46x32 см, арт. 37943.
Фоторамка украсит интерьер помещения оригинальным образом и позволит сохранить на память изображения дорогих вам людей и интересных
608 руб
Раздел: Мультирамки
Пароварка-блендер Happy Baby "Fusion".
Малыш растёт, и вскоре грудного молока уже становится недостаточно для полноценного питания растущего организма, которому требуются
3899 руб
Раздел: Блендеры
Кружка фарфоровая "Королевские собаки", 485 мл.
Кружка фарфоровая. Объем: 485 мл.
322 руб
Раздел: Кружки

81. PR-технологии в формировании имиджа средства массовой информации на примере телевизионной программы "Домой!"

82. Анализ и описание работы, разработка требований к кандидатам (на примере должности инспектора по кадрам ООО "Вита")

83. Разработка антикризисной программы развития ОАО Концерн "Калина" на основе комплексной оценки деятельности

84. Разработка программы кадрового аудита

85. Методическая разработка рабочей программы дисциплины "Психологическое здоровье в старшем подростковом возрасте"

86. Разработка программы профессиональной подготовки заливщиков металла
87. Анализ композиционных элементов конструкции одежды. Разработка модельных конструкций женской и мужской одежды по заданному эскизу
88. Разработка базовой конструкции женского платья

89. Разработка конструкции мужских полусапог клеевого метода крепления

90. Расчет вала и разработка конструкции вала

91. Разработка программы мероприятий по безопасности движения на участках концентрации ДТП на дорогах общего пользования Архангельской области

92. Различные подходы к разработке культурно-деловых программ на базе гостиничного комплекса

93. Разработка программы оптимизации налогообложения как инструмента антикризисного (корпоративного) управления на примере Амвросиевского управления по газоснабжению и газификации

94. Оценка эффективности использования основных средств предприятия НФ ОАО "ПО КЗК" и разработка мероприятий по улучшению их использования

95. Разработка и реализация программы управления универсамом

96. Этапы разработки производственной программы предприятия

Карандаши двухсторонние, 12 штук, 24 цвета.
Когда дети занимаются творчеством, это всегда чудесно. Ведь подобное занятие дает возможность ребенку проявить свою фантазию и логическое
401 руб
Раздел: 13-24 цвета
Набор для творчества "Шкатулка со стразами. Холодное сердце".
Каждая девочка мечтает о собственной шкатулке – в нее можно положить столько разных ценных вещей, так необходимых маленькой принцессе.
348 руб
Раздел: Эльза ("Холодное сердце")
Интеллектуальная игра "Сложи узор".
Игра состоит из 16 одинаковых кубиков. Все 6 граней каждого кубика окрашены в 4 цвета. Это позволяет составлять из них 1, 2, 3 и даже
498 руб
Раздел: Развивающие игры с кубиками

97. Разработка программы "Атамекен". Направление "Шапар"

98. Деревянные конструкции /без чертежей/

99. Разработка проекта зоны кратковременного отдыха


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.