КАТЕГОРИИ: Архитектура-(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) |
Обратный код числа
Для образования обратного кода коэффициент С выбирают равным максимальному n разрядному числу: C = 2 n - 1. Значение числа N в обратном коде определяется выражением:
N = bnbn -1... b 1 b 0 = bn´ (-2 n + 1) + bn -1 qn -1+…+ b 1 q 1+ b 0 q 0, или , где bn, bn -1,..., b 1, b 0 - цифры и соответствующие веса цифр: 0 и 1 разрядов числа; bn - дополнительный знаковый разряд, для неотрицательных чисел равен 0 (bn = 1), для отрицательных чисел равен единице (bn = 1); bnbn -1... b 1 b 0 - запись целого n разрядного отрицательного числа в обратном коде; n, п - 1,..., 1, 0 - номера разрядов; bi ´ 2 i - весовой коэффициент i -го разряда (i = 0, n -1); (-2 n + 1) - весовой коэффициент знакового n -го разряда. Пример 8.16. Пусть в обратном коде четырехразрядное число A имеет вид: 1011 (знаковый разряд 1, число отрицательное). Тогда это число в десятичной системе счисления равно: A = 1 ´ (-23 + 1) + 0 ´ 22 + 1 ´ 21 + 1 ´ 20 = -7 + 0 + 2 + 1 = -4 (-01002). Пример 8.17. Пусть в обратном коде четырехразрядное число B имеет вид: 0100 (знаковый разряд 0, число неотрицательное). Тогда это число в десятичной системе счисления равно: B = 0 ´ (-23 + 1) + 1 ´ 22 + 0 ´ 21 + 0 ´ 20 = 0 + 4 + 0 + 0 = +4 (+01002). Найдем правило нахождения (n + 1)-разрядного обратного кода m -разрядного отрицательного числа (m ≤ n). Запишем равенства: ; ; ; . Последнее равенство справедливо при 1- bi = ai или bi = 1 - ai (i = 0, n - 1). Таким образом, для получения (n + 1)-разрядного обратного кода (цифры - bi, i = 0, n - 1) целого m -разрядного (m ≤ n) отрицательного числа (цифры - aj, j = 0, m -1) необходимо: 1) дополнить исходное m -разрядное число -am -1... а 1 a 0 незначащими n - m нулями до разрядности n, т.е получить число: -an -1 an -2 … amam -1 ... а 1 a 0, aj =0, j = m, n - 1); 2) получить цифры обратного кода bi (i = 0, n - 1). Для этого в n разрядах абсолютной величины исходного числа ai (i= 0, n -1), дополненной до разрядности n, заменить 1 на 0, а 0 на 1 (bi = 1 - ai, i = 0, n -1); 3) в разряд с номером n записать 1 (bn = 1). Пример 5.18. Найдем шестиразрядный обратный код числа -410 (-1002). Знаковый разряд имеет номер 5 (n = 5). Количество разрядов в прямом коде числа равно 3 (m = 3). 1. Дополним исходное число двумя незначащими нулями (n - m = = 5 - 3 = 2) до разрядности 5: -1002 = -001002. 2. Получим цифры обратного кода bi (i = 0, 4). В пяти разрядах исходного числа меняем цифры 0 на 1 и 1 на 0: цифры исходного числа: 00100 цифры обратного кода: 11011 3. Формируем старший знаковый разряд: 11011 ® 1111011. Таким образом, шестиразрядный обратный код числа -4 равен 1111011. Заметим, что запись неотрицательного числа при нахождении его обратного кода не изменяется: ; ; . Равенство выполняется при bi = ai., i = 0, n -1, bn = 0. Сформулируем правило образования прямого кода числа из обратного кода целого отрицательного числа. Для этого необходимо: 1) вычеркнуть n -й разряд обратного кода числа; 2) провести замену в оставшихся n -1 разрядах 1 на 0, 0 на 1; 3) приписать к полученной абсолютной величине числа знак «минус». Пример 5.19. Пусть обратный код числа равен 1011 (n = 3). Найдем прямой код числа. 1. Вычеркиваем третий разряд обратного кода числа: 1011 ® 011. 2. Проводим замену в оставшихся трех разрядах 1 на 0, 0 на 1: 011 3. Приписываем слева к полученной абсолютной величине числа знак «минус»: 1002 ® -1002 (-410). Таким образом, четырехразрядный обратный код числа 1011 соответствует числу -4. Пример 5.20. Пусть обратный код числа равен 1111 (n = 3). Найдем прямой код числа. 1. Вычеркиваем третий разряд обратного кода числа: 1111 ® 111. 2. Проводим замену в оставшихся трех разрядах 1 на 0, 0 на 1: 111 3. Приписываем слева к полученной абсолютной величине числа знак «минус»: 02 ® -02 (010). Таким образом, четырехразрядный обратный код числа 1111 соответствует числу 0. При использовании обратного кода числа число 0 имеет два представления: 000..00 и 111..11. Значения минимальных отрицательных и максимальных положительных целых чисел, которые можно хранить в обратном коде в словах размера 1, 2, 4 и 8 байтов, показаны в табл. 9.3. При заполнении таблицы использовались выражения для определения минимального отрицательного и максимального положительного числа: L min = -28´ l -1 - 1, (5.3) L max = 28´ l -1 - 1, (5.4) где L min - минимальное целое отрицательное число, представленное в обратном коде; L max - максимальное целое положительное число, представленное в обратном коде; l - размер слова в байтах. Таблица 5.3
Дата добавления: 2014-01-06; Просмотров: 648; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |