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

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

Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа

Ночник-проектор "Звездное небо, планеты", черный.
Оригинальный светильник-ночник-проектор. Корпус поворачивается от руки. Источник света: 1) Лампочка (от карманных фанариков); 2) Три
350 руб
Раздел: Ночники
Мыло металлическое "Ликвидатор".
Мыло для рук «Ликвидатор» уничтожает стойкие и трудно выводимые запахи за счёт особой реакции металла с вызывающими их элементами.
197 руб
Раздел: Ванная
Совок большой.
Длина 21,5 см. Расцветка в ассортименте, без возможности выбора.
21 руб
Раздел: Совки

  (выражения)" Курсовая работа Выполнили студенты группы ИАС-00 Мардасова У. А. Шалудько В. А. Кемеровский Государственный Университет, Факультет Информационных Технологий Новокузнецк, 2002г. Введение При знакомстве с языком СИ, особенно после изучения Паскаля и Бейсика, погружение в детали его изобразительных средств может затушевать важную мысль: хотя на СИ можно написать практически любую прикладную программу, он изначально для этого не предназначен. СИ является результатом эволюционного развития языков создания системных программных средств. Если в прикладном программировании эволюция шла от Фортрана к Алголу, Коболу, Паскалю и т.д., то в системном - от Ассемблеров, привязанных к архитектуре ЭВМ, к СИ, для которого созданы трансляторы, делающие его хоть и независимым от архитектуры, но не меняющим основного предназначения. С помощью СИ можно сделать то, что на Паскале сделать невозможно (или почти невозможно) - например, написать фрагмент операционной системы (или новую операционную систему), утилиты и т.п. Так, ряд трансляторов с Паскаля написаны на СИ; обратное невозможно представить. В то же время, не раз отмечалось, что прикладные программы, написанные на Паскале, отличаются большей надежностью, чем написанные на СИ; их легче читать, передавать от одного программиста другому для совершенствования и сопровождения. Это связано с тем, что Паскаль содержит существенно больше ограничений и является языком более высокого уровня с сильной типизацией данных. Для языка же, который предназначен для разработки системного программного обеспечения, чем меньше ограничений, тем лучше; так, в СИ возможны неявные преобразования всех базовых типов данных и указателей друг в друга, что крайне желательно при создании системных средств, но при невнимательности программиста приводит к ошибкам, не улавливаемым транслятором с СИ (Паскаль же подобные недопустимые операции пресекает немедленно). Разумеется, сказанное выше не следует абсолютизировать. Программисты, привыкшие к СИ, успешно пишут на нем программы различных классов. Это касается не только СИ - вспомните об экспертных системах, написанных на Бейсике. В то же время, при массовом программировании придерживаться "разделение труда" между языками представляется более естественным. Широкой популярности Паскаля среди программистов способствуют следующие причины: Благодаря своей компактности, удачному первоначальному описанию Паскаль оказался достаточно лёгким для изучения. Язык программирования Паскаль отражает фундаментальные и наиболее важные концепции (идеи) алгоритмов в очевидной и легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы. Язык Паскаль позволяет чётко реализовать идеи структурного программирования и структурной организации данных. Язык Паскаль сыграл большую роль в развитии методов аналитического доказательства правильности программ и позволил реально перейти от методов отладки программ к системам автоматической проверки правильности программ. Применение языка Паскаль значительно подняло "планку" надёжности разрабатываемых программ за счёт требований Паскаля к описанию используемых в программе переменных, проверки согласованности программы при компиляции без её выполнения.

