Пример выполнения лабораторной работы. Рассмотрим пример выполнения некоторых пунктов лабораторной работы на примере двух
Рассмотрим пример выполнения некоторых пунктов лабораторной работы на примере двух чисел A и B. Сформируем числа следующим образом: Владимир A2 = 110101012 Резников B2 = 101101012 Далее идем по пунктам задания. 1. Переведем A2 и B2 в десятичную СС. A10 = 27 + 26 + 24 + 22 + 20 = 128 + 64 + 16 + 4 + 1 = 21310. B10 = 27 + 25 + 24 + 22 + 20 = 128 + 32 + 16 + 4 + 1 = 18110. 2. Переведем числа A10, B10 в троичную СС. В процессе перевода будем использовать последовательное заполнение разрядной сетки, которая в случае троичной СС будет иметь следующий вид:
Тогда A10 будет представлено в троичной СС следующим образом: A3 = 2*34 + 1*33 + 2*32 + 2*31 + 0*30 = 162 + 27 + 18 + 6 + 0 = 212203. B3 = 2*34 + 0*33 + 2*32 + 0*31 + 1*30 = 162 + 0 + 18 + 0 + 1 = 202013. 6. Выполним A2+B2.
7. Выполним A3+B3.
12. Выполним A2-B2.
13. Выполним A3–B3.
16. Считая числа A2 и B2 знаковыми числами в прямом коде, найдем их десятичные значения AПК и BПК. Старший разряд числа A2 равен 1, следовательно, число отрицательное. Оставшиеся разряды образуют модуль числа, равный |A| = 10101012 = 26 + 24 + 22 + 20 = 64 + 16 + 4 + 1 = 8510. Таким образом, AПК = 1.10101012 = -8510. Старший разряд числа B2 равен 1, следовательно, число отрицательное. Оставшиеся разряды образуют модуль числа, равный |B| = 01101012 = 25 + 24 + 22 + 20 = 32 + 16 + 4 + 1 = 5310. Следовательно, BПК = 1.01101012 = -5310. 17. Считая числа A2 и B2 знаковыми числами в прямом коде, представить их в 16-разрядном формате, получив в результате числа AПК16 и BПК16. Для того, чтобы увеличить разрядность числа, представленного в ПК, сохранив при этом правильный знак, нужно между знаковым разрядом и модулем числа добавить недостающее количество разрядов, равных нулю. В нашем случае число AПК имеет 8 разрядов. Следовательно, чтобы увеличить его длину до 16 разрядов, нужно между знаком и модулем добавить восемь нулевых разрядов. Вот что мы получим: AПК16 = 1.00000000 1010101ПК. Аналогично поступаем с числом BПК. Поскольку в нашем примере оно также является восьмиразрядным, то после знака добавляем 8 нулевых разрядов: BПК16 = 1.00000000 0110101ПК. 18. Выполним AПК16 + BПК16, представив результат в двоичной, шестнадцатеричной и десятичной СС. Первым делом при сложении чисел в ПК проверяем, равны ли знаки слагаемых. Очевидно, что знаки равны, следовательно, складываем модули чисел.
Подставив к результату знак, равный в нашем случае единице, получим следующее значение: AПК16 + BПК16 = 1.0000000100010102 = – (27+23+21) = – (128+8+1) = –13710. AПК16 + BПК16 = 1.0000000100010102 = 1000 0000 1000 1010 = 808A16. 19. Считая числа A2 и B2 знаковыми числами в дополнительном коде, найдем их десятичные значения AДК и BДК. Старший разряд числа A2=11010101 равен 1, следовательно, число отрицательное и требует перевода в прямой код. Убираем знак, оставшиеся разряды инвертируем и прибавляем единицу, и подставляем знак на место. Получим: AДК = 1.1010101ДК = 1.0101011ПК = – (32+8+2+1) = -4310. Аналогично и с числом B: BДК = 1.0110101ДК = 1.1001011ДК = – (64+8+2+1) = -7510. 20. Представим числа A2 и B2 в 16-разрядном формате, считая их записанными в дополнительном коде. Для того, чтобы увеличить разрядность двоичного числа в ДК, не изменим при этом его значение, нужно между знаковым и значащими разрядами добавить недостающее количество разрядов, значение которых равно знаку числа. В нашем случае AДК = 1.1010101ДК есть восьмиразрядное отрицательное число. Поскольку знак равен 1, после знакового разряда вставляем 8 разрядов, равных единице. Получаем: AДК16 = 1.11111111 1010101ДК. То же самое проделываем и с числом B: BДК16 = 1.11111111 0110101ДК. 21. Выполним AДК16 + BДК16, представив результат в двоичной, шестнадцатеричной и десятичной СС. При сложении чисел в ПК предварительный анализ знаков не делаем, а складываем числа «целиком», сразу получая правильный результат:
Отметим, что при сложении чисел в ДК перенос из старшего разряда игнорируется и отбрасывается. Таким образом, результат составляет столько же разрядов, сколько и слагаемые (в нашем случае 16). Получаем: AДК16 + BДК16 = 1.11111111100010102 = 1111 1111 1000 1010 = FF8A16. Чтобы перевести результат из ДК в десятичную систему нужно сначала перевести его в прямой код. Поскольку результат отрицательный (старший разряд равен 1), то отделяем знак, оставшиеся 15 разрядов инвертируем и прибавляем единицу, после чего подставляем знак. Получаем: AДК16 + BДК16 = 1.1111111110001010ДК = 1.0000000001110110ПК = = – (64+32+16+4+2) = -11810. Если взглянуть на результат, полученный в п.19, то можно убедиться в правильности выполненного сложения. Действительно: AДК + BДК = -4310 + (-7510) = -11810. 22. Найдем для чисел AПК и BПК противоположные по знаку числа Для того, чтобы у числа, представленного в прямом коде, изменить знак, достаточно инвертировать знаковый разряд числа. AПК = 1.10101012 = -8510. -AПК = 0.10101012 = +8510. Поскольку -AПК – положительное число, то при расширении его до 16 разрядов после знакового разряда вставляем восемь разрядов, равных нулю: -AПК16 = 0.00000000 10101012. Аналогично для числа B: BПК = 1.01101012 = -5310. -BПК = 0.01101012 = +53. -BПК16 = 0.00000000 01101012. 23. Найдем для чисел AДК и BДК противоположные по знаку числа Для того, чтобы у числа, представленного в ДК, изменить знак, следует инвертировать все разряды числа и к полученному значению прибавить единицу. Эти операции делаются над всеми разрядами числа, включая знаковый. Выполним данные действия над числами A2 и B2, считая их числами в ДК. AДК = 1.10101012 = -4310. -AДК = 0.01010112. -AДК16 = 0.00000000 01010112. BДК = 1.01101012 = -7510. -BДК = 0.10010112. -BДК16 = 0.0000000010010112. Для чисел, полученных в п. 22, проанализируем по отдельности старший и младший байты, считая их числами в прямом коде. Итак, имеем: -AПК16 = 0.00000000 10101012. Старший байт числа (старшие 8 разрядов) равен: 000000002 = 0.0000000ПК = 010. Младший байт числа (младшие 8 разрядов) равен: 010101012 = 0.1010101ПК = + (64+16+4+1) = +8510. Аналогично для числа B: -BПК16 = 0.00000000 01101012. Старший байт числа (старшие 8 разрядов) равен: 000000002 = 0.0000000ПК = 010. Младший байт числа (младшие 8 разрядов) равен: 011101012 = 0.0110101ПК = + (32+16+4+1) = +5310.
Популярное: Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ... Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (347)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |