|
№ Варианта | Операнды | Задание 1 (ЧФЗ) | Задание 2 (ЧПЗ) | Задание 3 (2-10) | ||||||
Операции | Операции | Операции | ||||||||
X+Y | X-Y | X*Y | X+Y | X-Y | X*Y | X+Y | X-Y | X*Y | ||
X Y | 34.71 71.34 | 34.71 71.34 | 34.71 71.34 |
Задание 1.
X = 34(10) = 0010 0010(2); Y = 71(10) = 0100 0111(2).
Выполним сложение в ПК:
0010 0010
+
0100 0111
0110 1001
0100 1001(2) =105(10)
0|0010 0010 Х
+
1|1011 1001 -Y в ДК
1|1101 1011 Z в ДК
Z=-0010 0101=-37
0000 0000 0000 Z
0000 0100 0111 Z+=Y*X3
0000 1000 1110 Z*=10
0100 0111 0000 Z=(((Z+Y*X4)*10+Y*X5)*10+Y*X6)*10
0000 0100 0111 Z+=Y*X7
0100 1011 0111 Z
1001 0110 1110 Z*=10
100101101110(2)=2414(10)=34*71
Задание 2.
Преобразуем дробную часть Х, равную 0.71(10) в двоичное число:
2*0,71=1,42 1
2*0,42=0,84 0
2*0,84=1,68 1
Таким образом, 0.71(10) = 0.101(2), a X = 34.71(10) = 00100010.101(2).
Представим X в формате ЧПЗ, округлив значение мантиссы до 8 разрядов (ненормализованное число):
P(X)=0;M(X)=100010,11
Нормализуем X:
P(X norm)=6
0110*0,10001011
Теперь преобразуем дробную часть Y, равную 0.34(10) в двоичное число:
2*0,34=0,68 0
2*0,68=1,36 1
2*0,36=0,72 0
Таким образом, 0.34(10) = 0.010(2), a Y = 71,34(10) = 0100 0111.010(2). Представим Y в формате ЧПЗ, округлив значение мантиссы до 8 разрядов (ненормализованное число):
0000*1000111,1
Нормализуем Y:
P(Y norm)=7
0111*0,10001111
Сложить два числа Z = X+Y
Max(P(Y norm),P(X norm))=0111
0,01000101
+
0,10001111
0,11010011
0.11010011=27*0.82421875=105,5(10)
Выполним операцию вычитания (X-Y)
Y = -71,34(10) X = 34,71(10)
0111 0 01000101 ПК
0111 1 01110001 ДК (быстрый перевод)
+
0111 0 01000101 X
0111 1 10110110 Перенос из знакового разряда отсутствует. Число отрицательное в ДК, т.к. знаковый разряд = 1.
Вычислим результат, преобразовав его из ДК в ПК:
1/0111/10110110(дк)=0100101,0(пк)=37
Вычислить произведение Z = X*Y = 34,71(10)*71,34(10)
P(X)=0110 Q(X)=0,10110101
P(Y)=0111 Q(Y)=0,10001111
§ перемножим мантиссы сомножителей (вариант умножения младшими разрядами вперед):
Z*=10 |
| |
Z+=Y*X1 |
| |
Z |
| |
Z*=10 | ||
Z=(Z+Y*X2)*10 | ||
Z=(Z+Y*X3)*10 | ||
Z=(Z+Y*X4)*10 | ||
Z+=Y*X5 |
| |
Z | ||
Z*=10 | ||
Z=(Z+Y*X6)*10 | ||
Z+=Y*X7 |
| |
Z | ||
Z*=10 | ||
Z+=Y*X8 |
| |
Z |
§ сложим порядки сомножителей
0110 -Px
+
0111 -PY
1101 -Px+ PY
Z = 1101* 0.100110110100101 = 2484,625(10).
Задание 3.
Выполнить арифметические действия над операндами, представив их в двоично-десятичном коде.
Выполним операцию сложения двоично-десятичных чисел
X = 347(10) = 0000 0001 0101 1011(2);Y = 713(10) = 0000 0010 1100 1001(2)
0000 0001 0101 1011 X
+
0000 0010 1100 1001 Y
0000 0100 0010 0100
Z = X+Y = 0000 0100 0010 0100(2) = 1060(10).
Вычислим выражение Z = X – Y
Представим |Y| в ДК:1111 1101 0011 0111
Выполним сложение:
0|0000 0001 0101 1011 X
+
1|1111 1101 0011 0111 -Y
1|1111 1110 1001 0010 Z в ДК
Z(пр)=-101101110=-366
Умножение двоично-десятичных чисел
Z = X * Y = 347(10) * 713(10) = 247411(10)
Z*=10 |
|
|
|
| |
Z+=X*Y1 |
|
| |||
Z*=10 |
|
| |||
Z=(Z+X*(Y2))*10 |
|
| |||
Z+=X*(Y3) |
|
| |||
Z |
|
| |||
Z*=10 |
|
| |||
Z+=X*Y4 |
|
| |||
Z |
|
| |||
Z*=10 |
| ||||
Z=((Z+X*Y5)*10+X*Y6)*10 |
| ||||
Z+=X*Y7 |
|
| |||
Z |
| ||||
Z*=10 |
| ||||
Z=((Z+X*Y8)*10+X*Y9)*10 | |||||
Z+=X*Y10 |
|
| |||
Z |
Z=X*Y=111100011001110011=247411d
Дата добавления: 2015-08-29; просмотров: 24 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Бриф на контекстную рекламу Google Adwords | | | Название: Прямое предложение |