КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Сложение и вычитание десятичных чисел
Алгоритмы типов ДД или ОО Особенностью этих алгоритмов является то, что в вычислениях используются модифицированные коды. В основном, этапы выполнения алгоритмов типов ДД и ОО практически совпадают. Поэтому подробное рассмотрение будет проводиться только для первого из них. Вычисляем S = A ± B; | A | < 1; | B | < 1; A ≠ 0; B ≠ 0 Особенности алгоритма ДД 1) Числа в памяти хранятся в дополнительном коде. 2) Операции сложения и вычитания выполняются в модифицированном дополнительном коде. 3) Преобразование в модифицированный код происходит при пересылке данных из памяти в АЛУ. 4) Знаки чисел участвуют в вычислительных операциях и знак результата образуется автоматически после окончания вычислений. 5) Переполнение разрядной сетки обнаруживается при несовпадении цифр в знаковых разрядах кода суммы. 6) Образовавшаяся сумма записывается в память в дополнительном коде. Выполним пример вычислений по алгоритму ДД. S = A – B; A = -.01101; B =.11011; Коды чисел в ОЗУ [А]д = 1.10011; [B]д = 0.11011 В регистры АЛУ принимаются модифицированные коды чисел: РГА: = [A]дм = 11.10011; РГВ: = [B] дм = 00.11011 (Точка в кодах введена условно, чтобы отделить знаковые разряды). Так как действие вычитание, то D: = 1. Ищем псевдосумму в виде S* = [ РГА] пм + [ РГВ]д; [ РГВ] дм = [РГВ] ом + 2-n [РГА] пм = 11.10011 [РГВ] дм = 11.00101 S* = 110.11000 Анализ цифр кода псевдосуммы слева направо показывает следующее. Крайняя левая цифра 1 представляет собой перенос из старшего разряда. Она выходит за пределы разрядной сетки. Два следующих разряда являются знаковыми. Цифры в этих разрядах не совладают. Следовательно, | S| > 1. Приведем пример вычислений для алгоритма ОО. S= A + B; A=.110101 = 53 B = -.001101 = 13 Так как ДЕЙСТВИЕ D: =0, А> 0, В < 0, то ищем псевдосумму S* = А + В, следовательно: [A] пм = 00.110101 + [B] ом = 11.110010 S* = 100.100111 + 1 [S] пм = 00.101000 = 40 Крайняя слева "1" в численном значении S' является единицей переноса за пределы разрядной сетки и приводит к процессу "циклического переноса" который состоит в прибавлении 1=2-n к псевдосумме. (Выполним контроль в десятичном коде S = 53 – 13 = 40) Как указывалось выше, десятичные числа в ЭВМ представляются в двоично-десятичном коде. Для представления каждой десятичной цифры используются четыре двоичных разряда, что позволяет получить шестнадцать различных комбинаций двоичных кодов. Вследствие этого можно построить различные двоично-десятичные коды, которые характеризуются тем, какой вес присваивается каждому из четырех двоичных разрядов. В табл. 1.2 приведены для примера несколько двоично-десятичных кодов. Каждый код обозначается той последовательностью весов разрядов, которая ему соответствует. Наиболее употребительным является код 8-4-2-1, который совпадает с обычным двоичным кодом. Таблица 1.2
Дата добавления: 2015-05-09; Просмотров: 548; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |