Файл: Сравнительный анализ процедур для различных языков программирования (Использование процедур в Турбо Паскаль).pdf
Добавлен: 24.04.2023
Просмотров: 409
Скачиваний: 3
СОДЕРЖАНИЕ
1. Языки высокого уровня: понятие, достоинства
1.1. Языки программирования низкого и высокого уровня
1.2. Обзор языков программирования высокого уровня
1.3. Подпрограммы – процедуры и функции в языках высокого уровня
2. Использование процедур в Турбо Паскаль
2.1. Теоретические аспекты использования процедур в Турбо Паскаль
2.2. Алгоритмизация задачи с использованием процедур в Паскаль
2.3. Реализация задачи с использованием процедур на языке Turbo Pascal
3. Использование процедур в Delphi
3.1. Теоретические аспекты использования процедур в Delphi
3.2. Программная реализация процедур в Делфи
3.3. Сравнительный анализ использования процедур в языках программирования Паскаль и Делфи
Введение
Выбор темы исследования объясняется тем, что объектно-ориентированное программирование в целом и программирование на языках высокого уровня в огромной степени основано на использовании процедур и функций. Процедуры и функции чрезвычайно полезны, поскольку позволяют один раз создать код, а затем многократно его использовать по мере необходимости. Например, процедура WriteLn для отображения текста в окне консоли, созданная разработчиками компании Borland, позволяет не писать код для отображения текста, а просто вызывать эту процедуру.
Вообще, существует методика программирования "сверху вниз", разбивающая задачу на несколько более простых, оформляемых в виде подпрограмм. Те, в свою очередь, при необходимости также делятся до тех пор, пока стоящие перед программистом проблемы не достигнут простоты. Таким образом, эта методика программирования облегчает написание программ за счёт создания так называемого скелета, состоящего из описателей подпрограмм, которые в дальнейшем наполняются конкретными алгоритмами.
Языки высокого уровня имеют множество стандартных подпрограмм, но всё равно приходится создавать собственные для выполнения часто повторяющихся операций с данными, которые могут меняться.
Объект исследования – языки высокого уровня.
Предмет исследования – процедуры в языках высокого уровня.
Цель курсовой работы – сравнительный анализ процедур в языках высокого уровня Паскаль и Делфи, использование их в программах.
При достижении цели курсовой работы рассмотрены задачи:
- рассмотрены языки высокого и низкого уровня;
- проведен обзор языков высокого уровня;
- изучены подпрограммы – процедуры и функции в языках высокого уровня;
- более подробно проанализировано использование процедур в ЯВУ Паскаль и Делфи;
- приведена программная реализация процедур в языках высокого уровня Паскаль и Delphi.
При подготовке работы использовались учебник для вузов Фаронова В.В. «Delphi. Программирование на языках высокого уровня», книга Осипова Д. «Delphi. Программирование для Windows, OSX, iOS и Android»; учебные пособия Фаронова В.В. «Турбо Паскаль 7.0. Начальный курс» и «Турбо Паскаль» и другие, а также Интернет-статьи по данной теме.
Структура курсовой работы включает введение, три главы, заключение, список использованных источников.
1. Языки высокого уровня: понятие, достоинства
1.1. Языки программирования низкого и высокого уровня
Со времени появления первых программируемых компьютеров было создано больше двух с половиной тысяч языков программирования, ежегодно их число увеличивается. Некоторые языки использует только небольшое число их собственных разработчиков, другими пользуются миллионы людей. Профессиональными программистами обычно применяется в своей работе несколько языков программирования. [14]
Языки программирования низкого уровня. На первых компьютерах программировали двоичными машинными кодами, что является достаточно трудоемкой и сложной задачей. Чтобы упростить эту задачу стали пользоваться языками программирования низкого уровня, задающими машинные команды в более понятном для человека виде. Преобразования их в двоичный код выполнялись специальными программами - трансляторами. [21]
Трансляторы подразделяются на:
- компиляторы, превращающие текст программы в машинный код, сохраняемый и затем используемый уже без компилятора (к примеру, исполняемые файлы с расширением *. exe).
- интерпретаторы, превращающие часть программы в машинный код, выполняющие его и затем переходящие к следующей части. Причем использование интерпретатора осуществляется каждый раз при выполнении программы. [16]
Пример языка низкого уровня - ассемблер. Языки низкого уровня ориентируются на конкретный тип процессора с учетом его особенностей, поэтому при переносе программы на ассемблере на другую аппаратную платформу ее нужно почти полностью переписывать. Синтаксис программ для разных компиляторов также различается. Правда, существует практическая совместимость центральных процессоров для компьютеров фирм AMD и Intel, отличия лишь в некоторых специфических командах. А вот специализированные процессоры для других устройств, например, видеокарт, телефонов существенно различаются. [14]
Преимущество языков низкого уровня в том, что они позволяют создание эффективных и компактных программ, так как разработчик пользуется всеми возможностями процессора.
Недостатки проявляются в том, что:
- необходима высокая квалификация программиста, работающего с языками низкого уровня, хорошее понимание устройства микропроцессорной системы, для которой создается программа. При создании программы для компьютера, необходимо знание устройства компьютера и, особенно, устройства и особенностей работы его процессора. [21]
- невозможность перенесения результирующей программы на компьютер или устройство с другим типом процессора.
- значительность времени разработки больших и сложных программ.
- использование языков низкого уровня, как правило, для написания небольших системных программ, драйверов устройств, модулей стыков с нестандартным оборудованием, программирования специализированных микропроцессоров, когда важнейшие требования в компактности, быстродействии и возможности прямого доступа к аппаратным ресурсам.
Языки высокого уровня (ЯВУ). Эти языки позволяют писать программы текстом, похожим на английский язык. Транслятор с языка высокого уровня переводит код на язык низкого уровня, затем Компилятор каждую команду преобразует в машинный код, создавая исполняемый файл. Программы, написанные на ЯВУ, более компактны, легче для понимания, а вероятность появления в них ошибок меньше, процесс отладки (поиска и исправления ошибок) легче. [16]
Они позволяют не учитывать особенностей конкретных компьютерных архитектур, благодаря чему возможно легкое перенесение созданных программ на другие компьютеры. В основном достаточна простая перекомпиляция программы в другой компьютерной архитектурной и операционной системе. При этом достигается значительное сокращение времени разработки программ, что особенно важно при разработке больших программных проектов. [14]
К языкам программирования высокого уровня относят: Фортран; Кобол; Алгол; Pascal; Basic; Java; DC, C++, C#; Objective C; Smalltalk; Delphi и другие. Перечислим достоинства языков высокого уровня: [16]
- aлфавит языка значительно шире машинного, чем достигается его большая выразительность и существенное повышение наглядности и понятности текста;
- набор используемых операций не зависит от набора машинных операций, их выбор определяется соображениями удобства составления алгоритма решения задач определенного класса;
- конструкциями команд (операторов) отражается содержательность видов обработки данных и задание в удобном для человека виде;
- использование аппарата переменных и действий с ними;
- поддержка широкого набора типов данных.
Таким образом, языки программирования высокого уровня машинно-независимы и им необходимы соответствующие программы-переводчики (трансляторы) для представления программ на языке машин, на которых они будут выполняться. [21]
Недостаток ЯВУ в большом размере программ по сравнению с программами на языках низкого уровня. Поэтому в основном ЯВУ используют при разработках программного обеспечения компьютеров и устройств, имеющих большой объем памяти. А различные подвиды ассемблера применяют для программирования иных устройств, где имеет значение размер программ. [22]
1.2. Обзор языков программирования высокого уровня
Рассмотрим некоторые языки высокого уровня.
Фортран является первым из ЯВУ (разработанным Бэкусом в начале 1950-х годов) и широко распространенным языком, особенно среди пользователей, занимающихся численным моделированием. Для этого есть несколько причин: [16]
- существуют огромные фонды прикладных программ на Фортране, накопленные за эти годы, а также огромное количество программистов, программирующих на этом языке;
- имеются эффективные трансляторы Фортрана на всех типах ЭВМ, причем с достаточной стандартизированностью версий для различных машин, и перенесение программ с машины на машину обычно не составляет большого труда;
- изначальная направленность Фортрана для физико-математических и технических приложений; в частности, это проявилось в том, что в течение долгого времени он был единственным языком, содержащим встроенные комплексные типы переменных и большой набор встроенных функций для работы с этими переменными.
Прошедший период отмечен формированием новой методологии и философии программирования. С начала 70-х годов Фортран подвергали заслуженной критике. В 1977г. приняли новый стандарт языка Фортран-77. Новый стандарт разрабатывался долго, и теперь новым стандартом Фортран-90 пользуются программисты Фортрана. Только машины типа IBM PC используют несколько трансляторов, например, Watfor, Lap-Fortran и пр., но наибольшим применением на таких машинах отмечены различные версии транслятора Fortran-77.
Выпущенный в 1990г. транслятор MS-Fortran 5.0 практически в полном соответствии стандарту Fortran-90. Большинство крупных научно-технических прикладных программ пишутся на Фортране из-за его переносимости и устойчивости, а также благодаря имеющимся встроенным математическим и тригонометрическим функциям, а также расширенной графической библиотеке, позволяющей использование различных графических данных и изображений. [14]
Бейсик (BASIC - Beginner’s All-Purpose Symbolic Instruction Code) является “универсальным символическим кодом инструкций для начинающих”, прямым потомком Фортрана и до сих пор самым популярным языком программирования для персональных компьютеров (ПК). Появился Бейсик в 1963г., основная заслуга в его появлении американцев Джона Кемени и Томаса Курца. Как и любые преимущества, простоту Бейсика сопровождали, особенно в ранних версиях, трудности структурирования; не применение рекурсии – интересного приема, позволяющего составление эффективных и в то же время коротких программ. [16]
Разработкой мощных компиляторов Бейсика обеспечивается не только богатая лексика и высокое быстродействие, но и возможность структурного программирования. По мнению некоторых программистов, наиболее интересны версии GWBASIC, Turbo-Basic и Quick Basic.
Появлением Quick Basic ознаменовано рождение второго поколения систем программирования на языке Бейсик. Он сочетал в себе возможности модульного и процедурного программирования, создание библиотек, компиляцию готовых программ и другое, что вывело его на уровень таких классических языков программирования, как Си, Паскаль, Фортран и др. Более того, из-за отсутствия официального стандарта языка Бейсик, его реализация Quick Basic представила фактический стандарт. Безусловные лидеры среди разных версий Бейсика были Quick Basic 4.5 и PDS 7.1 фирмы Microsoft, появившиеся в конце 80-х годов. [21]
Язык программирования Паскаль разработал профессор кафедры вычислительной техники Швейцарского Федерального института технологии Николас Вирт в 1968г. как альтернативу существующим и все усложняющимся языкам программирования, таким, как PL/1, Algol, Fortran. Интенсивное развитие Паскаля привело к появлению уже в 1973г. его стандарта, а число трансляторов с этого языка в 1979г. превышало 80. В начале 80-х годов позиции Паскаля еще более упрочились с появлением трансляторов MS-Pascal и Turbo-Pascal для ПЭВМ. С этих времен Паскаль - один из наиболее важных и широко используемых языков программирования. [5]
Существенным является факт выхода языка за рамки академического и узко профессионального интереса и использование его в большинстве университетов высокоразвитых стран не только в качестве рабочего инструмента пользователя. Важнейшая особенность Паскаля в воплощенной идее структурного программирования. Другая существенная особенность в концепции структуры данных как одного из фундаментальных понятий. [8]
Основные причины популярности Паскаля заключаются в следующем:
- простота языка позволяет быстрое его освоение и создание алгоритмически сложных программ;
- развитыми средствами представления структур данных обеспечивается удобство работы как с числовой, так и с символьной и битовой информацией;
- наличием специальных методик создания трансляторов с Паскаля упрощена их разработка и вызвано широкое распространение языка;
- оптимизирующие свойства трансляторов с Паскаля позволяют создание эффективных программ, что стало одной из причин использования Паскаля в качестве языка системного программирования;
- реализация в языке Паскаль идей структурного программирования, что придает программе наглядность и хорошие возможности для разработки и отладки. [14]
Язык Delphi — строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal. Слово Delphi – это название города в древней Греции, в котором пророчествовали оракулы. Такое название выбрано разработчиками Delphi для того, чтобы подчеркнуть способность программ, создаваемых в Delphi, взаимодействовать с базами данных Oracle. Имя приобрело популярность, и коммерческий продукт под этим же названием был выпущен на рынок. [22]