ВУЗ:
11
Пусть мантисса S-ричного числа содержит в r
старших разрядах нули. Тогда нормализация заключается в
сдвиге мантиссы на r разрядов влево и уменьшении
порядка на r единиц, при этом в младшие r разрядов
мантиссы записывается 0. При нулевой мантиссе
нормализация невозможна.
Задачи, решаемые на ЭВМ, предъявляют различные
требования к точности вычислений. Поэтому во многих
машинах используется несколько форматов с плавающей
запятой с различным числом разрядов мантиссы.
Пример - Пусть X = +24,5. Перевести число X в
формат числа с плавающей запятой,
X
p
mSX
X
×=
.
Для модуля порядка (см. рис. 1.3) выделим 7
разрядов (разряды [1
÷7]), а для мантиссы в данном примере
уменьшим количество разрядов с целью уменьшения
вычислений и выделим для нее 10 разрядов (разряды
[8
÷17]).
Определим мантиссу числа m
X
. Для этого
представим в двоичном виде целую и дробную части числа.
Алгоритм перевода целого десятичного числа в двоичный
вид широко описан в технической литературе и в данном
пособии не приводится. Целая часть числа X = 24
соответствует двоичному числу 11000 b. Для отображения
12
целой части числа необходимо 5 битов. Целую часть числа
X занесём в соответствующие разряды мантиссы m
X
.
Определим двоичный вид дробной части числа. В
общем случае алгоритм преобразования дробной части
десятичного числа к двоичному виду можно разбить на
следующие этапы:
1. Вычесть из исходного десятичного числа его
целую часть. Результат – число R.
2. Умножить число R на 2.
3. Если R
≥
1, то:
а) очередная цифра дробной части в
двоичном виде равна 1;
б) из числа R вычесть 1.
Если же R < 1, то очередная цифра дробной части
в двоичном виде равна 0.
4. Пункты 2 и 3 повторяются до получения
необходимого числа разрядов.
Количество итераций алгоритма (количество
полученных цифр дробной части) зависит от разрядности
мантиссы. Для данного примера разрядность мантиссы
равна 10. Для целой части числа X необходимо 5 битов, на
дробную часть числа X также выделяется 5 разрядов – 5
итераций.
Пусть мантисса S-ричного числа содержит в r целой части числа необходимо 5 битов. Целую часть числа
старших разрядах нули. Тогда нормализация заключается в X занесём в соответствующие разряды мантиссы mX.
сдвиге мантиссы на r разрядов влево и уменьшении Определим двоичный вид дробной части числа. В
порядка на r единиц, при этом в младшие r разрядов общем случае алгоритм преобразования дробной части
мантиссы записывается 0. При нулевой мантиссе десятичного числа к двоичному виду можно разбить на
нормализация невозможна. следующие этапы:
Задачи, решаемые на ЭВМ, предъявляют различные 1. Вычесть из исходного десятичного числа его
требования к точности вычислений. Поэтому во многих целую часть. Результат – число R.
машинах используется несколько форматов с плавающей 2. Умножить число R на 2.
запятой с различным числом разрядов мантиссы. 3. Если R ≥ 1, то:
а) очередная цифра дробной части в
Пример - Пусть X = +24,5. Перевести число X в
двоичном виде равна 1;
формат числа с плавающей запятой, X = S p X × m X .
б) из числа R вычесть 1.
Для модуля порядка (см. рис. 1.3) выделим 7
Если же R < 1, то очередная цифра дробной части
разрядов (разряды [1÷7]), а для мантиссы в данном примере
в двоичном виде равна 0.
уменьшим количество разрядов с целью уменьшения
4. Пункты 2 и 3 повторяются до получения
вычислений и выделим для нее 10 разрядов (разряды
необходимого числа разрядов.
[8÷17]).
Количество итераций алгоритма (количество
Определим мантиссу числа mX . Для этого
полученных цифр дробной части) зависит от разрядности
представим в двоичном виде целую и дробную части числа.
мантиссы. Для данного примера разрядность мантиссы
Алгоритм перевода целого десятичного числа в двоичный
равна 10. Для целой части числа X необходимо 5 битов, на
вид широко описан в технической литературе и в данном
дробную часть числа X также выделяется 5 разрядов – 5
пособии не приводится. Целая часть числа X = 24
итераций.
соответствует двоичному числу 11000 b. Для отображения
11 12
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »
