_______________ _____________
[Q-P]OK = 11.010001 100.101101
└-----------1
___________
[P-Q]OK=00.101110
При вычислении суммы [-Q-P]OK знаковые разряды равны 10, что свидетельствует о переполнении разрядной сетки.
ЗАДАЧА 4. Построить дополнительные коды для -Q, -U, -Р.
РЕШЕНИЕ. Для построения дополнительного кода (ДК) отрицательного числа используем обратный код числа. Прибавление единицы в младший разряд ОК дает дополнительный код числа:
[-Q]ОК=11.110011 [-U] ОК =11.110100 [-P]OK=11.000101
1 1 1
[-Q] ДК=11.110100 [-U]ДК =11.110101 [-Р]ДК=11.000110
ЗАДАЧА 5. Сложить в дополнительных кодах -Q -U, -Q-P, Q-Р, P-Q.
РЕШЕНИЕ. При сложении чисел в ДК перенос из старшего знакового разряда отбрасывается:
111 1 1 . 11 1
[-Q]ДК= 11.110100 [-Q]ДК = 11 110100
[-U]ДК= 11.110101 [-P]ДК = 11,000110
________________ ________________
[-Q-U]ДК= 11.101001 [-Q-Р]дк= 10.111010 Переполнение!
11 111 1 1
[Q]ДК= 00.001100 [Р]ДК= 00.111010
[-P]ДК= 11.000110 [-Q]ДК= 11.110011
_______________ ________________
[Q-Р]ДК=11.010010 [Р-Q]ДК= 00.101110
Сумма [-Q-P]ДK имеет комбинацию 10 в знаковых paзpядах чтосвидетельствует о переполнении разрядной сетки.
ЗАДАЧА 6. Вычислить 12-разр. произведение и 6-разр. частное: Q×U, U/Q.
РЕШЕНИЕ.
a. Для вычисления произведения Q×U перемножаем числители дробей, выражающих Q и U:
64×Q=001100
×
64×U=001011
-------ЧП1=001100
+
ЧП2=0011000
---------ЧС1=0100100
+
ЧП3=001100000
------------С=010000100
Здесь ЧП1 - частичное произведение, полученное умножением 64×Q, т. е. числителя Q, на младший разряд числителя U:
ЧП1=64×Q×1,
Аналогично, ЧП2 и ЧП3 - результаты умножения 64×Q на соответствующие разряды числителя U:
ЧП2=64×Q×10,
ЧП3=64×Q×1000.
Частичная сумма ЧС1=ЧП1+ЧП2, сумма С=ЧС1+ЧПЗ.
Окончательно, искомое произведение Q×P=C×(l/(64×64)) или в двоичной системе:
[Q×U]=010000100×0.000000000001=00.000010000100.
b. Для вычисления частного U/Q выпишем прямые коды делимого и делителя и ДК отрицательного значения делителя:
[U] =00.001011
[Q] =00.001100
[-Q]ДK =11.110100
Частное будет получено в форме ч0.ч1ч2ч3ч4ч5ч6.
Используем алгоритм деления без восстановления остатка. На первом шаге из делимого, а на последующих шагах - из удвоенного остатка вычитается делитель, если остаток положительный; в противном случае, когда остаток отрицательный, к удвоенному остатку прибавляется делитель. Знаки полученных последовательно остатков
R1, R2, ...
дают значения цифр частного: положительный знак соответствует цифре: 1, отрицательный знак дает цифру 0. Для вычитания используем ДК делителя:
[U] =00.001011
[-Q]ДК=11.110100
------------------R1 =11.111111 <->ч0 = 0 2×R1 =11.111110
[Q] =00.001100
-------------------R2 =00.001010 <+> ч1 = 1
2×R2 =00.010100
[-Q]ДК=11.110100
---------------------R3 =00.001000 <+> ч2 = 1
2×R3 =00.010000
[-Q]ДК=11.110100
---------------------R4 =00.000100 <+> ч3 = 1
2×R4 =00.001000
[-Q]ДК=11.110100
---------------------R5 =11.111100 <-> ч4 = 0
2×R5 =11.111000
[Q] =00.001100
---------------------R6 =00.000100 <+> ч5 = 1
2×R6 =00.001000
[-Q]ДК=11.110100
---------------------R7 =11. 111100 <-> ч6 = 0
Таким образом, получаем частное ч0.ч1ч2ч3ч4ч5ч6 = 0.111010.
при записи ответа удваиваем знаковый разряд: 00.111010.
ЗАДАЧА 7. Перевести в 8-ричную систему и вычислить: Т, R, S, R+S
T=11112, R=7778, S=2831.
РЕШЕНИЕ. В системе счисления с основанием 8 используется набор цифр (0,1,2,3,4,5,6,7). Для перевода числа Т-11112 делим это число на 8 на первом шаге, а на последующих шагах делим очередные частные на 8 и выписываем получающиеся остатки в обратном порядке:
11112:8=1389 остаток 0
1389:8= 173 остаток 5
173:8= 21 остаток 5
21:8= 2 остаток 5
2:8= 0 остаток 2
Таким образом, Т=255508. Аналогично получаем:
R= 777810= 171428, S= 283110=054178.
Для вычисления суммы в 8-ричной системе используем правила сложения: 0+0=0, 0+1=1,... ,0+7 = 7,..., 1×0=0, 1+1=2, …, 1+7=10, 2+7 = 11 и т.д. Итак, вычисляем [R+S]8:
переносы 11
[R]8=17142
[S]8=05417
-------------[R+S]8=24561
ЗАДАЧА 8. Перевести в 16-ричную систему и вычислить T, R, S, R+S
РЕШЕНИЕ. В 16-ичиой системе счисления используется набор цифр (0,1,2,З,4,5,6,7,8,9,A,B,C,D,E,F) причем последние шесть цифр A,B,C,B,E,F имеют значения 10,11,12,13,14,15 соответственно.
Переводим Т:
11112:16=694 8<->8
694:16= 43 0<->0
43:16= 2 11<->В
2:16= 0 2<->2
Итак, [Т]16=2В08. Аналогично находим:
[R]16 =[7778]16=1E62, [S]16=[12831]16=ОВОF.
Вычисляем сумму [R+S]16:
переносы 1 1
[R]16=1Е62 [S]16=0B0F -------------[R+S]l6=2971
При сложении l6-ричных чисел использованы соотношения 2+F=11и E+B=19.
ЗАДАЧА 9. Сложить числа с плавающей точкой:
101000Е100010+111000Е011110.
РЕШЕНИЕ. Имеем два числа с плавающей точкой, представленные в 2-й системе: 101000Е10010 и 111000Е011110. Второе число имеет меньший порядок, поэтому для выравнивания порядков находим разность порядков первого и второго чисел:
100010-011110=000100 или в 10-й системе [000100]=4. Сдвигаем мантиссу второго числа 111000 на 4 разряда вправо, получаем 000011. итак, имеем два числа с выравненными порядками:
101000Е100010 и 000011Е100010.
Складываем мантиссы:
101000
000011
--------101011
Поскольку при сложении мантисс не возникло переполнение разрядной сетки, нормализация не требуется и можно записать ответ:
101011Е100010.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.