Информатика на пять О нас
 Добавить в избранное
5byte.ru
 Теория
 8 класс
 9 класс
 10 класс
 11 класс
Задания
 8 класс
 9 класс
 10 класс
 11 класс
Книги
Тесты
ЕГЭ
Turbo Pascal 7
 Описание
 Задачи
HTML
Рефераты

16.1. Модуль System

Модуль System является фактически основной библиотекой среды Turbo Pascal. Так, в него входят все предопределенные процедуры и функции стандарта языка Паскаль, а также дополнительные подпрограммы, позволяющие выполнять разнообразные действия общего назначения (управление вводом-выводом, работа со строками, статической и динамической памятью и т. д.).

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

В модуле описан ряд переменных, перечень которых приведен в табл. 9.

Таблица 9. Переменные модуля System

Имя Тип Назначение
Input
Output
Savelnt00
Savelnt02
Savelnt1B
Savelnt21
Savelnt23
Savelnt24
Savelnt34
Savelnt35
Savelnt36
Savelnt37
Savelnt38
Savelnt39
SaveInt3A
SaveInt3B
SaveInt3C
SaveInt3D
SaveInt3E
SaveInt3F
Savelnt75
Text
»
Pointer
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Стандартная файловая переменная ввода
Стандартная файловая переменная вывода
Переменная для сохранения вектора прерывания $00
To же $02
To же $1В
To же $21
To же $23
To же $24
To же $34
To же $35
To же $36
To же $37
To же $38
To же $39
To же $ЗА
To же $ЗВ
To же $ЗС
To же $3D
To же $ЗЕ
To же $3F
To же $75

Более подробно о файловых переменных Input и Output см. в п. 11.2.

Помимо переменных в модуле System определен ряд типизированных констант (инициализированных переменных), приведенных в табл. 10.

Таблица 10. Инициализированные переменные модуля System

Имя Тип Значение Назначение
ErrorAddr
ExitCode
ExitProc
FileMode
FreeList
FreeZero
HeapEnd
HeapError
HeapOrg
HeapPtr
InOutRes
OvrCodeList
OvrDebugPtr
OvrDosHandle
OvrEmsHandle
OvrHeapEnd
OvrHeapOrg
OvrHeapPtr
OvrHeapSize
OvrLoadList
PrefixSeg
RandSeed
Seg0040
SegA000
SegB000
SegB800
SelectorInc
StackLimit
Test8086
Test8087
Pointer
Integer
Pointer
Byte
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Integer
Word
Pointer
Word
Word
Word
Word
Word
Word
Word
Word
Longint
Word
Word
Word
Word
Word
Word
Byte
Byte
nil
0
nil
2
nil
nil
nil
nil
nil
nil
0
1
nil
0
$FFFF
0
0
0
0
0
0
0
$0040
$A000
$B000
$В800
$1000
0
0
0
Адрес ошибки выполнения
Код завершения программы
Адрес процедуры завершения программы
Режим доступа к файлу
Указатель списка свободных блоков динамической области
Резервная переменная
Конец динамической области
Функция обработки ошибок при работе с динамической областью
Начало динамической области
Указатель динамической области
Код результата ввода-вывода
Список оверлейных сегментов
Указатель оверлейной отладки
Параметр связи оверлейной программы с DOS
Параметр связи оверлейной программы с расширенной памятью
Конец оверлейного буфера
Начало оверлейного буфера
Указатель оверлейного буфера
Минимальный размер оверлейного буфера
Список загруженных оверлейных блоков
Адрес префиксного сегмента программы
Параметр генератора случайных чисел
Селектор сегмента $0040
To же $А000
To же $В000
То же $В800
Приращение селектора сегмента
Граница стека
Тип процессора 80x86
Тип сопроцессора 80x87

Переменная ErrorAddr содержит значение nil, если программа завершена успешно, и адрес сообщения об ошибке, если произошла ошибка выполнения. Переменная ExitCode содержит код завершения программы (0 - при нормальном завершении) . Переменная ExitProc содержит адрес подпрограммы завершения. Переменная FileMode содержит код режима работы с файлом (0 - только чтение, 1 - только запись, 2 - чтение и запись и т.д.). Параметры FreeList, HeapEnd, HeapError, HeapOrg, HeapPtr можно использовать при работе с динамической областью памяти. Переменная InOutRes содержит код выполнения последней операции ввода-вывода, который затем можно получить с помощью функции IOResult. Параметры OvrCodeList, OvrDebugPtr, OvrDosHandle, OvrEmsHandle, OvrHeapEnd, OvrHeapOrg, OvrHeapPtr, OvrHeapSize, OvrLoadList используются при работе с оверлейными структурами. Параметр PrefixSeg содержит адрес 256-байтового префиксного сегмента программы. В переменной RandSeed помещается исходное значение датчика случайных чисел.

Переменные для сохранения векторов прерывания можно использовать для сохранения в них текущих значений векторов прерывания.

