Вещественные типы
В отличие от порядковых типов, значения которых всегда сопоставляются с рядом целых чисел и, следовательно, представляются в ПК абсолютно точно, значения вещественных типов определяют произвольное число лишь с некоторой конечной точностью, зависящей от внутреннего формата вещественного числа.
Таблица 6
Длина байт | Название | Количество значащих цифр | Диапазон десятичного порядка |
real extended comp | 11…12 15…16 19...20 19...20 | -39…+38 -324…+308 -4951…+4932 -2*1063+1…+2*1063-1 |
Вещественное число в Турбо Паскале занимает от 4 до 10 смежных байт и имеет следующую структуру в памяти ПК:
s | l | m |
Здесь s – знаковый разряд числа; l – экспоненциальная часть, содержит двоичный порядок; m – мантисса числа. Мантисса m имеет длину от 23 (для SINGLE) до 63 (для EXTENDED) двоичных разрядов, что и обеспечивает точность 7..8 для EXTENDED десятичных цифр. Десятичная точка (запятая) подразумевается перед левым (старшим) разрядом мантиссы, но при действиях с числом ее положение сдвигается влево или вправо в соответствии с двоичным порядком.
Доступ к типам SINGLE, DOUBLE и EXTENDED возможен только при особых режимах компиляции. Эти типы рассчитаны на аппаратную поддержку арифметики с плавающей точкой и для их эффективного использования в состав ПК должен входить арифметический сопроцессор.
Для работы с вещественными данными могут использоваться стандартные математические функции, представленные в таблице
Таблица 7
Обращение | Тип параметра | Тип результата | Примечание |
Abs arctan (x) cos(x) exp(x) frac(x) int(x) ln(x) pi Random Random(x) Randomize sin(x) sqr(x) sqrt(x) | real, integer real -- -- -- -- -- -- -- integer -- real -- -- | Тип аргумента real -- -- -- -- -- -- -- integer -- real -- -- | Модуль аргумента Арктангенс (знач. в рац.) Косинус, угол в радианах Экспонента Дробная часть числа Целая часть числа Логарифм натуральный π=3.141592653 Псевдослучайное число, равномерно распределенное в диапазоне Псевдослучайное целое число, равномерно распределенное в диапазоне 0…(x-1) Инициация генератора псевдослучайных чисел Синус, угол в радианах Квадрат аргумента Корень квадратный |
1осн [90-118]
12доп. [30-42]
Контрольные вопросы
- Какие типы данных относятся порядковым типам?
- Какие функции можно применять к порядковым типам?
- Какие две функции поддерживают работу с типами-диапазонами?
- Как задается перечисляемый тип?
5. Какие типы относятся к структурированным?
- Что представляют собой пользовательские типы?
- Что представляют собой типизированные константы?
- Какие особенности использования переменных перечисляемых типов?
- Что представляет собой типизированная константа процедурного типа?
Дата добавления: 2015-10-09; просмотров: 489;