КрНУ

Інформаційний портал – Коледжу Кременчуцького національного університету імені Михайла Остроградського!

Turbo Pascal 7.0. Цель и задачи предмета. История создания и развития языка Pascal. Этапы разработки программы. Интегрированная среда Turbo Pascal 7.0.

Основные разделы темы.
1. Создание и развитие речи Паскаль.
2. Программа и язык программирования.
3. Этапы разработки программы.
4. Ошибки. Типы ошибок.
5. Компилятор.
6. Синтаксис и семантика.
7. Интегрированная среда Turbo Pascal 7.0.
Создание и развитие речи Паскаль.
Мы привыкли считать, что программирование-дитя современного прогресса в области
науки и технологии. Но это не совсем так. Первые сложные многоцелевые вычислительные
устройства появились еще в XIX веке. Тогда же возникла необходимость в разработке программ для них, и впервые с такой задачей столкнулась легендарная Ада Лавлейс, работавшая с вычислительной машиной Чарльза Бэббиджа, которая называлась ” Машина для исчисление разниц»(“Difference Engine”).
13 июля 1843 года Чарлзу Бэббиджу от Ады Лавлейс пришло письмо из конкретным списком операций (алгоритмом) для вычисления чисел Бернулли – так родилась новая наука-компьютерное программирование. Но настоящие языки программирования появились в эпоху электронных вычислительных машин (ЭВМ). Считают, что первый язык программирования-это язык Short Code, появившаяся в 1949 году. Программисты, работавшие на первых моделях ЭВМ, вынуждены были программировать в машинных кодах. Используя машинные коды, можно добиться максимальной скорости выполнение программы, но для этого сначала необходимо разобраться, как работает центральный процессор того компьютера, на котором предполагается запускать программу. Когда доступ к компьютерам получали только избранные, которые имели достаточно глубокую подготовку в данной области, однако с развитием вычислительной техники и снижением ее стоимости компьютерами стали пользоваться не только специалисты-электронщики, но и специалисты других областей человеческой деятельности. Для них важнее провести за помощью ЭВМ вычисления и быстро получить результат, относящийся к области
их интересов, чем постигать особенности микропроцессорной архитектуры. В это время и
появились первые языки программирования высокого уровня, которые были намного понятнее человеку, чем машинные коды.
Первыми языками программирования высокого уровня были FORTRAN, Cobol и Algol, появившиеся в 50-е годы XX века. Первые два из них используются и сейчас — это языки-долгожители, а Algol стал родоначальником целого семейства языков, в числе которых и Pascal. В настоящее время насчитывается несколько тысяч языков программирования, большая часть из которых имеет достаточно узкую специализацию. Говорят, что как только появился второй язык программирования, начались бурные споры о том, какая речь лучше! Эти споры идут и поныне, принимая иногда характер религиозных войн старины.
На рисунке схематично представлена история создания языков программирования.
Особое место среди языков программирования занимает Algol, первая версия которого
появилась в 1958 году. Одним из разработчиков языка Algol был “отец” языка FORTRAN
Джон Бекус. Название языка ALGOrithmic Language подчеркивает то обстоятельство, что он предназначен для записи алгоритмов. Благодаря четкой логической структуре Algol стал стандартным средством записи алгоритмов в научной и технической литературе.
Дальнейшими версиями языка стали Algol 60 и Algol 68. Algol 68 оказался чрезмерно
громоздким, что создавало большие трудности в его реализации. Один из членов комитета, занимавшийся разработкой спецификации, – швейцарский ученый Никлаус Вирт — протестовал против ее принятия. Он оказался прав — Algol 68 стал «лебединой
песней ” некогда самого популярного языка программирования, однако этот язык дал начало целой ветке новых языков.

В 1967 году Вирт создал свою версию — речи Algol W. Это было связано с
необходимостью найти язык программирования, который можно было бы использовать для обучение студентов методам разработки программ, таким как «программирование сверху вниз», «структурное программирование ” и т.д. Вирту не понравилась ни одна из существующих в то время языков, и в 1968 г. года он приступил к разработке собственной.
В 1970 году в мире программирования произошли по крайней мере два крупных события — появились операционная система Unix и новый язык программирования Pascal. Вирт назвал ее на честь великого французского математика и религиозного философа XVII века Блеза Паскаля. Паскаль изобрел вычислительное устройство, именно поэтому
присвоено его имя.
Благодаря своей четкости, логичности и другим особенностям Pascal надолго занял
свою нишу, являясь прекрасным языком для обучения программированию. Язык Pascal
использовалась и для разработки серьезных программ-приложений. Шутили, что Вирт
разработал игрушку, но многие отнеслись к ней очень серьезно.
В 1975 г. вновь два события стали вехами в истории программирования-Билл Гейтс и Пол
Аллен заявили о себе, разработав свою версию языка BASIC, а Вирт и Йенсен выпустили классическое описание языка Pascal под названием “Pascal User Manual and Report”. Со временем появились различные версии языка Pascal и его расширение. Самым известным расширением стал пакет Turbo Pascal фирмы Borland, появился в 1983 году и сразу стал событием в мире компьютерных технологий.

