Задание 2
1.Выполнить двоичное сложение десятичных чисел, с указанием результата в двоичной и шестнадцатеричной системах счисления.
Таблица 1. Исходные данные
-
Операнды
1
2
47
478
87
20332
189
10999
Переведём десятичные числа из таблицы 1 в двоичную систему счисления:
4710=1011112
47810=1110111102
8710=10101112
2033210=1001111011011002
18910=101111012
1099910=101010111101112
Решение:
а)47 + 478 = 525
0000000000101111
+
0000000111011110
0000001000001101
10000011012=20D16
б)87+20332=20419
0000000001010111
+ 0100111101101100
0100111111000011
1001111110000112=4FC316
в)189+10999=11188
0000000010111101
+ 0010101011110111
0010101110110100
101011101101002=2BB416
2. Выполнить двоичное вычитание десятичных чисел, приведенных в таблицы 1 (второго числа из первого), с указанием результата в двоичной и шестнадцатеричной системах счисления. Указать изменяющиеся при этом признаки в регистре флагов.
а)47-478=-431
111011110
- 101111
110101111
-1101011112=-1AF16
б)87-20332=-20245
100111101101100
- 1010111
100111100010101
-1001111000101012=-4F1516
в)189-10999=-10810
10101011110111
- 10111101
10101000111010
-101010001110102=-2A3A16
3. Привести шесть фрагментов программы на ассемблере с указанием используемых регистров и данных в минимально допустимом формате.
Фрагмент программы, представленный на рис.2.1, реализующей сложение числа 47 с числом 478, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.1.Фрагмент программы, реализующей сложение числа 47 с числом 478, с размещением результата в ячейке памяти с адресом 12005h.
Фрагмент программы, представленный на рис.2.2, реализующей сложение числа 87 с числом 20332, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.2.Фрагмент программы, реализующей сложение числа 87 с числом 20332, с размещением результата в ячейке памяти с адресом 12005h.
Фрагмент программы, представленный на рис.2.3 ,реализующей сложение числа 189 с числом 10999, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.3.Фрагмент программы, реализующей сложение числа 189 с числом 10999, с размещением результата в ячейке памяти с адресом 12005h.
Фрагмент программы, представленный на рис.2.4 ,реализующей вычитание числа 478 из 47, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.4.Фрагмент программы, реализующей вычитание числа 478 из 47, с размещением результата в ячейке памяти с адресом 12005h.
Фрагмент программы, представленный на рис.2.5, реализующей вычитание числа 20332 из 87, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.5.Фрагмент программы, реализующей вычитание числа 20332 из 87, с размещением результата в ячейке памяти с адресом 12005h.
Фрагмент программы, представленный на рис.2.6 ,реализующей вычитание числа 10999 из 189, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:
Рис. 2.6.Фрагмент программы, реализующей вычитание числа 10999 из 189, с размещением результата в ячейке памяти с адресом 12005h.
