- •Государственное бюджетное профессиональное образовательное учреждение «нижегородский радиотехнический колледж»
- •Практическая работа №1
- •Теоретическая часть
- •1 1 1 1 - Переносы
- •Сложение производится в три этапа.
- •1 Этап. Выравнивание порядков.
- •2 Этап. Сложение мантисс.
- •3 Этап. Нормализация результата.
- •Практическая часть
- •Задание
- •5Разрядов
Сложение производится в три этапа.
1 Этап. Выравнивание порядков.
Числа выравниваются в сторону большего порядка. Для этого мантиссы сдвигаются, чтобы порядки чисел были равны. Мантисса числа с меньшем порядком сдвигается вправо на колличество разрядов, равное разности порядков.
y1 = 0.101 * 10010 n1 = 0102 = 210
y2 = 0.1 * 10-001 n2 = -0012 = -110
n1 = 0102 = 210 – больший порядок
n1 - n2 = 2 - (-1) =3
поэтому сдвинем мантиссу числа y2 на 3 разряда вправо:
y2 = 0.0001 * 10010 n1 = 0102 = n2
y1 = 0.101 * 10010
2 Этап. Сложение мантисс.
Сложение мантисс чисел с выравненными порядками производится аналогично сложению чисел с фиксированной запятой. Отрицательные мантиссы представляются в обратных и дополнительных модифицированных кодах. Сумма чисел имеет мантиссу, равную сумме мантисс; порядок суммы равен большему порядку слагаемых.
Если при сложении мантисс в знаковых разрядах модифицированного кода суммы мантисс получили “01” или “10”, то возникло переполнение разрядной сетки. Чтобы избежать переполнения, перед сложением обе мантиссы сдвигаются вправо на 1 разряд, а общий порядок увеличивается на еденицу.
y1 = 0.100 * 10010 + М1 = + 00.100 nобщ = 0102 = 210
y2= 0.101 * 10010 М2 = 00.101
SМ = 01.001 - переполнение
y1 = 0.100 * 10011 nобщ = 210 + 110 = 310 = 0112
y2= 0.101 * 10011
3 Этап. Нормализация результата.
Если при сложении чисел получили ненормализованный результат, то его необходимо нормализовать. Для этого мантиссу суммы сдвигают влево так, чтобы старшая цифра мантиссы была отлична от нуля. Порядок суммы при этом уменьшается на колличество единиц, равное колличеству сдвигов мантиссы.
Например, если получили сумму S
S = 0.001 * 10100 n = 1002 = 410
М = 0.001 –ненормализированная
Поэтому, сдвигаем запятую в M на 2 разряда вправо для нормализации и уменьшаем n на 2 разряда, т.е:
N = 410 – 210 = 210 = 0102
S = 0.1 * 10010 --M = 0.1
n = 010
Практическая часть
Цель работы: Изучение выполнения арифметических операций над числами с плавающей запятой.
Задание
Выбрать из таблицы 1 числа А и В заданного варианта.
Сложить эти числа в обратном и дополнительном модифицированных кодах.
Сделать проверку, представив числа А и В в форме с фиксированной запятой.
Представить результат в разрядной сетке ЦВМ с плавающей запятой.
Составить отчёт.
Табл. 1
Номер варианта |
Число А |
Число В |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
0.101 * 10-011 0.1*10101 -0.11*1011 -0.1*1010 -0.111*10010 -0.1*10-001 -0.1*10101 0.1*10101 -0.1*10101 -0.101*10-11 -0.1*10100 0.111*1010 0.1*10101 -0.1*1010 -0.1*10-1 -0.11*1010 |
-0.1 * 101 -0.11*1010 0.1*10-1 0.11*101 0.1*10-1 0.101*101 0.1*1011 -0.11*10110 0.1*1010 -0.1*1011 0.101*10-1 -0.101*10101 -0.101*101 0.1*10-10 -0.1*10-11 0.1*10-10 |
1. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ ПРАКТИЧЕСКОЙ РАБОТЫ
Изучив теоретическую часть, переходим к выполнению задания.
Рассмотрим пример:
Сложить заданные числа.
A = -0.101*10101
В = 0.1011*10100
1 этап. Выравнивание порядков (n)
nA = 1012 = 510
nB = 1002 = 410
Порядок числа А больше порядка числа В (nA > nB) на единицу.
nA - nB = 510 – 410 = 110
Поэтому сдвинем мантиссу числа B вправо на один разряд.
B = 0.01011 * 10101
Запишем два числа с выравненными порядками N = 101.
A = -0.101 * 10101 МА = -101 nA = 1012
B = 0.01011 * 10101 MB = 01011 nB = 1012
2 этап. Сложение мантисс.
Перед сложением мантисс необходимо:
- выравнять разрядность мантисс
MA = -10100 MB = 01011