В 1984 году пакет Turbo Pascal был перенесен в среду MS-DOS и приобрел огромную популярность. С тех пор появилось несколько версий Turbo Pascal, последняя —
седьмая. Фирма Borland завершила линию продуктов Turbo Pascal и перешла к выпуску
системы визуальной разработки для Windows-Delphi.
Язык Turbo Pascal сохраняет свое значение как отличного средства для первого
знакомства с миром «серьезного программирования». Это связано как с его четкой
логической структурой, так и с теми его возможностями, которые позволяют использовать Turbo Pascal для решения разнообразных задач. Среди них вычисление и обработка данных, компьютерная графика, работа со звуком, системное программирование. Turbo Pascal позволяет применять Приемы объектно-ориентированного программирование, которое стало одной из ведущих современных технологий программирования.

Программа и язык программирования
Команды, выполняемые процессором ПК, являются электрическими сигналами, которые можно представить в виде последовательностей нулей и единиц. Каждой команде соответствует свое число. Таким образом, процессор имеет дело с машинным кодом. Написать программу на нем может только очень опытный программист, знающий с
архитектурой процессора и системой команд. Большинство программ создается за
помощью “посредников”, в качестве которых выступают языки программирования высокого уровня.
Совокупность средств и правил представления алгоритма в виде, пригодном для
выполнение вычислительной машиной, называется языком программирования.
Программа-это запись (реализация) алгоритма на языке программирования.

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

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

Разработка или выбор алгоритма решения задачи — выполняется на основе ее
математического описания. Многие задачи можно решить разными способами.
Программист должен выбрать оптимальное решение. Неточности в постановке,
анализе задачи или разработке алгоритма могут привести к скрытой ошибки
— программист получит неверный результат, считая его правильным.

Проектирование общей структуры программы — формируется модель решения с
последующей детализацией и разбивкой на подпрограммы, определяется
“архитектура” программы, способ хранения информации (набор переменных, массивов и
т. п.).

Кодирование-запись алгоритма на языке программирования. Современные системы
Программирование, подобные Delphi, позволяют ускорить процесс разработки
программы, автоматически создавая часть ее текста, однако творческая работа как и
раньше лежит на программисте. Для успешной реализации цели проекта программисту
необходимо использовать методы структурного программирования.

Отладка и тестирование программы. Под отладкой понимается устранение ошибок в
программе. Тестирование позволяет вести их поиск и, в конечном счете, убедиться
в том, что полностью отлаженная программа дает правильный результат. Для этого
разрабатывается система тестов-специально подобранных контрольных примеров из
такими наборами параметров, для которых решение задачи известно. Тестирование должно охватывать все возможные ветвления в программе, то есть проверять все ее инструкции, и включать такие исходные данные, для которых решение невозможно. Проверка особых, исключительных ситуаций, необходима для анализа корректности. Например, программа должна отказать клиенту банка в просьбе выдать сумму, недостающую на его счета. В ответственных проектах большое внимание уделяется так называемому “защиты от дурака” (fool-tolerance), подразумевает устойчивость программы к неумелому обращения пользователя. Использование специальных программ-отладчиков, которые позволяют выполнять программу по отдельным шагам, просматривая при этом значение переменных, значительно упрощает этот этап.

Анализ результатов — если программа выполняет моделирование какого-либо
известного процесса, следует сопоставить результаты вычислений с результатами
наблюдений. В случае существенного расхождения необходимо изменить модель.

Публикация результатов работы, передача заказчику для эксплуатации.

Сопровождение программы включает консультации представителей заказчика по работе с программой и обучение персонала. Недостатки и ошибки, замеченные в процессе
эксплуатации, должны устраняться.

