12. UniPascal в деталях
75
стандартных процедур READ и READLN для ввода с текстового файла не создает таких
проблем.
Переменные перечисляемого типа
Переменные перечисляемого типа представляются как целые переменные с
границами 0..N-1, где N - число констант перечисляемого типа.
иогические переменные
Как уже было сказано, логический тип может формально рассматриваться как
перечисляемый тип, определенный следующим образом:
BOOLEAN = (FALSE, TRUE);
Это означает, что 0 представляет FALSE, а 1 - TRUE.
Целые переменные
Представление переменных типа  LONGINT занимет 4 байта. Первый байт
содержит младшую часть числа, следующие два байта - следующие по старшинству
части двойного слова и четвертый байт - старшая часть двойного слова.
Остальные целые типы INTEGER, CARDINAL и их поддиапазоны представляются в
двух байтах - сначала младшая, потом старшая часть слова. Для представления чисел со
знаком используется дополнительный код.
Переменные типа CHAR
Переменные типа CHAR представляются значениями от 0 до 255,
представляющими собою коды раширенного ASCII набора.
Вещественные переменные
Представления переменных вещественного типа занимают четыре байта
согласно стандарту IEEE. Байты пронумерованы в обратном порядке. Знак
располагается в 7-ом бите старшего байта, экспонента - в битах с 6-ого до 0-ого
старшего байта и в 7-ом бите следующего байта. Мантисса занимает остальное
пространство этого байта и остальные два байта.
Пусть через e обозначим порядок (exponent), через m - мантиссу (mantissa) , а
через s - знак (sign) числа, тогда значение(value) определяется следующим образом:
(1) if 0 < e < 255 then value = (-1)
s
*2
(e-127)
*(1.m);
(2) if (e = 0) and (m = 0) then value = (-1)
s
*0 = 0;
(3) if (e = 0) and (m <> 0) then value = (-1)
s
*2
-126
*(0.m);
(4) if (e = 255) and (m = 0) then value = (-1)
s
*infinite;
(5) if (e = 255) and (m <> 0) then value is a NaN (Not A Number);
UniPascal не поддерживает:
*
денормализованные значения (3). Получается 0.0;
*
представление бесконечности (4). Получается переполнение;
*
невалидные значения (5). Непредсказуемый результат.
<<  <  GO  >  >>

Вернуться к началу сайта