Использование в Паскале простых и гибких структур управления: ветвлений, циклов. С другой стороны язык программирования СИ - это универсальный язык с богатым набором операторов и компактным способом записи выражений. Благодаря гибкости, выразительности и компактности своей конструкции СИ завоевал наибольшую популярность в среде профессиональных программистов и широко используется при разработке системных и прикладных программ. Язык СИ представляет собой удачный компромисс между желанием располагать теми возможностями, которые обычно предоставляют программисту столь понятные и удобные языки высокого уровня, и стремлением эффективно использовать особенности компьютера. Кроме набора средств, присущих современным языкам программирования высокого уровня (структурность, модульность, определяемые типы данных) в него включены средства для программирования "почти" на уровне ассемблера (использование указателей, побитовые операции, операции сдвига). Большой набор операторов позволяет писать компактные и эффективные программы. Однако, такие мощные средства требуют от программиста осторожности, аккуратности и хорошего знания языка со всеми его преимуществами и недостатками. В отличие от языков программирования типа Паскаль, требующих жесткой дисциплины программирования ограничивающих свободу программиста, содействующих устранению многих ошибок еще на стадии их трансляции, язык СИ предоставляет программисту наибольшую свободу. Однако, ответственность за корректность программ при этом полностью ложится на программиста. В настоящее время имеется большое количество систем программирования на СИ для разных типов компьютеров. Разработано много библиотек модулей, инструментальных средств разработки и отладки, облегчающих создание новых программ. Программы на СИ обладают высокой мобильностью, без каких либо изменений они переносятся, транслируются и выполняются на машинах различного типа. В рамках учебного проекта реализована программная система, называемая в дальнейшем конвертором, позволяющая автоматизировать процесс преобразования программ на Паскале в программы на языке СИ. На вход конвертора подается синтаксически правильная программа на Паскале, на выходе его формируется эквивалентная ей программа на языке СИ. Задача разработки конвертора относится к классу задач автоматизации реинженеринга программ с устаревших языков на современные языки программирования и новые платформы. Разработка конвертора для языка Паскаль является достаточно трудоёмкой в силу особенностей синтаксиса и семантики языка Паскаль. Язык Паскаль не допускает использования принципов умолчаний и сокращений, требует строгого соблюдения соответствия типов данных, в нём жёстко регламентированы структура и место описания программных объектов. В силу выше сказанного, даже ручной перевод программы на Паскале на язык СИ требует от программиста приложения значительных интеллектуальных усилий, а реализация конвертора для языка Паскаль возможна лишь при наличии существенных временных и материальных ресурсов. Помимо синтаксических ограничений входная программа конвертора имеет ряд чисто семантических ограничений, связанных с реализацией собственно конвертора.

Перечислим основные из них: Ограниченное использование типов данных, в полном объёме поддерживаются только арифметические типы данных. Вложенность блоков, в которых используются одноименные объекты, не должна превышать двух уровней. Процедурные блоки не должны быть внутри BEGI -блоков, вложенность процедурных блоков не ограничивается. Допускается использовать только одномерные массивы с открытой правой границей (динамические массивы) в качестве параметров процедурных блоков; при этом адресуются элементы массива в Паскаль программе, начиная с нулевого элемента. Ограниченное использование смешения различных типов данных. Выражения в Паскале Конструкция языка, задающая порядок выполнения действия над элементами данных, называется выражением. Выражение состоит из операндов (opera d - элемент данных, участвующий в операции), - величин и выражений, над которыми производится операция (константы и переменные всех типов, обращения к функциям); круглых скобок и знаков операций. Операции определяют действия, которые надо выполнить над операндами. Например, в выражении (X Y-10) X, Y и 10 - операнды; а " " и "-" - знаки операций сложения и вычитания. В простейшем случае выражение может состоять из одной переменной или константы. Круглые скобки ставятся так же, как и в обычных арифметических выражениях для управления ассоциативностью и порядком выполнения операций. Операции в языке Паскаль делятся на арифметические, отношения, логические (булевские), операцию @, строковые и др. Выражения соответственно называются арифметическими, отношения, булевскими, строковыми и т.д. в зависимости от того, какого типа операнды и операции в них используются. Тип значения, вычисляемого с помощью выражения, определяется типом его операндов и знаками выполняемых над ними операций. Операции могут быть унарными и бинарными. В первом случае операция относится к одному операнду и всегда записывается перед ним, во втором - операция выражает отношение между двумя операндами и записывается между ними. Например, -А - унарная операция, Х У - бинарная. Арифметические выражения и операции. Арифметическим называется выражение, составленное из операндов арифметического типа и использующее только знаки арифметических операций и круглые скобки. Порядок вычисления определяется скобками и старшинством операций. Арифметическое выражение порождает целое или действительное (вещественное) значение. Наиболее простыми формами арифметических выражений являются: Целая или действительная константа без знака; Целая или действительная переменная; Элемент массива целого или действительного типа; Функция, принимающая целое или действительное значение. Значение переменной или элемента массива должно быть определено до их появления в арифметическом выражении. Другие арифметические выражения составляются из вышеперечисленных простых форм путем применения круглых скобок и арифметических операций. Арифметические операции выполняют арифметические действия в выражениях над значениями операндов целочисленных и вещественных типов. Арифметические операции языка Паскаль представлены в таблице1.