Ошибки. Компилятор. Синтаксис и семантика
Особое значение для программиста имеет предупреждение и исправление ошибок в
алгоритме и программе решения задачи. Прежде чем выполнить программу, ее текст необходимо ввести в компьютер. Для ввода и изменения (редактирования) текстов используется специальная программа — текстовый редактор.
Текст набранной программы, для того, чтобы быть понятным компьютеру, должен
быть переведен на язык машинных кодов. Такой перевод называется компиляцией и выполняется специальной программой — компилятором. Компилятор анализирует программу и определяет, содержит ли она ошибки. В случае их обнаружения вся
работа останавливается. Если же правила языка программирования не нарушены, то
формируется модуль на машинном языке, который затем и выполняется.
В отличие от естественных языков, таких как русский, английский и др. речь
программирование имеет очень ограниченное количество “слов”, понятных компилятору, и строгие правила записи команд. Совокупность этих требований образует синтаксис языка программирование, а значение команд и других конструкций языка — его семантику.
Типы ошибок
Программирование является творческим процессом, поэтому ошибки неизбежно встречаются даже у опытных программистов. Различают следующие типы ошибок: синтаксические ошибки (ошибки компиляции), ошибки выполнения и ошибки в алгоритме программы (семантические).
Синтаксические ошибки возникают при нарушении правил речи (в нашем случае
– языки Turbo Pascal), их находит компилятор, который не может из-за ошибки
“понять” назначение команды.
Ошибки выполнения не нарушают синтаксис речи. Однако они приводят к
ошибочных операций в процессе выполнения программы, например попытке деления
на ноль или добывание квадратного корня из отрицательного числа. Список Турбо
Pascal об ошибках содержит более 200 сообщений.
Ошибки в алгоритме программы при верных начальных данных и внешне безошибочной
работе программы приводят к неверным результатам. Этот тип ошибок наиболее
коварный и трудный для исправления, поскольку пользователь, получая
ложный результат, считает его верным, поскольку никаких сообщений о
ошибки не было. Семантические ошибки должен находить сам программист. В
поиска и исправлении ошибок ему может оказать существенную помощь интегрированное среда разработки Turbo Pascal и ее встроенный отладчик.
Интегрированная среда Turbo Pascal 7.0.
Интегрированная среда объединяет текстовый редактора, компилятор, отладчик и
справочную систему. Для работы необходимо установить на ПК весь программный пакет,
хотя на самом деле достаточно небольшого количества файлов. Запускается среда
командой turbo.
Основные элементы рабочей области интегрированной среды Турбо Паскаль:
 Самый верхняя строка – строка меню. В этой строке содержатся заголовки десяти
команд меню. Для того, чтобы открыть любое из этих меню, достаточно щелкнуть
один раз на его заголовке. Открыть меню можно и без помощи мыши. Зачем необходимо нажать клавишу F10, а затем выбрать нужный заголовок и нажать клавишу Enter.
 Самый нижняя строка – строка подсказки. В исходном состоянии эта строка содержит
перечень клавиш самых популярных команд. Однако если вы начнете, что-нибудь
делать, здесь появится информация по выбранному элементу окна или выделенному
пункта меню.
 Между строкой меню и строкой подсказки располагается окно редактора,
предназначенного для подготовки текстов программ. В левом верхнем углу окна
расположена кнопка закрытия . Для того, чтобы закрыть окно необходимо один раз
щелкнуть мышью по этой кнопке. В правом верхнем углу окна редактора расположена кнопка свертывания. Если окно имеет максимальные размеры, то эта кнопка имеет вид . Для того, чтобы изменить размеры окна, необходимо щелкнуть по этой кнопке, после чего она примет вид . Слева от кнопки свертывания находится цифра указывает на порядковый номер окна. Посередине окна, в его верхней части расположен заголовок окна, который содержит название и порядковый номер окна, что открывалось в данном сеансе работы. За заголовок можно перетаскивать окно с места на место на экране, удерживая при этом левую кнопку мыши. Вдоль нижнего и правого краев окна расположены линии прокрутки. Если содержимое окна не помещается, с помощью
линий прокрутки можно переместить скрытую в данный момент информацию в пределы
окна. Слева от горизонтальной полосы прокрутки расположено табло местоположения
курсора. Это табло отображает два числа, разделенные двоеточием. Первое число
соответствует номеру строки, в котором в данный момент расположен курсор, второе-номер позиции в строке.

Строка меню.
Она включает 10 команд меню:
File (Файл)
Edit (правка)
Search (поиск)
Run (запуск)
Compile (компиляция)
Debug (отладка)
Tools (инструментальные средства)
Options (опции)
Window (окно)
Help (справка).
Меню File
Меню File имеет три группы пунктов, которые отделены друг от друга вертикальными
линиями.
1. Команда New (создать) открывает новое окно редактора с именем NONAMEXX.PAS, где вместо XX присутствуют цифры, обозначающие порядковый номер временного файла от 00 до 99. После набора текста программы надо обязательно изменить имя файла, иначе есть опасность потерять его, если он случайно замещен другим файлом с таким же стандартным именем. Рекомендуется также периодически проводить сохранение файла, нажимая клавишу F2. При первой записи файла на диск система предложит задать имя
файла, причем расширения . PAS добавляется автоматически.
2. Команда Open (открыть) открывает диалоговое окно Open а File . В этом окне есть поле ввода Name, предназначенное для ввода имени файла, который нужно открыть. Справа находится кнопка раскрытия списка , ею можно воспользоваться, если нужный файл уже открывался ранее. Нужный файл можно выбрать также в списке Files. Сначала при открытии окна Open, в в этом списке отображается содержимое текущего каталога. Здесь же будет каталог, имя которого представлено двумя точками с косой чертой ..\. Если попробовать открыть этот каталог, будет осуществлен переход на уровень выше в иерархии каталогов. Оказавшись в нужном каталоге, следует выделить любой файл,
чтобы его имя оказалось в поле ввода Name. После этого необходимо нажать кнопку Open, чтобы выбранный файл открылся. В нижней части окна отображается информация о файле, выделенном в списке с прокруткой: путь к имя файла, объем, а также дата и время его последнего изменения.
Справа есть также кнопки:
Replace (заменить)- загружает указанный файл в активное окно редактора ;
Cancel (отменить) – закрывает окно;
Help – вызывает окно справочной системы.
3. Команда Save (сохранить) сохраняет файл, что находится в активном окне редактора. Если данный файл еще до этого ни разу не хранился, то следует воспользоваться командой.
4. Команда Save as (сохранить как). В этом диалоговом окне есть те же управляющие
элементы, что и в окне Open а File. Необходимо указать файл, который нужен
сохранить, при этом его имя окажется в поле ввода Save File as.
5. Команда Save all (сохранить все) сохраняет все открытые в данный момент файлы.
Если какие-либо из открытых файлов до этого ни разу не хранились, для
них всех по очереди откроется диалоговое окно Save File as.
6. команда Change dir (изменение каталога) открывает диалоговое окно Change
Directory, которое предназначено для изменения текущего каталога. Это окно содержит также как предыдущие окна поле ввода и список с прокруткой. Кнопка Chdir позволяет
изменить текущий каталог. Для того, чтобы ввести в действие эту смену необходимо
нажать кнопку ОК. Кнопка Revert (повернуть) позволяет отменить последнюю
изменение текущего каталога (если оно еще не подтверждено кнопкой ОК).
7. Команда Print (печать) выполняет печать содержимого активного окна редактора.
8. Команда Printer setup (установка принтера) позволяет указать, какой принтер
подключен к вашему ПК, а также дополнительные установки. Turbo Pascal
поддерживает 3 типа принтеров: матричные, лазерные и Post Script – принтеры.
9. Команда DOS shell (среда DOS) осуществляет временный выход в DOS
10. Команда Exit (выход) служит для выхода из среды Turbo Pascal.
11. Имена файлов, которые открывались ранее в этом сеансе работы, а затем были
закрытые. Для открытия повторно, можно не обращаться к команде Open, а просто выбрать подходящее имя внизу меню File.
Меню Edit (правка)
Набор и редактирование исходного текста программы производится средствами
встроенного текстового редактора интегрированной среды. Если раскрыть меню Edit, то можно увидеть перечень команд редактора. Этот перечень небогат и включает команды: Undo – отмены предыдущего действия, Redo – повторного выполнения ранее отмененного действия, Cut-удаление в буфер обмена, Сору – копирование в буфер, Paste – вставки из буфера Clear – «безвозвратного удаления».
1. Команда Undo. Для каждого редактируемого файла интегрированная среда бережет длинную запись сделанных в нем изменений и многократным нажатием клавиш F10, затем Е, затем U (или Alt + Backspace) можно отменить внесенные в программу изменения, если они оказались ложными. Характерное применение этой команды – восстановление случайно стертого фрагмента (блока) текста.
2. Команда Show clipboard позволяет просмотреть содержимое буфера обмена. Дело в том,
что большинство текстовых редакторов использует специальный файл для временного хранения перемещаемых или копированных фрагментов текста. При активизации команды Show clipboard открывается новое окно Clipboard, в котором отображаются скопированные в буфер обмена фрагменты текста. Можно провести такой опыт. Загрузите в интегрированную среду любую программу и скопируйте блок текста в буфер обмена, затем скопируйте еще один и просмотрите содержимое буфера. Инверсным изображением выделяется последний блок, скопированный или перемещен в буфер обмена, однако можно выбрать другой блок, если необходимо восстановить именно его. Закройте окно Clipboard, щелкнув на зеленом прямоугольном значке в верхнем левом углу экрана. Теперь при нажатии клавиш Shift+Ins выделенный блок будет вставлен в редактируемый файл справа от положения курсора.
Основные возможности редактора связаны с использованием клавиатуры и специальных
комбинаций клавиш.

