![]() | |
НПО Системы Безопасности (499)340-94-73 График работы: ПН-ПТ: 10:00-19:00 СБ-ВС: выходной ![]() ![]() |
Главная » Периодика » Безопасность 0 ... 18192021222324 ... 101 Переходя к нормализованному полулогарифмическому представлению, получаем < л; >з = 3-0,2012 и <j;>3 = 3-,0,2010. Так как порядки слагаемых равны между собой, то суммируем их мантиссы 0,2012 "-0,20Т0 • -0,0002 Так как в левом фезервном разряде нет единицы, то нарушения нормализации влево нет. Наличие нуля в первом значащем разряде мантиссы указывает на нарушение нормализации вправо. Для устранения этого нарушения сдвигаем результирующую мантиссу *на один разряд влево и -одновременно уменьшаем порядок результата на единицу. Сдвинутая мантисса имеет вид 0,0020. Она снова не нормализована. Повторяем сдвиг мантиссы на один разряд влево и уменьшение порядка результата .на одну единицу. .Сдвинутая мантисса 0,0200 все еще не нормализована, поэтому еще раз повторяем операцию сдвига мантиссы и уменьшения порядка результата. После этого сдвига получаем нормализованную мантиссу 0,2000. Окончательный ответ < л;+ ;;>з = 3.-0,2000. Теперь перейдем к рассмотрению операции вычитания. Для симметричных систем операция вычитания сводится к инвертированию мантиссы вычитае1Його и реализации операции сложения. Пример 1.26. Вычесть из < л; >д =-5-0,210Т число <;>5 = 5-0,1220. • Проводим инвертирование числа у, для чего инвертируем мантиссу этого числа: < -у >5== 5-0,1220. Далее осуществляем сложение чисел л; и (- у). Теперь рассмотрим операцию сложения-вычитания в полулогарифмической форме для смещенных систем счисления. Правила, сформулированные нами для симметричных систем, годятся и для смещенных систем. Единственное отличие состоит в методах . обнаружения нарушения нормализации в результирующей мантиссе. Для обнаружения переполнения в смещенных систе-"мах используется либо проверка содержимого знако- рого разряда, если 5>3, либо переход к модифици-вованным кодам, если 5 = 2,3. Для выявления пару шения нормализации вправо необходимо определить знак результирующей мантиссы. Если результирующая мантисса положительна, то признаком нарушения нормализации вправо служит наличие нуля в первом значащем разряде результирующей мантиссы. Если же результирующая мантисса отрицательна, то для обратного кода признаком нарушения нормализации вправо является появление в первом значащем разряде результирующей мантиссы цифры 5 - 1. Для случая дополнительного кода это правило верно за одним исключением. Если записать в дополнительном коде число -5"", то мы получим (-5""] = (5 - 1). (5 - 1)... (5 - 1) (5 - 1). И хотя в данном случае нарушения нормализации вправо нет, признак наличия нарушения срабатывает.- В машинах, использующих представление чисел в дополнительном коде, необходимо при обнаружении нарушения нормализации вправо проверить, не является ли результирующая мантисса числом, равным -5"". • Для выявления нарушения нормализации вправо сравнивается содержимое знакового разряда и первого значащего разряда мантиссы.- Если содержимое этих разрядов, не совпадает, то нарушения нормализации вправо нет. В противном случае, при использовании в. машине обратного кода можно утверждать, что произошло нарушение нормализации . вправо, а при использовании в машине дополнительного кода необходимо проверить, не имеет ли место случай 7n+j,= -5~". Если это не так, то можно утверждать, что произошло нарушение нормализации вправо. Пример 1.27. Сложить в четверичной смещенной системе числа <x>4 = 3,21 и >4= - 21,03. После перехода к нормализованной полулогариф-. ми ческой форме получим <x >4= 4Д"0,321 и <У>4 = = - 4-0,2103. Увеличиваем меньший порядок до большего. Тогда число х принимает вид < л; >4 = = 4-0,0321. Для суммирования мантисс введем для них обратный код: (otJ„ = 0.0321 и = 3.1230. Теперь суммируем мантиссы по правилу сложения чисел.с фиксированной запятой в обратном коде . . „ К1=0.0321 , - - • = 3.1230 KJo = 3.2211 Так как в знаковом разряде результирующей мантиссы стоит цифра 3, то переполнения не произошло. Наличие в знаковом разряде и первом значащем разряде мантиссы несовпадающих цифр говорит об отсутствии нарушения нормализации вправо. Таким образом, окончательный результат суммирования имеет вид < л;>5 =.4-0,1122. " Пример 1.28. Сложить в пятиричной смещенной системе числа <x>g = -0,04 и <j>б=-0,441. Переходим к нормализованной полулогарифмической форме <л:>д=-5-*-0,400 и <;;>д=-5"-0,4П. Преобразуем код числа х в код<л; >5 = - 5°-0,040. Теперь просуммируем мантиссы в дополнительном коде а. К1д = 4.410 . • К], =4.004 • . Кдд=13.414 Наличие цифры 3 в знаковом разряде свидетельствует о переполнении разрядной сетки. . Для исправления нарушения нормализации влево сдвигаем результирующую мантиссу на один разряд вправо, сохраняя знаковый разряд; Сдвинутая мантисса имеет вид 3.341. Теперь прибавляем к этой сдвинутой мантиссе корректирующее число 1.000. Окончательно получаем 4.341. Таким образом, ответ имеет вид < л;+;;>5 = 5.0,104. Пример 1.29. Сложить в семиричной смещенной системе числа (л;) = 7-0,251 и (;;)., = -7-0,246. Так как порядки слагаемых одинаковы, то переходим к сложению мантисс в обратном коде тИЛ =0.251 - . 6.420 . , • . 10.001 • . ~ \т ]„ =>0.002 х+у в 0 ... 18192021222324 ... 101 |