Турбо Паскаль обеспечивает доступ к большому количеству встроенных констант, типов данных, переменных, процедур и функций. Эти элементы разделены на связные группы, называемые стандартными модулями, что позволяет использовать в конкретной программе только те из них, которые необходимы для ее работы.
В Турбо Паскале имеется 6 основных стандартных модулей: System, Crt, Dos, Printer, Overlay, Graph. Первые пять находятся в файле Turbo.tpl (Turbo Pascal Library), модуль Graph - в файле Graph.tpu (Turbo Pascal Unit). Текст стандартных модулей представлен в объектном коде, поэтому машинное время на их компиляцию не требуется.
Чтобы включить стандартный модуль в программу, его имя нужно указать в предложении использования Uses:
Uses Crt, Printer, Dos.
Предложение Uses записывается после заголовка программы.
Модуль System - это системный модуль, обеспечивающий операции ввода-вывода, обработку строк, программную реализацию операций с плавающей запятой, динамическое распределение памяти, реализацию математических функций (sin, cos, pred, odd и др.). Модуль System автоматически включается в каждую программу, он считается предварительно объявленным. Последнее означает, что этот модуль не нужно указывать в предложении Uses; более того, наличие имени System в предложении Usesвоспринимается компилятором как ошибка с сообщением "Duplicate identifier" ("Повторный идентификатор").
Константы, типы, переменные, процедуры и функции, которые содержатся в модуле System, считаются стандартными (предопределенными). В принципе, их можно переопределить, например, указать
Varsin : integer;
Тогда для обращения к функции синуса нужно использовать составное имя: y:=System.sin(x).
Разумеется, такие переопределения затрудняют понимание программы и применять их не рекомендуется.
Модуль Crt (Cathod ray tube - электронно-лучевая трубка) позволяет использовать все возможности дисплея и клавиатуры, включая управление режимами экрана, расширенные коды клавиатуры, цвет, окна и звуковые эффекты. Ниже перечислены некоторые процедуры и функции модуля Crt.
ClrScr (от слов Clear Screen) - очищает экран и помещает курсор в левый верхний угол.
ClrEol - очищает все символы, начиная от позиции курсора до конца строки, без перемещения курсора.
Delay(m:word) - задержка решения на m миллисекунд.
GotoXY(x,y:byte) - установка курсора в столбец , строку .
WhereX : byte - выдача номера текущего столбца.
WhereY : byte - выдача номера текущей строки.
KeyPressed : boolean - логическая функция для анализа нажатия клавиши.
ReadKey: char - функция, возвращающая символ нажатой клавиши.
Sound(Hz:word) - включение звука с частотой тона Hz в герцах.
NoSound - выключение звука.
Примечание. Процедуры и функции модуля Crt, как и модуля System, считаются предопределенными (предописанными), но не стандартными. Поскольку имя модуля System не записывается в составе фразы Uses, то формальным признаком стандартной функции или процедуры является отсутствие сообщения об ошибке от компилятора при отсутствии в программе фразы Uses.
Такое же замечание справедливо также для модулей Dos, Graph, Overlay.
Модуль Dos. С помощью этого модуля реализуется ряд программ операционной системы и программ обработки файлов. Ниже приведены несколько процедур модуля Dos.
GetDate(Var Year, Month, Day, DW : word) - считывает год, месяц, число и день недели с календаря ПЭВМ.
SetDate(Var Year,Month,Day: word) - устанавливает год, месяц и число в календаре ПЭВМ.
GetTime(Var Hour, Min, Sec, Sec100 : word) - считывает текущее время (часы, минуты, секунды, сотые доли секунды) по таймеру ПЭВМ.
SetTime(Hour, Min, Sec, Sec100 : word) - устанавливает текущее время на таймере ПЭВМ.
FindFirst - осуществляет поиск файла с заданным именем в файловой системе.
Модуль Printer.Это небольшой модуль, созданный для облегчения использования в программе устройства печати. Он описывает текстовый файл Lst и связывает его с устройством Lpt1.
Модуль Graph. Модуль реализует библиотеку из более чем 50 графических подпрограмм, выполняющих вычерчивание, закрашивание и штриховку графических изображений (точка, прямая, окружность и т.д.).
Модуль Overlay. Модуль используется для формирования оверлейных программ больших размеров, превышающих емкость доступной оперативной памяти.