0 |
0000 0001 0101 1110 |
LOAD 350 |
Виділення порядка 1-го числа |
1 |
0100 0001 0110 0001 |
AND 353 |
2 |
0001 0001 0110 0010 |
STORE 354 |
Переміщення порядку до старших розрядів |
3 |
0000 0001 0110 0010 |
LOAD 354 |
4 |
1111 0010 0000 0000 |
LSL |
5 |
0001 0001 0110 0010 |
STORE 354 |
6 |
0000 0001 0110 1001 |
LOAD 361 |
7 |
0011 0001 0110 1000 |
SUB 360 |
8 |
0001 0001 0110 1001 |
STORE 361 |
9 |
1000 0000 0000 0011 |
JNZ 3 |
10 |
0000 0001 0101 1110 |
LOAD 350 |
Виділення знаку порядку 1-го числа |
11 |
0100 0001 0110 0000 |
AND 352 |
12 |
0001 0001 0110 0011 |
STORE 355 |
13 |
1111 1100 0000 0000 |
LSL |
Перевірка на відємність порядка 1-го числа |
14 |
1100 0000 0001 0100 |
JNC 20 |
15 |
0000 0001 0110 0010 |
LOAD 354 |
Якщо порядок 1-го числа відємний інвертуєм порядок
перевести в доповняльний код |
16 |
0111 0000 0000 0000 |
NOT |
17 |
0100 0001 0110 1010 |
AND 362 |
18 |
0010 0001 1000 0100 |
ADD 388 |
19 |
0001 0001 0110 0010 |
STORE 354 |
20 |
0000 0001 0110 0010 |
LOAD 354 |
Обєднання знаку і порядку в одне число |
21 |
0010 0001 0110 0011 |
ADD 355 |
22 |
0001 0001 0110 0110 |
STORE 358 |
23 |
0000 0001 0101 1111 |
LOAD 351 |
Виділення порядка 2-го числа |
24 |
0100 0001 0110 0001 |
AND 353 |
25 |
0001 0001 0110 0100 |
STORE 356 |
26 |
0000 0001 0110 0100 |
LOAD 356 |
Переміщення порядку до старших розрядів |
27 |
1111 0010 0000 0000 |
LSL |
28 |
0001 0001 0110 0100 |
STORE 356 |
29 |
0000 0001 0110 1001 |
LOAD 377 |
30 |
0011 0001 0110 1000 |
SUB 360 |
31 |
0001 0001 0110 1001 |
STORE 377 |
32 |
1000 0000 0001 1010 |
JNZ 26 |
33 |
0000 0001 0101 1111 |
LOAD 351 |
Виділення знаку порядку 2-го числа |
34 |
0100 0001 0110 0000 |
AND 352 |
35 |
0001 0001 0110 0101 |
STORE 357 |
36 |
1111 1100 0000 0000 |
LSL |
Перевірка на відємність порядка 2-го числа |
37 |
1100 0000 0010 1011 |
JNC 43 |
38 |
0000 0001 0110 0100 |
LOAD 356 |
Якщо порядок 2-го числа відємний інвертуєм порядок |
39 |
0111 0000 0000 0000 |
NOT |
40 |
0100 0001 0110 1010 |
AND 362 |
41 |
0010 0001 1000 0100 |
ADD 388 |
42 |
0001 0001 0110 0100 |
STORE 356 |
43 |
0000 0001 0110 0100 |
LOAD 356 |
Обєднання знаку і порядку в одне число |
44 |
0010 0001 0110 0101 |
ADD 357 |
45 |
0001 0001 0110 0111 |
STORE 359 |
46 |
0000 0001 0101 1110 |
LOAD 350 |
Виділення мантиси |
47 |
0100 0001 0111 0000 |
AND 368 |
48 |
0001 0001 0110 1011 |
STORE 363 |
49 |
0000 0001 0101 1110 |
LOAD 350 |
Виділення і нормалізація знаку |
50 |
0100 0001 0110 1111 |
AND 367 |
51 |
1111 1100 0000 0000 |
LSL |
52 |
1111 1100 0000 0000 |
LSL |
53 |
0001 0001 0110 1101 |
STORE 365 |
54 |
0000 0001 0101 1111 |
LOAD 351 |
Виділення мантиси |
55 |
0100 0001 0111 0000 |
AND 368 |
56 |
0001 0001 0110 1100 |
STORE 364 |
57 |
0000 0001 0101 1111 |
LOAD 351 |
Виділення і нормалізація знаку |
58 |
0100 0001 0110 1111 |
AND 367 |
59 |
1111 1100 0000 0000 |
LSL |
60 |
1111 1100 0000 0000 |
LSL |
61 |
0001 0001 0110 1110 |
STORE 366 |
62 |
0000 0001 0110 0110 |
LOAD 358 |
Визначення різниці порядків |
63 |
0010 0001 0110 0111 |
ADD 359 |
64 |
0001 0001 0111 0011 |
STORE 371 |
65 |
1011 0000 0100 1100 |
JM 76 |
Визначення знаку різниці |
66 |
1111 0010 0000 0000 |
LSR |
Корекція результату |
67 |
0100 0001 0111 0100 |
AND 372 |
68 |
0001 0001 0111 0011 |
STORE 371 |
69 |
0000 0001 0111 0011 |
LOAD 371 |
Нормалізація різниці порядків |
70 |
1111 0010 0000 0000 |
LSR |
71 |
0001 0001 0111 0011 |
STORE 371 |
72 |
0000 0001 0111 0110 |
LOAD 374 |
73 |
0011 0001 0110 1000 |
SUB 360 |
74 |
0001 0001 0111 0110 |
STORE 374 |
75 |
1000 0000 0100 0101 |
JNZ 69 |
76 |
0000 0001 0111 0011 |
LOAD 371 |
77 |
0010 0001 0110 1000 |
ADD 360 |
78 |
0001 0001 0111 0011 |
STORE 371 |
79 |
0000 0001 0110 0111 |
LOAD 359 |
Збільшення меншого порядку на величину різниці |
80 |
0010 0001 0111 0011 |
ADD 371 |
81 |
0001 0001 0110 0111 |
STORE 359 |
82 |
0000 0001 0111 0011 |
LOAD 371 |
Зсув мантиси на величину різниці порядків |
83 |
0011 0001 0110 1000 |
SUB 360 |
84 |
1001 0000 0101 1010 |
JZ 90 |
85 |
0001 0001 0111 0011 |
STORE 371 |
86 |
0000 0001 0110 1100 |
LOAD 364 |
87 |
1111 0010 0000 0000 |
LSR |
88 |
0001 0000 0110 1100 |
STORE 364 |
89 |
1110 0000 0101 0010 |
JMP 82 |
90 |
1111 0010 0000 0000 |
LSR |
Корекція результату |
91 |
0100 0001 0111 0101 |
AND 373 |
92 |
0001 0001 0111 0011 |
STORE 371 |
93 |
0100 0001 0111 0100 |
AND 372 |
Переведення числа в прямий код |
94 |
0111 0000 0000 0000 |
NOT |
95 |
0010 0001 1000 0101 |
ADD 389 |
96 |
0000 0001 0110 0110 |
LOAD 358 |
Збільшення меншого порядку на величину різниці |
97 |
0010 0001 0111 0011 |
ADD 371 |
98 |
0001 0001 0110 0110 |
STORE 358 |
99 |
0001 0001 0111 0011 |
STORE 371 |
Нормалізація різниці порядків |
100 |
0000 0001 0111 0011 |
LOAD 371 |
101 |
1111 0010 0000 0000 |
LSR |
102 |
0001 0001 0111 0011 |
STORE 371 |
103 |
0000 0001 0111 0110 |
LOAD 374 |
104 |
0011 0001 0110 1000 |
SUB 360 |
105 |
0001 0001 0111 0110 |
STORE 374 |
106 |
1000 0000 0110 0011 |
JNZ 99 |
107 |
0000 0001 0111 0011 |
LOAD 371 |
Зсув мантиси на величину різниці порядків |
108 |
0011 0001 0110 1000 |
SUB 360 |
109 |
1001 0000 0111 0011 |
JZ 115 |
110 |
0001 0001 0111 0011 |
STORE 371 |
111 |
0001 0001 0110 1011 |
LOAD 363 |
112 |
1111 0010 0000 0000 |
LSR |
113 |
0000 0001 0110 1011 |
STORE 363 |
114 |
1110 0000 0110 1011 |
JMP 107 |
115 |
0000 0001 0110 1101 |
LOAD 365 |
Переведення числа в доповняльний код |
116 |
1111 1100 0000 0000 |
LSL |
117 |
1100 0000 0110 1110 |
JNC 110 |
118 |
0001 0000 0110 1011 |
LOAD 363 |
119 |
0111 0000 0000 0000 |
NOT |
120 |
0010 0001 0110 1000 |
ADD 360 |
121 |
0100 0001 0111 1010 |
AND 378 |
122 |
0000 0000 0110 1011 |
STORE 363 |
123 |
0000 0001 0110 1110 |
LOAD 366 |
Переведення числа в доповняльний код |
124 |
1111 1100 0000 0000 |
LSL |
125 |
1100 0000 0111 0110 |
JNC 118 |
126 |
0000 0000 0110 1100 |
LOAD 364 |
127 |
0111 0000 0000 0000 |
NOT |
128 |
0010 0001 0110 1000 |
ADD 360 |
129 |
0100 0001 0111 1010 |
AND 378 |
130 |
0001 0001 0110 1100 |
STORE 364 |
131 |
0001 0001 0110 1011 |
LOAD 363 |
Зсув мантиси до старших розрядів |
132 |
1111 1100 0000 0000 |
LSL |
133 |
0001 0001 0110 1011 |
STORE 363 |
134 |
0000 0001 0111 1101 |
LOAD 375 |
135 |
0011 0001 0110 1000 |
SUB 360 |
136 |
0001 0001 0111 1101 |
STORE 375 |
137 |
1000 0000 1000 0011 |
JNZ 131 |
138 |
0000 0001 0110 1100 |
LOAD 364 |
Зсув мантиси до старших розрядів |
139 |
1111 1100 0000 0000 |
LSL |
140 |
0001 0001 0110 1100 |
STORE 364 |
141 |
0000 0001 0111 1110 |
LOAD 376 |
142 |
0011 0001 0110 1000 |
SUB 360 |
143 |
0001 0001 0111 1110 |
STORE 376 |
144 |
1000 0000 1000 1010 |
JNZ 138 |
145 |
0001 0001 0110 1011 |
LOAD 363 |
Обєднання знаку і мантиси в одне число 1-го числа |
146 |
0010 0001 0110 1101 |
ADD 365 |
147 |
0001 0001 0111 0001 |
STORE 369 |
148 |
0000 0001 0110 1100 |
LOAD 364 |
Обєднання знаку і мантиси в одне число 2-го числа |
149 |
0010 0001 0110 1110 |
ADD 366 |
150 |
0001 0001 0111 0010 |
STORE 370 |
151 |
0000 0001 0111 0001 |
LOAD 369 |
Додавання мантис двох чисел |
152 |
0000 0001 0111 0001 |
ADD 370 |
153 |
1011 0000 1001 1100 |
JM 156 |
Збереження результату при додатньому результаті |
154 |
1111 1100 0000 0000 |
LSL |
155 |
0001 0001 0111 1100 |
STORE 380 |
156 |
1111 1100 0000 0000 |
LSL |
Збереження результату при відємному результаті |
157 |
0010 0001 0111 1011 |
ADD 379 |
158 |
0111 0000 0000 0000 |
NOT |
Переведення відємного результату в прямий код |
159 |
0100 0001 1000 0001 |
AND 385 |
160 |
0010 0001 1000 0110 |
ADD 390 |
161 |
0010 0001 0110 0000 |
ADD 352 |
162 |
0001 0001 0111 1100 |
STORE 380 |
163 |
0000 0001 0110 0010 |
LOAD 354 |
Збереження порядку результату |
164 |
1111 0010 0000 0000 |
LSR |
165 |
1111 0010 0000 0000 |
LSR |
166 |
0001 0001 0111 1111 |
STORE 383 |
167 |
0000 0001 0110 0011 |
LOAD 355 |
Збереження знаку порядку результату |
168 |
0001 0001 1000 0000 |
STORE 384 |
169 |
0000 0001 0111 1100 |
LOAD 380 |
Перевірка денормалізації в право і корекція результату |
170 |
0100 0001 1000 0001 |
AND 385 |
171 |
1111 1100 0000 0000 |
LSL |
172 |
1111 1100 0000 0000 |
LSL |
173 |
1111 1100 0000 0000 |
RCL |
174 |
1101 0000 1011 0110 |
JC 182 |
175 |
1111 1100 0000 0000 |
RCL |
176 |
1101 0000 1011 0110 |
JC 182 |
177 |
0000 0001 0111 1111 |
LOAD 383 |
178 |
0010 0001 0110 1000 |
ADD 360 |
179 |
0001 0001 0111 1111 |
STORE 383 |
180 |
0000 0001 0111 1101 |
LOAD 381 |
181 |
1110 0000 1010 1001 |
JMP 169 |
182 |
1111 1110 0000 0000 |
RCR |
183 |
0001 0001 0111 1101 |
STORE 381 |
184 |
0000 0001 0111 1101 |
LOAD 381 |
Збереження мантиси результату |
185 |
1111 0010 0000 0000 |
LSR |
186 |
0001 0001 0111 1101 |
STORE 381 |
187 |
0000 0001 1000 0010 |
LOAD 386 |
188 |
0011 0001 0110 1000 |
SUB 360 |
189 |
0001 0001 1000 0010 |
STORE 386 |
190 |
1000 0000 1011 1000 |
JNZ 184 |
191 |
0000 0001 0111 1100 |
LOAD 380 |
Збереження знаку мантиси результату |
192 |
0100 0001 0110 0000 |
AND 352 |
193 |
1111 0010 0000 0000 |
LSR |
194 |
1111 0010 0000 0000 |
LSR |
195 |
0001 0001 0111 1110 |
STORE 382 |
196 |
0000 0001 0111 1101 |
LOAD 381 |
Формування результату |
197 |
0010 0001 0111 1110 |
ADD 382 |
198 |
0010 0001 0111 1111 |
ADD 383 |
199 |
0010 0001 1000 0000 |
ADD 384 |
200 |
0001 0001 1000 0011 |
STORE 387 |
201 |
0111 1100 0000 0000 |
HALT |
Завершення програми |
На даній лабораторній роботі -
ознайомився з поданням чисел у нормальній формі. Засвоїв порядок нормалізації
чисел з рухомою комою. Ознайомився з поняттям “характеристика” для чисел з
рухомою комою.
-вивчив правила додавання (віднімання)
двійкових чисел з рухомою комою.
-розробив алгоритми і програми додавання
чисел в арифметиці з рухомою комою в інструкціях навчального комп'.ютера -
симулятора DeComp.