Уяснив проблему и придя к выводу, что она требует написания абсолютно новой программы, вы будете готовы к этапу проектирования. Создание любого коммерческого приложения требует тщательного анализа проблемы и проектирования ее эффективного решения. Хотя эти этапы логически предваряют этап написания программы, все же лучше начать с изучения базового синтаксиса и семантики языка C++ еще до изучения методов формального анализа и проектирования. Среда разработки В этой книге предполагается, что в вашем компиляторе предусмотрен режим работы с командной для непосредственного ввода данных, минуя графический интерфейс таких систем, как Windows или Macintosh. Найдите опцию console или easy window либо обратитесь к документации, прилагаемой к компилятору. Возможно, ваш компилятор имеет собственный встроенный текстовый редактор либо вы можете использовать любой коммерческий текстовый редактор, сохраняющий файлы в текстовом формате без атрибутов форматирования. Примерами таких редакторов могут служить Windows Notepad, команда DOS Edit, Brief, Epsilon, EMACS и vi

1. Конвертер программы с подмножества языка Си в Паскаль с использованием LL(1) метода синтаксического анализа (выражения)

2. Программа на языке Паскаль, реализующая операции над множествами

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

4. Разработка программы на языке LISP для построения кривых Серпинского i-го порядка

5. Язык Си: шаг за шагом

6. Разработка игровой программы на языке программирования Turbo Pascal
7. Модули и объекты в языке Турбо Паскаль 7.0
8. Программ-игра «Морской бой», с использованием анимированных графических объектов и возможностью управлять их движением с помощью клавиатуры

9. Ознакомление с основами программирования на языке Си

10. Конструирование программ и языки программирования

11. Приложения технологии языка программирования Паскаль в прикладной механике

12. Программирование на языке Си++

13. Создание программы на языке Delphi

14. Составить программу на языке Turbo Pascal для параллельной сортировки чисел

15. Синтаксический анализ языка НОРМА. Разбор описания

16. Состав и движение рабочей силы и эффективности использования рабочего времени. Технико-экономический анализ

Рюкзак для дошкольников "Тролли".
Рюкзачок "Тролли" детский, дошкольный, 1 отделение на завязках с верхних клапаном на липучке, 1 внутренний кармашек, узкие
465 руб
Раздел: Без наполнения
Плакат электронный "Говорящий Букваренок".
Многим детям понравится представленная оригинальная обучающая игра ''Говорящий Букваренок'', ведь она имеет несколько
429 руб
Раздел: Электронные и звуковые плакаты
Тубус - карта "План покорения МИРА", магнитная, на холодильник.
Подарок заядлому путешественнику. Вы наверняка уже знакомы со знаменитой картой мира, верхний слой которой стирается монетой по принципу
1100 руб
Раздел: Прочее

17. Новый подход к построению методов межпроцедурного анализа программ

18. Материальное стимулирование как метод управления: анализ и пути повышения эффективности его использования в организации (на материалах предприятия КТСУП "Отель")

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

20. Использование экономико-статистических методов в управлении обязательствами коммерческой организации на примере ООО "Нектар"

21. Снижение себестоимости продукции путем использования организационно-экономических методов (на примере ПТ ЧУП "Вланик")

22. Изучение английского языка с использованием компьютерной программы "English Puzzle"
23. Использование интегрированных курсов при изучении иностранного языка
24. Использование библейских сюжетов в проектной деятельности учащихся старших классов средней школы (на примере немецкого языка)

25. Методическое руководство по проведению занятия по русскому языку в рамках аудиовизуального курса для студентов-иностранцев с использованием видеозаписи мультфильма "Мороз Иванович".

