Представление чисел в формате с фиксированной точкой
Для чисел в естественной форме положение точки жестко фиксируется:
· Для целых чисел точка располагается справа от младшего разряда:
00000000000000002 =010, 0111111111111111. 2=32767.10;
· Для правильных дробей – перед старшим разрядом:
0.0000000000000002=010, 0.0000000000000012=0.000 030 517 57810;
· Для смешанных дробей – в определенном месте, отделяющем целую часть числа от дробной:
000000.00000000002=0.010, 000001.00000000012=1.000 976 56310
Наиболее часто такая форма используется для целых чисел и целых чисел без знака. Количество разрядов может быть либо 16 (вид Н), либо 32 (вид F).
Во всех форматах знак числа помещается в старший разряд и кодируется как 0 – знак положительного числа, либо как 1 – знак отрицательного числа. Знак отделяется от самого числа воображаемой точкой (рис.)
Знак 214 213 21 20
Аmin | |||||||
Формат Н | … | ||||||
Аmax | |||||||
… |
Знак 230 229 21 20
Аmin | |||||||
Формат F | … | ||||||
Аmax | |||||||
… |
Рис. 1.3. Форматы чисел с фиксированной точкой.
Фиксированная точка позволяет задать число только в строго определенном диапазоне. В формате Н числа можно задавать
От 1111 1111 1111 11112 до 0111 1111 1111 11112,
т.е. от -3276710 до 3276710, или от (1 – 215 ) до (215-1).
В формате F числа могут находиться в интервале
От 1111 1111 1111 1111 1111 1111 1111 11112
До 0111 1111 1111 1111 1111 1111 1111 11112,
т.е. от -7 F F F F F F F16 до 7 F F F F F F F16.
Естественно, что представление в шестнадцатиричной системе для формы F предпочтительнее двоичной.
Рассмотрим несколько примеров.
ЗАДАЧИ
1.3.1. Представить в форматах Н и F числа -12710 и 12710
12710=1*26+1*25+1*24+1*23+1*22+1*21+1*20=0111 11112.
А2Н=0000 0000 0111 11112, А2F=0000 00 7 F16.
-12710=- (1*26+1*25+1*24+1*23+1*22+1*21+1*20)= -0111 11112.
А2Н=1000 0000 0111 11112, А2F=8000 00 7 F16.
1.3.2. Определить, какие из следующих шестнадцатиричных чисел положительные, а какие отрицательные: 9754, 157, ADF, 7654AD и DFEA.
Знак числа определяется по первой цифре: если она меньше 8 (1000), то число положительное, если значение от 8 до F, то отрицательное. Таким образом, получаем 9754<0, 157>0, ADF<0, 7654AD>0 и DFEA<0.
Дата добавления: 2015-09-18; просмотров: 1385;