![]() | |
НПО Системы Безопасности (499)340-94-73 График работы: ПН-ПТ: 10:00-19:00 СБ-ВС: выходной ![]() ![]() |
Главная » Периодика » Безопасность 0 ... 28293031323334 ... 101 использовать представление числовой информации в дополнительном или обратном кодах, а в случае умножения и деления более целесообразно использовать представление чисел, участвующих в операции, в прямом коде (конечно, речь здесь идет лишь о смещенных системах счисления). Возникает вопрос о том, в каком виде лучше хранить информацию в. памяти машины? Если при хранении использовать числа, записанные в прямом коде, то при необходимости алгебраического сложения потребуется до операции перевести их в дополнительный или обратный код, а после операции преобразовать .результат операции (если он отрицателен) снова в прямой код. При хранении в памяти машины числовой информации, записанной в дополнительном или обратном кодах, потребность в переводе возникнет при реализации операций умножения и деления. Из накопленной статистики процента встречаю-, щихся при работе машины арифметических операций для универсальных вычислительных машин с естественной формой представления вытекает, что около 33% всех операций, выполняемых машиной, приходится на операцию алгебраического сложения. Операция умножения составляет около 12% всех машинных операций, а операция деления - менее 2%. Остальной процент машинных операций падает на неарифметические операции. Если пренебречь неарифметическими операциями (большинство из которых не связано с кодом представления чисел в памяти машины), то для универсальных машин более выгодным является хранение числовой информации в памяти машины в виде дополнительного или обратного кода. Для специализированных машин это может оказаться неверным, так как процентное соотношение операций алгебраического сложения, умножения и деления может оказаться . совсем не таким, как для универсальных вычислительных машин. Для машин сполулогарифмической формой представления принято считать; что наиболее оптимальным является хранение мантисс в прямых кодах, а порядков-в допалнительных или обратных кодах. Такие рекомендации основаны на том, что при работе с мантиссами используются нормализованные мантиссы, но переполнение разрядной сетки при алгебраическом сложении не является нежелательным явлением, как при работе с естественным представлением чисел. Поэтому преобразование в соответствующий код при сложении-вычитании происходит примерно в половине случаев из всех случаев суммирования (ср. с результатами в.§ 1.4 для естественной формы представления). Таким образом, представление мантисс прямым кодом не дает при сложении - ощутимого проигрыша во времени, давая ощутимый выигрыш при операциях умножения и деления. Операция деления принадлежит к операциям, для которых желательно найти методы ускорения их выполнения. В § 2.1, 2.2.и 2.3 будут указаны, некоторые методы ускорения деления применительно к двоичной системе счисления. Большинство из них пригодно и для систем счисления с основанием. S. Перейдем теперь к рассмотрению операции деления в "избыточной квазиканонической системе счисления. При делении в квазиканонической системе счисления возникают .некоторые трудности, связанные с определением очередных цифр частного на основании анализа остатка от вычитания сдвинутого делителя. На каждом шаге деления" очередная . цифра частного должна выбираться таким образом, чтобы следующий остаток, полученный из данного вычитанием произведения делителя на выбранную цифру частного, лежал бы в том же самтэм диапазоне, что и данный остаток. Этот допустимый диапазон зависит от величины делителя. Если делимое (т. е. первоначальный остаток) не лежит в необходимом диапазоне, то, выбирая цифру частного в нулевом разряде, равнун? по модулю единице, мы можем привести исходный остаток в нужный диапазон. Каждая цифра частного г; .должна удовлетворять неравенству pi - yzi \ <с\у\, где у --делитель, pi - г-й остаток, а с - .некоторая константа, значения которой определяются допустимыми значениями цифр частного. Наиболее подходящая величина с есть 6,5. Для определения очередной цифры частного производят вычитание нормализованного делителя-из Очередного остатка (или прибавление нормализованного делителя, если знаки делителя и остатка не совпадают) до тех пор, пока не будет выполнено неравенство определяемое специальной схемой сравнения. В этом случае прот ггшгБЕГчитанЙа"(прйбаБлёйИй7-прекриШётс есть очередной остаток. Величина цифры 2/ есть число вычитаний или сложений,, которые были произведены для получения, нового остатка. Еслиполуяение нового остатка производилось путём вы- чихания делителя, то очередная цифра частного положительна, в Противном случае, очередная цифра частного является отрицательной. Если вышеприведенное неравенство выполняется сразу после сдвига делителя, то очередная цифра частного равна нулю. Пример 1.44. В десятичной квазиканонической гистеме счис-ления с цифрами {-5, -4, -3, -2, - 1, О, 1, 2, 3, 4, 5} найти частно- от деления числа <л:>,о = - 0,224385 на число <j;),o = 0,705. • Переходя к квазиканонической системе, получим (x)iq = = 0,236415 и (j),o= 1,315. Контролируемая величина Г = 0,5 Sj/ilO" =0,3525. «•=0 Операцию деления представляем с помощью следующей таблицы. Таблица 1.3
Окончательно \ = •0М2, илиЧ = 0.318. 0 ... 28293031323334 ... 101 |