26. Разработка программы для расчета финансовых показателей, используемых в составлении бизнес-плана на языке Visual Basic

27. Программа сложной структуры с использованием меню

28. Кадры с использованием программы Microsoft Access 97

29. Создание проекта с использованием программы GeniDAQ и контроллеров серии АДАМ-4000

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

31. Психолого-педагогические проблемы использования компьютерных игр, программ с игровой компонентой в образовании

32. Использование видео на уроках английского языка

Подставка для колец "Слоник", арт. 62258.
Регулярно удалять пыль сухой, мягкой тканью. Материал: металл (сплав цинка с покрытием золотой краской), стекло. Товар не подлежит
365 руб
Раздел: Подставки для украшений
Бортик Polini Basic (цвет: белый).
Боковой бортик для подростковой кровати Polini Basic Монстрики и Polini Basic Джунгли 180х90см. Размер: 180х950х16 мм.
977 руб
Раздел: Бортики в детскую кроватку
Подушка "MediumSoft Стандарт", 70х70 см.
Подушка Medium Soft Стандарт "Файберсофт". Наволочка - 100 % микрофайбер. Наполнитель - силиконизированное волокно
389 руб
Раздел: Размер 70х70 см

33. Вычисление интеграла методом Ньютона-Котеса (теория и программа на Паскале)

34. Использование программ обучения для обеспечения здоровья населения

35. Использование новых информационных технологий в обучении языку и культуре

36. К вопросу об использовании шейпинг-программ в физическом воспитании студенток высших учебных заведений

37. Программы вступительных экзаменов по иностранным языкам в 2004г (МГУ)

38. Использование информационных технологий в изучении английского языка в школе
39. Летопись языков Паскаль
40. Паскаль. Отладка программ

41. Основы программирования на языке Паскаль

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

43. Программа сложной структуры с использованием меню

44. Алгоритмический язык Паскаль

45. Процедуры и функции в языке Паскаль. Сфера действия описаний

46. Использование интегрированных в язык запросов (linq) при обработке массива данных в microsoft visual basic 2008

47. Некоторые психолого-педагогические особенности создания и использования компьютерных обучающих программ в вузе

48. Использование государственных программ ипотечного жилищного кредитования в РФ

Подушка с принтом "FIFA 2018", прямоугольная, синий, 40x29 см.
Подушка с символикой чемпионата мира по футболу 2018 года станет прекрасным дополнением к вашему интерьеру. Изделие выполнено из
403 руб
Раздел: Брелоки, магниты, сувениры
Набор детской посуды "Принцесса", 3 предмета.
Набор посуды для детей включает в себя три предмета: суповую тарелку, обеденную тарелку и кружку. Набор упакован в красочную, подарочную
397 руб
Раздел: Наборы для кормления
Копилка "Капитан Шарки. Capt'n Sharky".
Размер: 13х9х9 см. Материал: металл.
886 руб
Раздел: Копилки

49. Современные информационные и коммуникационные технологии и их использование при обучении иностранному языку

50. Использование иностранных слов в русском языке

51. Использование проектной методики на уроках иностранного языка

52. Использование технологии интерактивного обучения для повышения мотивации учащихся к изучению немецкого языка

53. Алгоритмические языки: использование множеств

54. Алгоритмический язык Pascal. Программа "Телефонный справочник"
55. Использование масок слоев и работа с текстовыми слоями в программе Adobe Photoshop
56. Использование программы Outlook Express для работы с электронной почтой

57. Исследование использования программ дистанционного обучения для подготовки учебно-методической документации

58. Методика использования антивирусных программ

59. Операторы ввода и вывода в языке программирования Си++

60. Основные понятия языка программирования Турбо Паскаль

61. Программа CorelDraw и ее использование

62. Программа установки защищенных сетевых соединений с использованием протокола ISAKMP

63. Работа со структурами в языке программирования Си++

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

