28627

Язык Паскаль и системы программирования на Паскале

Лекция

Информатика, кибернетика и программирование

Понятие о языках программирования. Система программирования TURBO PASCAL 7. Понятие о языках программирования.

Русский

2013-08-20

41 KB

15 чел.

Лекция 2: Язык  Паскаль и системы программирования на Паскале.

1. Понятие о языках программирования.

2. Язык Паскаль.

3. Система программирования TURBO PASCAL 7.0.

1. Понятие о языках программирования.

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

В естественных языках семантика определяется неформально, так что смысл слова или фразы зависит, в том числе и от "окружения", т.е. от соседних слов и фраз и сформулировать семантические правила практически невозможно.

В формальных языках и синтаксис и семантика характеризуются строгими правилами (например, дорожный знак "кирпич" имеет точный смысл - запрет въезда). С точки зрения семантики формальные языки проще естественных.  Компьютеры (точнее компьютерные программы) способны "понимать" только формальные языки, поскольку только формальная семантика может дать алгоритм "приписывания смысла" любой языковой конструкции.

Любая программа общается с пользователем на некотором формальном языке, даже если он называется "подмножеством естественного языка". Система команд компьютера также является формальным языком. Этот язык носит название машинного языка. Процессор компьютера способен понимать непосредственно только машинный язык (который для него является "естественным").

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

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

Существует много различных языков программирования высокого уровня - Бейсик, Фортран, С, Паскаль и др. и соответствующих систем программирования. Мы в дальнейшем  будем иметь дело исключительно с языком Паскаль - одним из лучших и популярных языков программирования.

2. Язык Паскаль.

Язык Паскаль был разработан в 1970г. известным специалистом в области информатики проф. Виртом Н. как язык для обучения программированию и зарекомендовал себя как  один из лучших языков в этой области. Он оказал огромное влияние не только на обучение программированию, но и на всё последующее развитие программирования.

В 80-х годах фирма Borland International разработала на базе Паскаля язык Турбо-Паскаль и мощную систему программирования, включающую интегрированную диалоговую среду разработки программ на Турбо-Паскале. Турбо-Паскаль вышел в ряд ведущих языков программирования в системе MS DOS, а затем и Windows. Развитие  системы Турбо-Паскаль прошло через ряд версий, одной из последних является объектно-ориентированная версия Турбо-Паскаль 7.0 - наиболее совершенная система программирования в среде MS DОS, имеющая солидную инструментальную поддержку, библиотеки стандартных модулей и большой опыт проектирования на ней прикладных систем.

В середине 90-х годов был разработан преемник Турбо-Паскаля - система визуального программирования DELPHI с языком OBJECT PASCAL. OBJECT PASCAL в настоящее время является одним из самых мощных языков программирования прикладных систем.

Основу систем программирования Турбо Паскаль и DELPHI составляют компиляторы с языков Турбо Паскаль и OBJECT PASCAL соответственно. Это - мощные оптимизирующие компиляторы фирмы Borland, являющиеся лучшими в мире. Они позволяют получать экономичный и высокоэффективный программный код.

     Замечание

Режим работы компиляторов задается опциями компилятора, которые имеют по умолчанию некоторые предопределенные значения. Можно управлять опциями компилятора из программы с помощью директив компилятора. Например {$I-} - выключение контроля операций ввода-вывода.

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

Основными конструкциями языка, из которых строится программа, являются: переменные, константы, выражения, операторы и описания. Паскаль представляет мощный механизм для конструирования операторов и обрабатываемых типов данных.  Фактически всё, что можно сделать на компьютере - можно сделать на Турбо-Паскале. Он обеспечивает разнообразные потребности и является языком практического программирования. По своей распространенности в системе MS DOS он уступает в настоящее время только языку С, однако, имеет существенные преимущества при обучении основам программирования благодаря своей чёткой, хорошо продуманной структуре, логичности и  прозрачности конструкций. Впрочем, это не означает, что он лишен некоторых внутренних противоречий и ограничений, как и все другие языки программирования,  но в целом он, на сегодняшний день, является одним из наиболее совершенных языков программирования.

3. Система программирования TURBO PASCAL 7.0.

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

Неотъемлемым компонентом системы программирования является библиотека стандартных модулей TURBO.TPL, в которой сосредоточены все стандартные (встроенные) подпрограммы, а также средства текстового ввода-вывода, которые могут использоваться в программах на Турбо Паскале.

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

Вместе с тем классическая идеология разработки программ, характерная для TURBO PASCAL 7.0, основную нагрузку возлагает на программиста и отличается достаточно высокой трудоёмкостью программирования, т.к. предполагает разработку программистом всего текста программы, включая функции интерфейса с пользователем. Использование имеющейся в Турбо Паскале библиотеки поддержки проектирования пользовательских интерфейсов - TURBO VISION, несомненно, является прогрессом в разработке прикладных программ на Турбо Паскале, однако повышает требования к квалификации программистов и не изменяет качественно процесс разработки.

Качественно новый стиль программирования даёт визуальное программирование, реализованное в системе DELPHI.


 

А также другие работы, которые могут Вас заинтересовать

