Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТ / М 1 Технічна база інформаційних технологій / Tема 2. Основи побудови ПК / ІТ Зан_05 Т2 Лр_01 - Арифметичні операції в ЕОМ.doc
Скачиваний:
72
Добавлен:
19.02.2016
Размер:
202.75 Кб
Скачать

2.2. Арифметические действия над вещественными числами.

2.2.1 Сложение и вычитание вещественных чисел.

Выполнение арифметических операций над вещественными числами отличается от аналогичных операций над целыми числами.

К началу выполнения арифметического действия операнды операции помещаются в соответствующие регистры АЛУ.

При сложении и вычитании сначала производится подготовительная операция, называемая выравниванием порядков.

В процессе выравнивания порядков мантисса числа с меньшим порядком сдвигается в своем регистре вправо на количество разрядов, равное разности порядков операндов. После каждого сдвига порядок увеличивается на единицу.

В результате выравнивания порядков одноименные разряды чисел оказываются расположенными в соответствующих разрядах обоих регистров, после чего мантиссы складываются или вычитаются.

В случае необходимости полученный результат нормализуется путем сдвига мантиссы результата влево. После каждого сдвига влево порядок результата уменьшается на единицу.

В целом оперции сложения, вычитания чиселпредставленных в формате с плавающей точкой выполняются в следующей последовательности:

1) Осуществляется сравнение порядков (при этом поскольку в форматах хранятся не сами порядки а смещенные порядки, как целые беззнаковые числа, то их сравнение осуществляется путем вычитания их как целых беззнаковых чисел).

2) Производится выранивание порядков числа с меньшим порядком в сторону числа с большим порядком.

3) Производится алгебраическое сложение.

4) Производится нормализация результатов.

Пример 3.Сложить двоичные нормализованные числа 0.10111•2–1и 0.11011*210. Разность порядков слагаемых здесь равна

Пример 4.Выполнить вычитание двоичных нормализованных чисел 0.10101*210и 0.11101*21. Разность порядков уменьшаемого и вычитаемого здесь равна единице, поэтому перед вычитанием мантисса второго числа сдвигается на один разряд вправо:

При сложении, вычитании мантисс может возникнуть нарушение нормализации (денормализация) влево на 1 разряд. Для получения нормализованного результата необходимо мантиссу сдвинуть на 1 разряд вправо, а порядок увеличить на 1.

Может возникнуть переполнение порядков. При сложении мантисс близких по модулю друг к другу, но имеющих разные знаки может возникнуть денормализация впрао на любое число разрядов вплоть до нулей. Если получились все нули, то результату присваевается машинный ноль (потеря значимости).

Если мантисса не нулевая и имеет место денормализация вправо, то для получения нормализованного результата мантисса сдвигается влево на соответствующее число разрядов (пока старшаая разрядная цифра остается равной нулю), а порядок порядок уменьшается на эту величину. В этом случае может возникнуть антипереполнение.

Задание 2.

Самостоятельно выполните в четырехбайтном формате сложение и вычитание двух вещественых чисел, выбранных из таблицы №2, предварительно переведя их в двоичную систему счисления и осуществите проверку результатов в десятичной системе.

2.2.2. Умножение и деление вественных чисел.

При умножениидвух нормализованных чисел их порядки складываются, а мантиссы перемножаются.

Пример5 .Выполнить умножение двоичных нормализованных чисел:

(0.11101*2101)*(0.1001*211) = (0.11101*0.1001)* 2(101+11)= 0.100000101*21000.

При делении двух нормализованных чисел из порядка делимого вычитается порядок делителя, а мантисса делимого делится на мантиссу делителя. Затем в случае необходимости полученный результат нормализуется.

Пример 6.Выполнить деление двоичных нормализованных чисел:

0.1111*2100: 0.101*211= (0.1111 : 0.101)*2(100–11)= 1.1*21= 0.11•210.

Задание 3.

Самостоятельно выполните в четырехбайтном формате умножение и деление двух вещественых чисел, выбранных из таблицы №2, предварительно переведя их в двоичную систему счисления и осуществите проверку результатов в десятичной системе.