Меню Search
Меню Search (поиск) позволяет осуществить поиск фрагментов текста, подпрограмм и места обнаружения ошибки.
Команды:
1. Find (найти фрагмент) – в окне диалога задаются фрагмент для поиска и условия поиска после задания всех параметров осуществляется поиск первого вхождение искомого фрагмента
2. Replace (заменить фрагмент) – осуществляется не только поиск необходимого фрагмента, но и его замена на новый
3. Search again (повторный поиск) – после выполнения команды Find и Replace осуществляется поиск следующего вхождения искомого фрагмента текста, при этом сохраняются все заданные условия поиска
4. Go to line number (перейти к строке с заданным номером)
5. Show last compile error (показать последнюю ошибку компиляции) выдает сообщение об ошибке
6. Find error (найти ошибку) – находит ошибки, выданной при выполнении, для поиска задается полный адрес ошибки в шестнадцатеричной системе счисления
7. Find procedure (найти подпрограмму) – команда работает во время отладки программы.
Меню Run
Меню Run (Запуск) – предназначено для прогона в различных режимах программы с
активного окна:
1. команда Run – осуществляет компиляцию и запуск программы, исходный текст которой
находится в активном окне редактора. Если программа откомпилировалась, сразу выполняется ее запуск. Выполнить эту команду можно также, воспользовавшись комбинацией клавиш Ctrl-F9.
2. команда Step over (По шагам) последовательно выполняет операторы в одиночку за раз в программе.(не заходит в подпрограммы)
3. команда Trace into (Трассировать подпрограммы) подобно Step over последовательно
выполняет операторы в одиночку, но, если встретится подпрограмма, то данная команда будет выполнять и ее.
4. команда Go to cursor (Выполнить до курсора) – пошагово выполняет программу, но
только к месту, где стоит курсор. Если курсор находится в строке, что не является
исполняемым оператором, будет выдано сообщение об ошибке.
5. команда Program reset-прекращает процесс отладки приложения. Все открыты в
процессе работы программы файлы закрывает, программа становится готовой для
повторного запуска с начала.
6. команда Parameters (Параметры программы) позволяет открыть диалоговое окно, в
котором указываются параметры, которые были переданы программе при ее запуске точно так, как они задаются при запуске программы с помощью командной строки..
Меню Compile
Меню Compile (Компиляция). Это меню состоит из трех групп.
1.1.Первая позволяет осуществить компиляцию в разных режимах:
 Compile-компилирует файл программы, содержащийся в активном окне редактора.
 Make (сборник) – если тексты отдельных модулей, используемых основной
программой или основным модулем, были изменены после получения объектных
файлов, то соответствующие модули перекомпилируются, после чего компилируется файл, содержащий основную программу или основной модуль.
 Build (создать программу) – аналогично команде Make, только все модули, которые
используются основной программой, перекомпилируются в любом случае.
1.2. во второй группе содержатся команды, выполняющие подготовительные перед компиляцией действия.
 Destination (размещение файла) определяет, куда следует поместить исполняемый
файл программы-в оперативной памяти Memory или на диске Disk.
 Primary file (основной файл)– Устанавливает основной файл программы для команд
Make и Build. В этом случае выполнение этих команд начинается с компиляции этого основного файла, даже если он находится не в активном окне и даже если он вообще не открыт до момента компиляции.
 Clear primary (отказаться от основного файла) сбрасывается заданной командой Primary file имя основного файла, в этом случае любая компиляция начинается с файла, находящегося в активном окне.
1.3. к третьей группе относится единая команда Information, которая открывает диалоговое окно с информацией о программе, что компілювалася последней и оперативной памяти.
Меню Debug
Меню отладки позволяет задать параметры, необходимые при отладке программы(точки останова, вычисляемые параметры).
Меню Tools
Меню Tools (инструментальные средства) позволяет задать программы, которые можно
запустить не выходя из интегрированной среды, и запускать эти программы. (Turbo
Assembler,Turbo Profiler)
Меню Options
Меню Option (опции) позволяет задавать различные установки и опции среды Turbo
Pascal.
Меню Window
Меню Window (окно) предназначено для работы с окнами, открытыми в рабочей области среды Turbo Pascal:
Меню Help
Меню Help (справка) содержит команды, позволяющие получить доступ к справочной
системы Turbo Pascal (на английском языке).