[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Alex)  
Форум » Программирование » Turbo Pascal » Turdo Pascal (Все о програмирование в этой среде)
Turdo Pascal
I_am_lostДата: Среда, 17.12.2008, 10:32 | Сообщение # 1
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Turbo Pascal - популярная среда для учения. Ведь именно в этой среде учат программировать детей в школе, по этой среде идут областные олимпиады и многое другое...

Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
xahterkotДата: Вторник, 10.03.2009, 18:43 | Сообщение # 2
Группа: Пользователи
Сообщений: 28
Репутация: 0
Статус: Offline
Хм по мне так С++ лучше

sadasd
 
money-hereДата: Вторник, 10.03.2009, 19:11 | Сообщение # 3
Admin
Группа: Администраторы
Сообщений: 119
Репутация: 14
Статус: Offline
Да, он удобней намного
 
I_am_lostДата: Вторник, 10.03.2009, 22:05 | Сообщение # 4
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
xahterkot, а я кроме как паскаля и делфи не работал и немогу судить о том, что лучше с ++ или паскаль =)Хотя в паскале реального не сделаешь(((

Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
money-hereДата: Вторник, 10.03.2009, 22:09 | Сообщение # 5
Admin
Группа: Администраторы
Сообщений: 119
Репутация: 14
Статус: Offline
Вот именно. Я на С++ пишу скрипты к играм, а на паскалу что то не выходит.. То ли синтаксис плохо знаю...
 
I_am_lostДата: Вторник, 10.03.2009, 22:09 | Сообщение # 6
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Паскаль (англ. Pascal) — высокоуровневый язык программирования общего назначения. Один из наиболее известных языков программирования, широко применяется в промышленном программировании, обучении программированию в высшей школе, является базой для большого числа других языков. Был создан Никлаусом Виртом в 1970, после его участия в работе комитета разработки стандарта языка Алгол-68.

Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....

Сообщение отредактировал I_am_lost - Вторник, 10.03.2009, 22:10
 
I_am_lostДата: Вторник, 10.03.2009, 22:11 | Сообщение # 7
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Особенности

Паскаль был создан как язык для обучения процедурному программированию (хотя, по словам Вирта, язык нельзя считать только учебным, поскольку язык, непригодный для написания реальных программ, для обучения использоваться не должен). Название языку дано в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля. Один из первых языков, для которых была создана реализация «на самом себе» — компилятор Паскаля был написан на самом Паскале. В начале 1970-х годов для переноса Паскаль-систем на различные аппаратные платформы была создана система Pascal-P, в которой был единый компилятор Паскаля в промежуточный язык (P-код) и для каждой платформы создавался быстрый интерпретатор P-кода. Заимствование этой системы привело к созданию системы UCSD Pascal в Университете Сан-Диего (Калифорния, США), намного позже её идеи были заимствованы создателями языка Java (байт-код, компиляция в байт-код, интерпретатор байт-кода).

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

Тем не менее, первоначально язык имел ряд ограничений: невозможность передачи функциям массивов переменной длины, отсутствие нормальных средств работы с динамической памятью, ограниченная библиотека ввода-вывода, отсутствие средств для подключения функций написанных на других языках, отсутствие средств раздельной компиляции и т. п. Наиболее бросающийся в глаза недостаток синтаксиса — некритически заимствованная из Алгола структура управляющих конструкций (операторов if и циклов), требующая, как правило, постоянного использования составных операторов «begin — end». Полный разбор недостатков языка Паскаль был выполнен Брайаном Керниганом в статье «Почему Паскаль не является моим любимым языком программирования» (интересно, что эта статья вышла в начале 1980-х, когда уже существовал язык Модула-2, потомок Паскаля, избавленный от большинства его пороков, а также более развитые диалекты Паскаля). Некоторые недостатки Паскаля были исправлены в ISO-стандарте 1982 года, в частности, в языке появились открытые массивы, давшие возможность использовать одни и те же процедуры для обработки одномерных массивов различных размеров.

Необходимо заметить, что многие недостатки языка не проявляются или даже становятся достоинствами при обучении программированию. Кроме того, по сравнению с основным языком программирования в академической среде 70-х (которым был Фортран, обладавший гораздо более существенными недостатками), Паскаль представлял собой значительный шаг вперёд. В начале 1980-х годов в СССР для обучения школьников основам информатики и вычислительной техники академик А. П. Ершов разработал алголо-паскалеподобный «алгоритмический язык».

Никлаус Вирт понимал недостатки созданного им языка, но, следуя традициям академической среды и собственным принципам, согласно которым «неподходящий инструмент надо не исправлять, а заменять», не стал его развивать дальше, а разработал новые языки семейства: Модула-2 и Оберон. В противоположность этому промышленные традиции и достоинства языка побудили многие коммерческие и некоммерческие организации продолжать разрабатывать и развивать системы программирования именно на основе языка Паскаль, подвергая язык произвольному расширению, добавляя в него, часто совершенно механически, новые средства и синтаксические конструкции.

Наиболее известной реализацией Паскаля являлась система Turbo Pascal (выросшая затем в Borland Pascal для DOS/Windows и далее в Delphi) фирмы Borland, в которой использовались значительные расширения языка. Благодаря появлению развитых диалектов, язык стал богаче, но в отсутствие отраслевой стандартизации, потерял переносимость и общность (только в 1995 году появилась совместимая с Borland Pascal версия среды разработки Virtual Pascal для OS/2 и впоследствие Linux, в 1998 году Kylix — Delphi для Linux, в настоящее время оба этих проекта фактически заморожены).

Важным шагом в развитии языка является появление свободного языка Паскаль GNU Pascal, который не только вобрал в себя черты других Паскалей, но и обеспечил чрезвычайно широкую переносимость написанных на нем программ (более 20 различных платформ, под более чем 10 различными операционными системами).

В настоящий момент пользуются популярностью такие версии языка как TMT Pascal, Free Pascal и GNU Pascal. Продолжает использоваться и Borland Pascal.

В 1986 году фирма Apple разработала объектное расширение языка Паскаль, получив в результате Object Pascal. В 1989 году аналогичные объектные средства были добавлены фирмой Borland в систему Turbo Pascal (языковые различия между объектным Turbo Pascal 5.5 и Object Pascal от Apple крайне незначительны). Последующие версии Turbo Pascal, который стал затем называться Borland Pascal, дополняли объектное расширение новыми средствами, этот процесс продолжился и в ходе развития языка системы Delphi[1]. Название языка менялось: от Pascal, через Object Pascal до Delphi, в литературе встречалось название Delphi Pascal, в последних версиях Delphi язык именуется так же, как и сама система (любопытный момент: в Delphi 7 пункт системного меню, запускающий справку по языку, как и в более ранних версиях, называется «Object Pascal Reference», а сам запускаемый им модуль помощи имеет заголовок «Delphi Language Manual», в тексте язык также везде называется «Delphi»). 1 февраля 2008 года Borland/CodeGear анонсировала поставку своей среды разработки приблизительно на миллион компьютеров в российских школах и ВУЗах.

Кроме того, разрабатывается система программирования PascalABC.NET, ориентированная на обучение современному программированию. PascalABC — реализация обычного паскаля, разработан для обучения программированию. PascalABC.net — аналог PascalABC, с возможностью создавать exe файлы.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
money-hereДата: Вторник, 10.03.2009, 22:11 | Сообщение # 8
Admin
Группа: Администраторы
Сообщений: 119
Репутация: 14
Статус: Offline
Да, для обучения азов программирования он очень даже не плох
 
I_am_lostДата: Вторник, 10.03.2009, 22:12 | Сообщение # 9
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Hello world

Программы на Паскале начинаются с ключевого слова program со списком внешних файловых дескрипторов в качестве параметров; затем следует главный блок операторов, ограниченный ключевыми словами begin и end. Операторы разделяются точками с запятой, а точка служит признаком конца программы (или модуля). Регистр символов в Паскале не имеет значения. Некоторые компиляторы (среди них, к примеру, Turbo Pascal) считают ключевое слово program необязательным.

Вот пример простейшей программы:

Program HelloWorld(output);
begin { начало программы }
writeLn('Hello, World!'); { выводим надпись }
readLn; { чтобы было видно, что мы вывели }
end. { конец программы }

[править] Типы данных

Примитивные типы данных Паскаля: real, integer, char, boolean и перечисления (конструктор нового типа, введённый в Паскале):

var
r: Real; { переменная вещественного типа }
i: Integer; { переменная целого типа }
c: Char; { переменная-символ }
b: Boolean; { логическая переменная }
e: (apple, pear, banana, orange, lemon); { переменная типа-перечисления }

Допустимо использовать подпромежутки порядковых (то есть любых, кроме real) типов:

var
x: 1..10;
y: 'a'..'z';
z: pear..orange;

В отличие от остальных языков программирования своего времени, Паскаль поддерживает тип данных «множество»:

var
set1: set of 1..10;
set2: set of 'a'..'z';
set3: set of pear..orange;

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

if i in [5..10] then { проверка на принадлежность элемента множеству }
...

обработается быстрее, чем

if (i>4) and (i<11) then { проверка логическими условиями }
...

Новые типы могут быть определены из существующих:

type
x = Integer;
y = x;
...

Более того, из примитивных типов могут быть сконструированы составные:

type
a = Array [1..10] of Integer; { определение массива }
b = record { определение записи }
x: Integer;
y: Char;
end;
c = File of a; { определение файла }

Как показано в вышеприведённом примере, файлы в Паскале — это последовательности однотипных элементов. Для каждого файла существует переменная-указатель на буфер, которая обозначается f^. Процедуры get (для чтения) и put (для записи) перемещают указатель к следующему элементу. Чтение реализовано так, что read(f, x) представляет собою то же, что и x:=f^; get(f);. Соответственно, запись реализована так, что write(f, x) представляет собою то же, что и f^ := x; put(f); Тип данных text определён как file of char. Так как указатель может быть использован, чтобы получить следующий символ, который будет использоваться (к примеру, убедиться, что это цифра перед чтением целого числа), эта концепция в ранних реализациях приводила к серьёзным проблемам с интерактивными приложениями, но позднее они были решены с помощью концепции «lazy I/O».

В Паскале Йенсен и Вирта строки представлялись как упакованные массивы символов; следовательно, они имели фиксированную длину и обычно начинались с пробела. Некоторые диалекты реализовали собственный строковый тип.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:12 | Сообщение # 10
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
обезательно после каждой строчки точка с запятой ставить!!!

Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:14 | Сообщение # 11
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Среднее значение

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

1 2 3 4 5 6 7 8 9 10

равна 55. Если это значение разделить на число элементов выборки, равное десяти, то получим среднее значение 5,5.

При разработке статистических функций на Турбо Паскале будем считать, что все данные хранятся в массиве чисел с плавающей запятой с названием "DataArray", тип которого определяется пользователем. Будем считать, что число элементов выборки известно. Все функции и процедуры будут использовать массив "data" для хранения выборки и переменную "num" для хранения числа элементов. Приводимая ниже функция вычисляет среднее значение для массива из "num" чисел с плавающей запятой. Результат получается в виде данного типа числа с плавающей запятой:

{ вычисление среднего значения }
function mean(data: DataArray; num: integer): real;
var
t: integer;
avg: real;

begin
avg:=0;
for t:= 1 to num do avg:=avg+data[t];
mean:= avg/num;
end; { конец вычисления среднего значения }

Например, если вы вызовете функции "Mean" с десятиэлементным массивом, содержащим числа от 1 до 10, то в результате получите 5,5.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:17 | Сообщение # 12
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Программа

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

Мы будем считать, что программа представляет собой последовательность операторов и других элементов языка, построенную в соответствии с определенными правилами п предназначенную для решения определенной задачи. Первым в программе идет зарезервированное слово program. За ним, после одного или нескольких пробелов, следует идентификатор — имя программы. Идентификаторы могут содержать любое количество символов, но Турбо Паскаль распознает только первые 63 из них. что, разумеется, намного превосходит реальные потребности. Идентификатор должен начинаться буквой или символом подчеркивания. Затем могут идти буквы, цифры и символы подчеркивания. Взятая в целом, фраза program s_kate; является заголовком программы с именем s_kate. Каждое описание должно завершаться точкой с запятой. Таким образом, первая строка любой программы имеет вид

program name;

В Турбо Паскале оператор заголовка программы может быть опущен. Имя программы никогда в ней фактически не используется, и оно совершенно не связано с именем внешнего файла, содержащего текст программы.

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

Каждая программа обязательно должна иметь часть, которая выполняет какие-либо действия н называется разбелом операторов (иногда — телом программы).

Минимально допустимой выполняемой частью программы является составной оператор

begin
Si: S2; ... ; Sn;
end

где SI..... Sn — операторы, а зарезервированные слова begin и end играют роль скобок, но только для операторов, а не для математических выражений. Они так и называются операторными скобками. Каждому begin в программе должен соответствовать end. Обратное, вообще говоря, неверно, так как end может заканчивать разделы, начинающиеся зарезервированными словами case и record. За телом программы должна следовать точка — признак того, что здесь находится конечная точка останова программы. Структура программы изображена на рис. 1.1.

program name

Раздел описаний

begin

Раздел операторов

end
Рис.1.1. Структура программы на языке Паскаль

Приведу еще два примера. Операторы в программе могут размещаться как на отдельных строках, так и по несколько в строке. Операторы разделяются точкой с запятой. В первом из приведенных ниже примеров между каждыми двумя последовательными разделителями находится пустой оператор. Обратите внимание на то, что допускаются дополнительные пары begin...end и дополнительные точки с запятой.

program DE;
begin
;;;;;
end.

program FG;
begin
begin
;
end;
;
end.

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

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


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:18 | Сообщение # 13
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Описание переменных

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

var v1, v2,... : type_id;

Здесь v1, v2,... — список переменных, в котором имена переменных разделяются запятыми, a type_id задает тип переменных из данного списка. Если в данной программе используются переменные разных типов, то в предложении var приводятся списки имен переменных каждого типа:

var v_1_1, v_l_2,... : type_id_i;
v_2_l, v_2_2,... : type_id_2;
v_n_l, v_n_2,... : type_id_n;

Пример описания переменных:

var
cows, sheeps : Word;
overman : Real;
milkmaid : Extended;

Здесь Word, Real и Extended — названия типов.
Типы Word, Real и Extended

Паскаль — это гибкий язык, в котором имеется большое число различных типов. Сейчас мы познакомимся только с некоторыми из них. Word — зарезервированное слово, обозначающее целочисленный тип с диапазоном значений [О, 65 535]. Переменные типа Word могут принимать целые значения только из указанного интервала.

Числовой тип Real — это вещественные значения из диапазона плюс-минус [2,9x10 :siJ, 1,7х10:и]. Переменные типа Real не могут принимать значения, сколь угодно близкие к нулю.

Тип Extended имеет более широкие возможности, чем Real, так как его диапазон составляет плюс-минус [3,4х10"4(Ш, l.lxlO4932], и поэтому в программах рекомендуется использовать именно этот тип.
Описание констант

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

const
v_1 = val_1;
v_2 = val_2;
v_n = val_n;

Здесь v_1, v_2, ..., v_n — имена констант, a vali — значения этих констант. Позже мы узнаем, что константы в Паскале бывают двух видов — петипизи-рованиые (как в данном случае) и типизированные.

Пример описания констант:

const
my_birth_year = 1905;
mass_of_electron = 9.1095е-28;
my_salary = 'invisible';

Исполняемые операторы

Тело каждой программы или подпрограммы состоит из последовательности операторов, каждый из которых выполняет определенное действие. Рассмотрим некоторые операторы языка Паскаль. Начнем с оператора присваивания:

variable := expression;

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

Примеры операторов присваивания:

al := 0.5;

у := х / (1.0 + х);

Вызовы процедур

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

WriteLn;
Read(infile, x);

Программирование процедур обсуждается во втором уроке.
Составной оператор

Составной оператор — это оператор вида

begin
S_1;
S_2;
...
S_n;
end;

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

Два слова о знаках пунктуации. Строго говоря, символ «точка с запятой» в Паскале является не ограничителем, а разделителем операторов. Поэтому точка с запятой после S_n необязательна. Тем не менее использование точки с запятой облегчает модификацию программы, например, при включении добавочных операторов.

Пример составного оператора:

begin
S := S + 1;
а := S - sqr(S);
end;

Структурные операторы

Структурные операторы строятся из специальных зарезервированных слов. логических выражений и других операторов. Каждый такой оператор явно или неявно содержит одну или несколько логических проверок.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:56 | Сообщение # 14
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Turbo Pascal (произносится «ту́рбо паска́ль») — среда разработки программного обеспечения для платформы DOS. Название Borland Pascal было зарезервировано для дорогих вариантов поставки (с бо́льшим количеством библиотек и исходным кодом стандартной библиотеки), оригинальная дешёвая и широко известная версия продавалась как Turbo Pascal. Название Borland Pascal также используется в более широком смысле — как обозначение диалекта языка Паскаль от фирмы Borland.

Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:56 | Сообщение # 15
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
История

Turbo Pascal — это среда разработки для языка программирования Паскаль. Используемый в Turbo Pascal диалект базировался на более раннем UCSD Pascal, получившем распространение, в первую очередь, на компьютерах серии Apple II. Компилирующая компонента Turbo Pascal была основана на компиляторе Blue Label Pascal, первоначально созданном в 1981 году Андерсом Хейлсбергом для операционной системы NasSys микрокомпьютера Nascom. Позднее он был переписан как Compass Pascal для операционной системы CP/M, затем как Turbo Pascal для DOS и CP/M. Одна из версий Turbo Pascal была доступна под Apple Macintosh примерно с 1986 года, но её разработка прекратилась примерно в 1992.

В 1982 году Филипп Кан приобрёл компилятор у Андерса Хейлсберга и перебрался из Парижа в Калифорнию, где основал компанию Borland.

Когда в 1983 году появилась первая версия Turbo Pascal, такой тип среды разработки был относительно новым. Во время дебюта на американском рынке, Turbo Pascal продавался по цене в 49,99 долл. Помимо привлекательной цены, встроенный компилятор Паскаля также был очень высокого качества. Приставка «Turbo» намекала как на скорость компиляции, так и на скорость производимого им исполняемого кода. Turbo Pascal создавал машинный код за один проход, без шага компоновки.

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

За первые два года было продано не менее 300 тысяч копий компилятора, что превзошло объём продаж всех прочих языков для микрокомпьютеров.[1]

Для того времени это была потрясающая среда разработки. Она была проста и интуитивно понятна, с хорошо организованным меню. Ранние версии использовали раскладку горячих клавиш WordStar. В более поздних версиях появилась возможность быстро получить определение ключевого слова языка, просто поставив курсор на ключевое слово и нажав клавишу справки. Справочные статьи часто включали примеры кода, использующего данное ключевое слово. Это позволяло неопытным программистам изучать Паскаль даже без помощи книг, используя лишь среду разработки. В поставку входило большое количество исходных текстов демонстрационных и прикладных программ. В их числе были даже шахматы.

Среда позволяла легко встраивать в код на Паскале вставки на языке ассемблера. Пользователь имел возможность проходить программу шаг за шагом; при переходе на ассемблерный блок это также работало. В любой момент пользователь мог добавить переменную или регистр в удобно расположенное окно для наблюдения за ними. При построчной отладке программ, использующих графические режимы IBM PC, происходило корректное переключение между графическим режимом программы и текстовым режимом среды разработки.

Помимо всего этого, имелось средство профилирования. Книги, включённые в поставку Borland Pascal, давали детальное описание языка ассемблера Intel вплоть до указания количества тактовых циклов, необходимых для выполнения каждой инструкции. В общем и целом, система давала превосходные возможности для оптимизации кода; пользователю не требовалось пользоваться чем-либо кроме среды разработки. Всё было сделано так идеально, что даже школьник мог этим пользоваться. Эти качества позволили версии Паскаля от Borland стать стандартом языка Паскаль de facto.
Turbo Pascal часто используется в школе.

С начала 1990-х TP/BP используется в университетах для изучения фундаментальных концепций программирования.

Вероятно, разработка Microsoft Pascal была прекращена из-за конкуренции с высоким качеством и небольшой ценой Turbo Pascal. Другая версия гласит, что Borland заключил соглашение с Microsoft на прекращение разработки Turbo BASIC (среды разработки для BASIC, ответвившейся от Turbo Pascal), если Microsoft прекратит разработку Microsoft Pascal. Некоторое время Microsoft выпускал QuickPascal, который был почти 100%-совместим с Turbo Pascal.

В течение нескольких лет Borland улучшал не только среду разработки, но и язык. В версии 5.5 в него были введены передовые возможности объектно-ориентированного программирования. Последней выпущенной версией была версия 7. Borland Pascal 7 включал в себя среду разработки и компиляторы для создания программ под DOS, под DOS с расширителем DOS и Windows 3.x, в то время как Turbo Pascal 7 мог создавать только обычные DOS-программы.

С 1995 года в Borland прекратили разработку Turbo Pascal и предложили в качестве замены среду разработки Delphi, ещё более ориентированную на язык программирования Object Pascal.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:56 | Сообщение # 16
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Этапы

* Turbo Pascal 1.0, 1983 год. Компилирует непосредственно в машинный код. Требует 32 килобайта оперативной памяти. Стоит меньше 50 долларов. Имеет интегрированный компилятор/редактор, высокую скорость компиляции. Позволяет размещать динамические данные в куче (heap) — динамической области памяти.

* Turbo Pascal 2.0, 1984 год. Увеличен размер создаваемой программы — позволяет использовать до 64 килобайт для кода, стека и данных. Версия для DOS поддерживает арифметический сопроцессор и двоично-десятичную арифметику (Binary Coded Decimal, BCD).

* Turbo Pascal 3.0, 1985 год. Поддержка оверлейной структуры. Поддержка графических режимов. Специальные подпрограммы формирования изображений для IBM PC совместимых компьютеров, включая «черепаховую» графику. Инструментальные пакеты.

* Turbo Pascal 4.0, 1987 год. Раздельная компиляция модулей. Размер программы ограничен только объёмом оперативной памяти. Управляемая с помощью меню интегрированная среда разработки (англ. Integrated Development Environment, IDE).Интеллектуальная компоновка модулей. Автономный компилятор командной строки. Убрана поддержка оверлеев. Контекстно-чувствительная система помощи.

* Turbo Pascal 5.0, 1988 год. Восстановлена поддержка оверлейных структур. Встроенный отладчик. Отдельный отладчик (Turbo Debugger). Эмуляция арифметического сопроцессора. Поддержка графических драйверов BGI (Borland Graphics Interface).

* Turbo Pascal 5.5, 1989 год. Объектно-ориентированное программирование. Возможность копирования в программу примеров из справочной системы. Электронный учебник на диске. Turbo Profiler — профилировщик, позволяющий оптимизировать код программы.

* Turbo Pascal 6.0, 1990 год. Библиотека Turbo Vision. Новая IDE, переписанная с использованием Turbo Vision, поддерживающая мышь и редактирование нескольких файлов одновременно в разных окнах. Возможность задания во встроенном отладчике условных и по количеству проходов точек останова. Встроенный ассемблер BASM позволяющий в исходном тексте программы делать ассемблерные вставки. Protected поля и методы для объектов. Работающий в защищённом режиме компилятор командной строки.

* Turbo Pascal for Windows. Создание 16-разрядных программ под Windows. Библиотека объектов Objects Windows Library (OWL), сходная по идеологии с Turbo Vision. Графическая IDE, работающая под Windows.

* Borland Pascal 7.0, 1992 год. Выпущен Borland Pascal 7.0, включающий в себя более дешёвый и менее мощный Turbo Pascal 7.0 который поставлялся также отдельно. BP 7.0 позволял создавать программы под реальный и защищённый 16-битный режим DOS и Windows. Была введена поддержка открытых массивов, добавлено новое ключевое слово «public» для доступных полей и методов объекта. Открыты исходные тексты системных библиотек и функций времени выполнения (RTL).


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:57 | Сообщение # 17
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Достоинства

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


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
I_am_lostДата: Вторник, 10.03.2009, 22:57 | Сообщение # 18
Группа: Модераторы
Сообщений: 154
Репутация: 4
Статус: Offline
Недостатки

* Компилятор рассчитан на реальный режим DOS, применение которого сходит на нет. Однако в последних версиях компилятора и среды введена поддержка защищённого режима вместе с соответствующим отладчиком (TD).
* Неполная реализация объектного-ориентированного программирования.[источник?]
* В модуле CRT имеется ошибка (некорректный подсчёт количества циклов для функции delay, не рассчитанный на быстрые процессоры, процессоры с переменной частотой и многозадачные среды), из-за которой при запуске программы на компьютерах с тактовой частотой более 200 MHz сразу происходило аварийное завершение с сообщением «Runtime error 200 at …»[2][3]

Несмотря на эти недостатки, Турбо Паскаль используется во многих учебных заведениях[4] для обучения программированию.


Сайт Новотроицка - Pro Новотроицк. Здесь вы найдете всё и немного больше....
 
Форум » Программирование » Turbo Pascal » Turdo Pascal (Все о програмирование в этой среде)
  • Страница 1 из 1
  • 1
Поиск:
Заработок в интернете wmz | Блог автора
Используются технологии uCoz