29037. Условия применения свайных фундаментов. Конструктивные решения. Виды свайных фундаментов в зависимости от расположения свай в плане 32 KB
  Условия применения свайных фундаментов. Виды свайных фундаментов в зависимости от расположения свай в плане. В этих условиях чаще всего прибегают к устройству фундаментов из свай. Группы или ряды свай объединённые поверху распределительной плитой или балкой образуют свайный фундамент.
29038. Условия применения свайных фундаментов. Классификация свай по материалу, форме продольного и поперечного сечения 42.5 KB
  Сваи погружаемые в грунт в готовом виде в зависимости от материала из которого они изготовляются подразделяются на железобетонные деревянные стальные и комбинированные. Железобетонные сваи получившие наибольшее распространение в практике строительства подразделяются: по форме поперечного сечения на квадратные квадратные с круглой полостью полые круглого сечения прямоугольные тавровые и двутавровые рис.1; по форме продольного сечения на призматические цилиндрические с наклонными боковыми гранями пирамидальные...
29039. Понятие о висячих сваях и сваях-стойках. Определение несущей способности свай-стоек 28.5 KB
  По характеру передачи нагрузки на грунт сваи подразделяются на висячие сваи и сваистойки. К сваямстойкам относятся сваи прорезающие толщу слабых грунтов и опирающиеся на практически несжимаемые скальные или малосжимаемые грунты крупнообломочные грунты с песчаным заполнителем глины твёрдой консистенции. Сваястойка практически всю нагрузку на грунт передаёт через нижний конец так как при малых вертикальных перемещениях сваи не возникают условия для проявления сил трения на её боковой поверхности рис. Сваястойка работает как сжатый...
29040. Определение несущей способности висячих свай по таблицам СНиП. Понятие о негативном трении и его учёт при определении несущей способности свай 35.5 KB
  Расчёт несущей способности вертикально нагруженных висячих свай производится как правило только по прочности грунта так как по прочности материала сваи она всегда заведомо выше.0385 широко применяемый в практике проектирования и известный под названием практического метода позволяет определять несущую способность сваи по данным геологических изысканий. Метод базируется на обобщении результатов испытаний большого числа обычных и специальных свай вертикальной статической нагрузкой проведенных в различных грунтовых условиях с целью...
29041. Динамический метод определения несущей способности одиночной сваи. Понятие об отказе. Уравнение работ. Контроль за сопротивлением свай при их забивке 28.5 KB
  Динамический метод определения несущей способности одиночной сваи. При молотах ударного действия скорость погружения сваи принято характеризовать величиной её погружения от одного удара называемой отказом сваи. По величине отказа который замеряется при достижении сваей проектной отметки можно судить о её сопротивлении поскольку чем меньше отказ тем очевидно больше несущая способность сваи. Динамический метод и заключается в определении несущей способности сваи по величине её отказа на отметке близкой к проектной.
29042. Определение числа свай в фундаменте. Конструирование ленточных свайных фундаментов 27 KB
  Определение числа свай в фундаменте. Конструирование ленточных свайных фундаментов. Зная несущую способность сваи Fα и принимая что ростверк обеспечивает равномерную передачу нагрузки на все сваи фундамента необходимое число свай n на 1 м длины ленточного фундамента определяется по формуле: 1 где γк коэффициент надёжности принимаемый в зависимости от способа определения несущей способности сваи; N01 расчётная нагрузка на 1 м длины ленточного фундамента. Число свай на 1 м найденное по формуле 1 может быть дробным.
29043. Определение числа свай в фундаменте. Конструирование отдельно стоящих свайных фундаментов 22 KB
  Определение числа свай в фундаменте. Конструирование отдельно стоящих свайных фундаментов. Зная несущую способность сваи Fα принимая что ростверк обеспечивает равномерную передачу нагрузки на все сваи фундамента необходимое число свай n в кусте определяют по формуле 1 где γк коэффициент надёжности принимаемый от способа определения несущей способности сваи; N01 расчётная нагрузка на куст. Полученное по формуле 1 число свай округляется в сторону увеличения до целого числа.
29044. Договор аренды: понятие, элементы, права и обязанности сторон 125.5 KB
  Договор аренды имущественного найма это соглашениепо которому арендодатель обязуется предоставить арендатору имущество за плату во временное владение и пользование или во временное пользование. Поэтому правовое регулирование аренды обусловлено также платным характером временного пользования. Общие положения об аренде представляют собой нормы которые могут применяться к любым видам договора аренды если иное не установлено правилами об этих договорах ст.
29045. Договор подряда: понятие, элементы, права и обязанности сторон 51.5 KB
  По договору подряда одна сторона подрядчик обязуется выполнить по заданию другой стороны заказчика определенную работу и сдать ее результат заказчику а заказчик обязуется принять результат работы и оплатить его. Особенности данного договора: предметом договора является изготовление или переработка вещи либо выполнение другой работы. Оплачивается результат работы который подлежит передаче заказчику а не процесс; сторонами договора являются: подрядчик физическое или юридическое лицо. Отдельные виды договора подряда: бытовой подряд;...