
- •Введение:
- •Задание на курсовую работу:
- •Постановка задачи:
- •Структура входных и выходных данных:
- •Описание структуры входной и выходной информации:
- •Разработка и описание алгоритма:
- •Разработка и описание принципиальной схемы алгоритма:
- •252 In port с1(4-7); ввод с порта c1(4-7)
- •253 Ani 112; выделить 5-й, 6-й и 7-й биты
- •263 Mvi m, 0; поместить 0 в nproc
- •301 Ani 63; выделить 6 младших битов
- •306 In port a1
- •307 Ani 31; выделить 5 младших битов
- •465 Inx hl; переход к сост-ю персонажа
- •35 Ldax hl; звание I-го персонажа в a
- •281 Dcr m; уменьш. Старш. Байт ct1
- •Пример работы алгоритма:
- •Разработка и описание структурной схемы мпс:
- •Разработка и описание функциональной схемы мпс:
- •Заключение:
35 Ldax hl; звание I-го персонажа в a
36 STA ОЗУ + 16; оттуда - в RES
37
38
39 LHLD ОЗУ + 9
ITERATION + 40
41
42 SHLD ОЗУ + 52; адр. i-го персонажа в OBJ
43
44
45 SHLD ОЗУ + 54; и в SUB
46
47
48 LDA ОЗУ + 57; загр. знач-е NPROC
49
ITERATION + 50
51 CPI 0; NPROC = 0?
52
53 JNZ ITERATION + 99;к следующей проверке
54
55
56 LDA ОЗУ + 17; младш. байт RES
57
58
59 CPI 1
ITERATION + 60
61 CZ REACT11; вызов REACT11
62
63
64 LDA ОЗУ + 17
65
66
67 CPI 2
68
69 CZ REACT12; вызов REACT12
ITERATION + 70
71
72 LDA ОЗУ + 17
73
74
75 CPI 3
76
77 CZ REACT13; и т. д.
78
79
ITERATION + 80 LDA ОЗУ + 17
81
82
83 CPI 4
84
85 CZ REACT14
86
87
88 LDA ОЗУ + 17
89
ITERATION + 90
91 CPI 5
92
93 CZ REACT15
94
95
96 JMP ITERATION + 249;выход из блока проверок
97
98
99 LDA ОЗУ + 57
ITERATION + 100
101
102 CPI 1; NPROC = 1?
103
104 JNZ ITERATION + 150
105
106
107 LDA ОЗУ + 17
108
109
ITERATION + 110 CPI 1
111
112 CZ REACT21; вызов REACT21
113
114
115 LDA ОЗУ + 17
116
117
118 CPI 2
119
ITERATION + 120 CZ REACT22; и т. д.
121
122
123 LDA ОЗУ + 17
124
125
126 CPI 3
127
128 CZ REACT23
129
ITERATION + 130
131 LDA ОЗУ + 17
132
133
134 CPI 4
135
136 CZ REACT24
137
138
139 LDA ОЗУ + 17
ITERATION + 140
141
142 CPI 5
143
144 CZ REACT25
145
146
147 JMP ITERATION + 249
148
149
ITERATION + 150 LDA ОЗУ + 57
151
152
153 CPI 2; NPROC = 2?
154
155 JNZ ITERATION + 201
156
157
158 LDA ОЗУ + 17
159
ITERATION + 160
161 CPI 1
162
163 CZ REACT31
164
165
166 LDA ОЗУ + 17
167
168
169 CPI 2
ITERATION + 170
171 CZ REACT32
172
173
174 LDA ОЗУ + 17
175
176
177 CPI 3
178
179 CZ REACT33
ITERATION + 180
181
182 LDA ОЗУ + 17
183
184
185 CPI 4
186
187 CZ REACT34
188
189
ITERATION + 190 LDA ОЗУ + 17
191
192
193 CPI 5
194
195 CZ REACT35
196
197
198 JMP ITERATION + 249
199
ITERATION + 200
201 LDA ОЗУ + 57
202
203
204 CPI 3; NPROC = 3?
205
206 JNZ ITERATION + 249
207
208
209 LDA ОЗУ + 17
ITERATION + 210
211
212 CPI 1
213
214 CZ REACT41
215
216
217 LDA ОЗУ + 17
218
219
ITERATION + 220 CPI 2
221
222 CZ REACT42
223
224
225 LDA ОЗУ + 17
226
227
228 CPI 3
229
ITERATION + 230 CZ REACT43
231
232
233 LDA ОЗУ + 17
234
235
236 CPI 4
237
238 CZ REACT44
239
ITERATION + 240
241 LDA ОЗУ + 17
242
243
244 CPI 5
245
246 CZ REACT45
247
248
249 LDA ОЗУ + 16
ITERATION + 250
251
252 CPI 0; DIR = 0?
253
254 JNZ ITERATION + 267
255
256
257 LHLD ОЗУ + 9;
258
259
ITERATION + 260 LXI BC, 4
261
262
263 DAD BC; HL = HL + 4
264 SHLD ОЗУ + 9
265
266
267 LDA ОЗУ + 10; младший байт счётчика
268
269
ITERATION + 270 SBI 4; вычесть из него 4
271
272 STA ОЗУ + 10
273
274
275 JNC ITERATION + 282
276
277
278 LXI HL, ОЗУ + 9
279
ITERATION + 280