Набор зубных щеток (от 18 месяцев, 2 штуки).
Сочетание щетинок разной степени жесткости обеспечивает особо тщательную чистку зубов, не повреждая нежную зубную эмаль и не травмируя
347 руб
Раздел: Зубные щётки
Карандаши акварельные "Mondeluz", 36 цветов.
Стержни карандашей изготовлены из прессованной акварели. Это позволяет рисовать ими как простыми карандашами, после чего смоченной в воде
692 руб
Раздел: Акварельные
Изограф, 0,1 мм.
Чертежный прибор для черчения и рисования на бумаге, ватмане и чертежной пленке. Изограф имеет резервуар для чернил, который легко
1584 руб
Раздел: Циркули, чертежные инструменты

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

66. Разработка программы на четырех языках программирования

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

68. Создание программы с использованием программного продукта Turbo Assembler

69. Составление программы на алгоритмическом языке, выполняющей указанные преобразования с матрицами

70. Теоретические основы использования компьютерных программ в биологии
71. Использование игр на уроках английского языка как одно из условий формирования грамматического навыка у младших школьников
72. Использование учебного проекта на уроках английского языка в средней школе

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

74. Особенности использования песенного и поэтического материала (стихов и рифмовок) как средства повышения эффективности урока английского языка

75. Примерная программа по русской литературе для школ с родным (нерусским) языком обучения

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

77. Особенности политического языка и использование их в политической агитации в избирательной компании

78. Управление учебно-тренировочным процессом девушек-спортсменок 15-17 лет с использованием индивидуальных коррекционных программ

79. Использование программ "Audit Expert" и "Project Expert" в процессе управления финансами фирмы

80. Программа управления самолётом в режиме автопилота

Набор детской посуды "Авто", 3 предмета.
Набор посуды для детей включает в себя три предмета: суповую тарелку, обеденную тарелку и кружку. Набор упакован в красочную, подарочную
397 руб
Раздел: Наборы для кормления
Диванчик раскладной "Кошечка".
Диван "Кошечка" - красивый, функциональный, надежный детский диван. Он способен украсить детскую комнату и может использоваться
2791 руб
Раздел: Прочие
Карандаши цветные "Triocolor", 24 цвета.
Трехгранная эргономичная форма корпуса. Яркие, насыщенные цвета, линии мягко ложатся на бумагу. Грифель устойчив к механическим
337 руб
Раздел: 13-24 цвета

81. Грибы и их использование

82. БАД к пище и их использование в бодибилдинге

83. Организация и порядок использования в бою мотопехотной (пехотной, танковой) (бригады армий вероятного противника)

84. Глобальные проблемы человечества. Использование Мирового океана

85. Платежи за использование природных ресурсов

86. Банковские операции с использованием векселей
87. Содержание договора о передаче прав на программу для ЭВМ
88. Патентование избирательных программ в контексте формирования концептуального рынка

89. Билеты по всемирной истории для 11 класса на украинском языке

90. Политическая программа английского просвещения Джона Локка

91. Деловой язык и культура речи юриста - тема "Разработка стратегии общения"

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

93. Міграція робочої сили (юридичний аспект) (WinWord 97 (на укр языке))

94. Животный мир как объект охраны и использования

95. Правовое регулирование использования и охраны животного мира

96. Топики для сдачи экзамена по английскому языку в 11-ом классе (Шпаргалка)

Кукольная мебель "Шкаф".
Шкаф - один из самых необходимых предметов мебели в любом доме, особенно в кукольном. И хочется, чтобы этот предмет был красивым,
362 руб
Раздел: Гардеробные, прихожие
Подушка детская "Бамбук" 40x60 см, арт. ДТ-ПСБД-4060-1.
Детская подушка "Бамбук", подушка с отстрочкой: с наполнителем из бамбукового волокна 400 г/кв.м, чехол (100% хлопок) - сатин
558 руб
Раздел: Размер 50х70 см, 40х60 см
Подгузники Moony, 4-8 кг, экономичная упаковка, 81 штука.
Максимально удобны и просты в применении. "Дышащая поверхность" подгузников обеспечивает доступ воздуха к коже ребенка, а
1423 руб
Раздел: 6-10 кг

97. География и окружающая среда Англии, Уэльса, Северной Ирландии и Шотландии (на английском языке)

98. Введение новых правил в орфографии в немецком языке

99. Топики по английскому языку за 11 класс

100. Алкоголь(на немецком языке)


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