Паскаль: подання чисел та інших значень, Детальна інформація

Паскаль: подання чисел та інших значень
Тип документу: Реферат
Сторінок: 9
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 21.4
Скачувань: 1101
Для всіх цих типів означено всі операції, що й для типу Integer.

Числа базового типу Real займають 6 байтів. 1 біт зайнятий знаком числа, 39 – дробовою частиною, 8 – порядком. Нескладно підрахувати, що діапазон додатних чисел – від 2-126\xF0BB 2.9\xF0B4 10-39 до (2-2-39)\xF0B4 2127\xF0BB 1038.

Значення типу Single займають 4 байти (дробова частина – 23 біти, порядок – 8). Діапазон додатних значень – від 2-126 до (2-2-23)\xF0B4 2127\xF0BB 1038.

Значення типу Double займають 8 байтів (дробова частина – 52 біти, порядок – 11). Відзначимо, що з урахуванням особливостей архітектури сучасних комп'ютерів краще користуватися цим типом, ніж типом real [Григ]. Діапазон додатних значень – від 2-1022\xF0BB 10-315 до (2-2-52)\xF0B4 21023\xF0BB 10315.

Значення типу Extended займають 10 байтів (дробова частина – 64 біти, порядок – 15). Діапазон додатних значень – від 2-16382\xF0BB 10-4931 до \xF0BB 2\xF0B4 216383\xF0BB 104932.

Відзначимо, що в процесорі комп'ютера числа обробляються саме в поданні типу Extended. При записі в регістри процесора числа з інших типів перетворюються в цей. Отже, цей тип має найбільший серед дійсних типів діапазон та найвищу точність подання дійсних чисел.

Значення типу Comp (скорочене compound – складений) займають 8 байтів. Ці значення є дійсними поданнями цілих чисел від -263 до +263-1. До них застосовні операції дійсних, а не цілих типів.

І останнє зауваження. Кількість байтів, які займаються значеннями будь-якого типу, можна дізнатися, викликавши функцію SIZEOF. Наприклад, із виклику sizeof(Longint) повертається 4, із виклику sizeof(Word) – 2.

Задачі

15. У діалекті Турбо Паскаль на цілих типах визначена операція "додавання за модулем 2" із знаком xor. Вона виконується шляхом побітового додавання операндів за правилами 0\xF0C5 0=1\xF0C5 1=0, 1\xF0C5 0=0\xF0C5 1=1, тобто без переносу 1 у наступний розряд. Наприклад, у типі Byte 220 xor 127 =163 – це добре видно в байтовім поданні:

\xF0C5 11011100

01111111

10100011

Довести її властивості: якщо a, b, c позначають довільні цілі операнди, то

a xor a = 0, a xor 0 = a, a xor b = b xor a,

(a xor b) xor c =a xor (b xor c), (a xor b) xor b = a.

The online video editor trusted by teams to make professional video in minutes