Параметр StackLimit содержит минимально допустимое смещение указателя стека. В параметр Test8086 помещается код, определяющий тип процессора (0 - процессор 8086, 1 - процессор 80286, 2 - процессор 80386 или следующие модификации). В параметр Test8087 - результат тестирования сопроцессора, если он используется программой (0 - нет сопроцессора, 1 - сопроцессор 8087, 2 - сопроцессор 80287, 3 - сопроцессор 80387 или следующие модификации).

Таблица 11. Процедуры и функции модуля System

Имя Назначение
Арифметические функции
Abs
АrсТаn
Cos
Ехр
Frac
Int
Ln
Pi
Sin
Sqr
Sqrt
Абсолютное значение аргумента
Арктангенс аргумента
Косинус аргумента
Показательная функция с основанием е
Дробная часть аргумента
Целая часть аргумента
Натуральный логарифм
Число пи (3,1415926535897932385)
Синус аргумента
Квадрат аргумента
Квадратный корень аргумента
Процедуры для величин порядкового типа
Dec
Inc
Уменьшение переменной
Увеличение переменной
Функции для величин порядкового типа
Odd
Pred
Succ
Проверка аргумента на нечетность
Предшествующее значение аргумента
Следующее значение аргумента
Процедуры работы со строками
Delete
Insert
Str
Val
Удаление подстроки из строки
Помещение подстроки в строку
Преобразование числа в строковую переменную
Преобразование символьного представления числа в двоичное
Функции работы со строками
Concat
Сору
Length
Pos
Объединение строк
Выделение подстроки
Длина строки
Поиск подстроки в строке
Функции преобразования типов
Chr
High
Low
Ord
Round
Trunc
Получение символа по его коду
Получение максимального значения величины
Получение минимального значения величины
Порядковый номер величины перечисляемого типа
Округление вещественного число до целого
Целая часть числа
Функции управления вводом-выводом
Eof
Eoln
File Pos
FileSize
IOResult
SeekEof
SeekEoln
Конец файла
Конец строки текстового файла
Номер текущей компоненты файла
Текущий размер файла
Результат последней операции ввода-вывода
Конец файла
Конец строки текстового файла
Процедуры управления вводом-выводом
Append
Assign
BlockRead
Block Write
ChDir
Close
Erase
Flush
GetDir
MkDir
Read
Readln
Rename
Reset
Rewrite
RmDir
Seek
SetTextBuf
Truncate
Write
Writeln
Открытие файла для добавления в конец информации
Связь файловой переменной с внешним файлом
Чтение компонент из файла
Запись компонент в файл
Изменение текущего каталога
Закрытие открытого файла
Уничтожение внешнего файла
Освобождение буфера выходного файла
Получение текущего каталога накопителя
Создание каталога
Чтение информации из файла
Чтение информации из текстового файла
Переименование внешнего файла
Открытие существующего файла
Открытие нового файла
Удаление пустого каталога
Настройка на требуемую компоненту файла
Назначение буфера ввода-вывода
Удаление части файла, начиная с текущей позиции
Запись информации в файл
Запись строки в текстовый файл
Процедуры управление динамической памятью
Dispose
FrееMen
GetMem
Mark
New
Release
Освобождение динамической памяти
Освобождение динамической памяти
Создание новой динамической переменной
Фиксация состояния динамической памяти
Создание новой динамической переменной
Возвращение динамической памяти в заданное состояние
Функции управления динамической памятью и адресные функции
Addr
Assigned
CSeg
DSeg
MaxAvail
MemAvail
New
Ofs
Ptr
Seg
SSeg
SPtr
Адрес аргумента
Проверка равенства указателя значению nil
Содержимое регистра CS
Содержимое регистра DS
Размер максимального блока динамической памяти
Размер свободной области динамической памяти
Создание новой динамической переменной
Смещение адреса аргумента
Преобразование адреса в указатель
Адрес сегмента аргумента
Содержимое регистра SS
Содержимое регистра SP
Управление программой
Break
Continue
Exit
Halt
RunError
Досрочный выход из цикла
Начало новой итерации цикла
Выход из текущей подпрограммы или программы
Прекращение исполнения программы
Прекращение исполнения программы с выдачей сообщения об ошибке
Процедуры разнообразного назначения
Exclude
FillChar
Include
Move
Randomize
Исключение элементов множества
Заполнение области заданным значением
Включение элементов множества
Копирование области памяти
Инициализация генератора случайных чисел
Функции разнообразного назначения
Hi
Lo
ParamCount
ParamStr
Random
SizeOf
Swap
UpCase
Старший байт аргумента
Младший байт аргумента
Число параметров командной строки
Параметр командной строки
Случайное число
Размер аргумента
Перемена мест младшего и старшего байтов аргумента
Преобразование строчной буквы в заглавную

Далее кратко описаны процедуры и функции модуля в алфавитном порядке.





 У Вас есть материал пишите нам
 
    Copyright © 2008    
  Top.Mail.Ru