- •Курсовая работа по дисциплине «Аппаратные средства вычислительной техники»
- •Оглавление
- •Введение
- •Постановка задачи
- •Техническое задание
- •Структура входных и выходных данных
- •Разработка и описание структурной схемы алгоритма
- •Распределение памяти в озу
- •Разработка и описание принципиальной схемы алгоритма в условных адресах
- •Разработка и описание функциональной схемы алгоритма
- •Распределение памяти в пзу
- •В действительных адресах:
- •Разработка и описание структурной схемы мпс:
- •Разработка и описание функциональной схемы микропроцессорной системы.
- •Микропроцессор. (кр580ик80а).
- •Параллельный программируемый интерфейс кр580вв55.
- •Пзу (постоянное запоминающее устройство к573рф1)
- •Озу (оперативное запоминающее устройство к185ру2)
- •Временные диаграммы
- •Заключение.
- •Список литературы.
В действительных адресах:
ГПМ
0000 |
OUT 898 |
Отправляем управляющее слово 10001001 на Интерфейс 1 |
0001 |
|
|
0002 |
OUT ED8 |
Отправляем управляющее слово 11101101 на Интерфейс 2 |
0003 |
|
|
0004 |
IN port C1 |
Чтение из порта С(0) интерфейса 1 в А |
0005 |
ANI 018 |
Выделение из А нулевого разряда |
0006 |
|
|
0007 |
CPI 008 |
Сравниваем А с нулём |
0008 |
|
|
0009 |
JNZ 0004 |
Если не ноль, переходим по адресу 0004 |
0010 |
|
|
0011 |
|
|
0012 |
CALL 0060 |
Если ноль, то передача управления в ПМ1 |
0013 |
|
|
0014 |
|
|
0015 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0016 |
ANI 048 |
Выделение из А второго разряда |
0017 |
|
|
0018 |
CPI 008 |
Сравниваем А с нулём |
0019 |
|
|
0020 |
JZ 0045 |
Если ноль, то переход по адресу 0045 |
0021 |
|
|
0022 |
|
|
0023 |
IN port C1 |
Если не ноль, то чтение из порта С(3) в А |
0024 |
ANI 088 |
Выделение из А третьего разряда |
0025 |
|
|
0026 |
CPI 008 |
Сравниваем А с нулём |
0027 |
|
|
0028 |
JZ 0039 |
Если ноль, то переход по адресу 0039 |
0029 |
|
|
0030 |
|
|
0031 |
IN port C1 |
Если не ноль, то чтение из порта С(4) в А |
0032 |
ANI 108 |
Выделение из А четвёртого разряда |
0033 |
|
|
0034 |
CPI 008 |
Сравниванием А с нулём |
0035 |
|
|
0036 |
JNZ 0015 |
Если не ноль, то переход по адресу 0015 |
0037 |
|
|
0038 |
|
|
0039 |
CALL 0360 |
Передача управления в ПМ3 |
0040 |
|
|
0041 |
|
|
0042 |
JMP 0048 |
Безусловный переход по адресу 48 |
0043 |
|
|
0044 |
|
|
0045 |
CALL 0230 |
Передача управления в ПМ2 |
0046 |
|
|
0047 |
|
|
0048 |
IN port C1 |
Чтение из порта С(1) в А |
0049 |
ANI 028 |
Выделение из А первого разряда |
0050 |
|
|
0051 |
CPI 008 |
Сравниваем А с нулём |
0052 |
|
|
0053 |
JNZ 0048 |
Если не ноль, то переход по адресу 48 |
0054 |
|
|
0055 |
|
|
0056 |
HLT |
СТОП |
0057 |
NOP |
|
0058 |
NOP |
|
0059 |
NOP |
|
ПМ1
0060 |
MVI A, 108 |
Заслать содержимое 00010000 в A |
0061 |
|
|
0062 |
OUT port B2 |
Передать содержимое А в порт B(4) интерфейса 2 |
0063 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0064 |
|
|
0065 |
|
|
0066 |
MVI A, 208 |
Заслать содержимое 00100000 в A |
0067 |
|
|
0068 |
OUT port B2 |
Передать содержимое А в порт В(5) интерфейса 2 |
0069 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0070 |
|
|
0071 |
|
|
0072 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0073 |
ANI 048 |
Выделение из А второго разряда |
0074 |
|
|
0075 |
CPI 008 |
Сравниваем А с нулём |
0076 |
|
|
0077 |
JNZ 0089 |
Если не ноль, переходим по адресу 89 |
0078 |
|
|
0079 |
|
|
0080 |
MVI A, 0C8 |
Заслать в А 00001100 (первая цифра = 1 на Табло 1) |
0081 |
|
|
0082 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0083 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0084 |
|
|
0085 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0086 |
JMP 0228 |
Возврат в ГПМ |
0087 |
|
|
0088 |
|
|
0089 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0090 |
ANI 088 |
Выделение из А третьего разряда |
0091 |
|
|
0092 |
CPI 008 |
Сравниваем А с нулём |
0093 |
|
|
0094 |
JZ 0105 |
Если ноль, переходим по адресу 105 |
0095 |
|
|
0096 |
|
|
0097 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0098 |
ANI 108 |
Выделение из А четвёртого разряда |
0099 |
|
|
0100 |
CPI 0 |
Сравниваем А с нулём |
0101 |
|
|
0102 |
JNZ 0068 |
Если не ноль, то переход по адресу 68 |
0103 |
|
|
0104 |
|
|
0105 |
MVI А, 018 |
Заслать содержимое 00000001 в А |
0106 |
|
|
0107 |
OUT port A2 |
Передать содержимое А в порт А(0) интерфейса 2 |
0108 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0109 |
|
|
0110 |
|
|
0111 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0112 |
ANI 048 |
Выделение из А второго разряда |
0113 |
|
|
0114 |
CPI 008 |
Сравниваем А с нулём |
0115 |
|
|
0116 |
JNZ 0128 |
Если не ноль, переходим по адресу 0128 |
0117 |
|
|
0118 |
|
|
0119 |
MVI A, 768 |
Заслать в А 01110110 (первая цифра = 2 на Табло 1) |
0120 |
|
|
0121 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0122 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0123 |
|
|
0124 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0125 |
JMP 0228 |
Возврат в ГПМ |
0126 |
|
|
0127 |
|
|
0128 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0129 |
ANI 088 |
Выделение из А третьего разряда |
0130 |
|
|
0131 |
CPI 008 |
Сравниваем А с нулём |
0132 |
|
|
0133 |
JZ 0144 |
Если ноль, переходим по адресу 0144 |
0134 |
|
|
0135 |
|
|
0136 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0137 |
ANI 108 |
Выделение из А четвёртого разряда |
0138 |
|
|
0139 |
CPI 008 |
Сравниваем А с нулём |
0140 |
|
|
0141 |
JNZ 0107 |
Если не ноль, то переход по адресу 0107 |
0142 |
|
|
0143 |
|
|
0144 |
MVI А, 028 |
Заслать содержимое 00000010 в А |
0145 |
|
|
0146 |
OUT port A2 |
Передать содержимое А в порт А(1) интерфейса 2 |
0147 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0148 |
|
|
0149 |
|
|
0150 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0151 |
ANI 048 |
Выделение из А второго разряда |
0152 |
|
|
0153 |
CPI 008 |
Сравниваем А с нулём |
0154 |
|
|
0155 |
JNZ 0167 |
Если не ноль, переходим по адресу 0167 |
0156 |
|
|
0157 |
|
|
0158 |
MVI A, 5Е8 |
Заслать в А 01011110 (первая цифра = 3 на Табло 1) |
0159 |
|
|
0160 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0161 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0162 |
|
|
0163 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0164 |
JMP 0228 |
Возврат в ГПМ |
0165 |
|
|
0166 |
|
|
0167 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0168 |
ANI 088 |
Выделение из А третьего разряда |
0169 |
|
|
0170 |
CPI 008 |
Сравниваем А с нулём |
0171 |
|
|
0172 |
JZ 0183 |
Если ноль, переходим по адресу 0183 |
0173 |
|
|
0174 |
|
|
0175 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0176 |
ANI 108 |
Выделение из А четвёртого разряда |
0177 |
|
|
0178 |
CPI 008 |
Сравниваем А с нулём |
0179 |
|
|
0180 |
JNZ 0146 |
Если не ноль, то переход по адресу 0146 |
0181 |
|
|
0182 |
|
|
0183 |
MVI А, 028 |
Заслать содержимое 00000100 в А |
0184 |
|
|
0185 |
OUT port A2 |
Передать содержимое А в порт А(2) интерфейса 2 |
0186 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0187 |
|
|
0188 |
|
|
0189 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0190 |
ANI 048 |
Выделение из А второго разряда |
0191 |
|
|
0192 |
CPI 008 |
Сравниваем А с нулём |
0193 |
|
|
0194 |
JNZ 0206 |
Если не ноль, переходим по адресу 0206 |
0195 |
|
|
0196 |
|
|
0197 |
MVI A, 4D8 |
Заслать в А 01001101 (первая цифра = 4 на Табло 1) |
0198 |
|
|
0199 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0200 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0201 |
|
|
0202 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0203 |
JMP 0228 |
Возврат в ГПМ |
0204 |
|
|
0205 |
|
|
0206 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0207 |
ANI 088 |
Выделение из А третьего разряда |
0208 |
|
|
0209 |
CPI 008 |
Сравниваем А с нулём |
0210 |
|
|
0211 |
JZ 0222 |
Если ноль, переходим по адресу 0222 |
0212 |
|
|
0213 |
|
|
0214 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0215 |
ANI 108 |
Выделение из А четвёртого разряда |
0216 |
|
|
0217 |
CPI 008 |
Сравниваем А с нулём |
0218 |
|
|
0219 |
JNZ 0185 |
Если не ноль, то переход по адресу 0185 |
0220 |
|
|
0221 |
|
|
0222 |
MVI А, 028 |
Заслать содержимое 0001000 в А |
0223 |
|
|
0224 |
OUT port A2 |
Передать содержимое А в порт А(3) интерфейса 2 |
0225 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0226 |
|
|
0227 |
|
|
0228 |
RET |
Возврат в ГПМ |
0229 |
NOP |
|
ПМ2
0230 |
MVI A, 108 |
Заслать содержимое 0001000 в А |
0231 |
|
|
0232 |
OUT port A2 |
Передать содержимое А в порт А(4) интерфейса 2 |
0233 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0234 |
|
|
0235 |
|
|
0236 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0237 |
ANI 048 |
Выделение из А второго разряда |
0238 |
|
|
0239 |
CPI 008 |
Сравниваем А с нулём |
0240 |
|
|
0241 |
JNZ 0253 |
Если не ноль, переходим по адресу 0253 |
0242 |
|
|
0243 |
|
|
0244 |
MVI A, 5A8 |
Заслать в А 01011010(первая цифра = 5 на Табло 1) |
0245 |
|
|
0246 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0247 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0248 |
|
|
0249 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0250 |
JMP 0350 |
Возврат в ГПМ |
0251 |
|
|
0252 |
|
|
0253 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0254 |
ANI 088 |
Выделение из А третьего разряда |
0255 |
|
|
0256 |
CPI 008 |
Сравниваем А с нулём |
0257 |
|
|
0258 |
JZ 0269 |
Если ноль, переходим по адресу 0269 |
0259 |
|
|
0260 |
|
|
0261 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0262 |
ANI 108 |
Выделение из А четвёртого разряда |
0263 |
|
|
0264 |
CPI 008 |
Сравниваем А с нулём |
0265 |
|
|
0266 |
JNZ 0232 |
Если не ноль, то переход по адресу 0232 |
0267 |
|
|
0268 |
|
|
0269 |
MVI А, 208 |
Заслать содержимое 00100000 в А |
0270 |
|
|
0271 |
OUT port A2 |
Передать содержимое А в порт А(5) интерфейса 2 |
0272 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0273 |
|
|
0274 |
|
|
0275 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0276 |
ANI 048 |
Выделение из А второго разряда |
0277 |
|
|
0278 |
CPI 008 |
Сравниваем А с нулём |
0279 |
|
|
0280 |
JNZ 0292 |
Если не ноль, переходим по адресу 0292 |
0281 |
|
|
0282 |
|
|
0283 |
MVI A, 7В8 |
Заслать в А 01111011 (первая цифра = 6 на Табло 1) |
0284 |
|
|
0285 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0286 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0287 |
|
|
0288 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0289 |
JMP 0350 |
Возврат в ГПМ |
0290 |
|
|
0291 |
|
|
0292 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0293 |
ANI 088 |
Выделение из А третьего разряда |
0294 |
|
|
0295 |
CPI 008 |
Сравниваем А с нулём |
0296 |
|
|
0297 |
JZ 0308 |
Если ноль, переходим по адресу 0308 |
0298 |
|
|
0299 |
|
|
0300 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0301 |
ANI 108 |
Выделение из А четвёртого разряда |
0302 |
|
|
0303 |
CPI 008 |
Сравниваем А с нулём |
0304 |
|
|
0305 |
JNZ 0271 |
Если не ноль, то переход по адресу 0271 |
0306 |
|
|
0307 |
|
|
0308 |
MVI А, 408 |
Заслать содержимое 01000000 в А |
0309 |
|
|
0310 |
OUT port A2 |
Передать содержимое А в порт А(6) интерфейса 2 |
0311 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0312 |
|
|
0313 |
|
|
0314 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0315 |
ANI 048 |
Выделение из А второго разряда |
0316 |
|
|
0317 |
CPI 008 |
Сравниваем А с нулём |
0318 |
|
|
0319 |
JNZ 0331 |
Если не ноль, переходим по адресу 0331 |
0320 |
|
|
0321 |
|
|
0322 |
MVI A, Е8 |
Заслать в А 00001110 (первая цифра = 7 на Табло 1) |
0323 |
|
|
0324 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0325 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0326 |
|
|
0327 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0328 |
JMP 0350 |
Возврат в ГПМ |
0329 |
|
|
0330 |
|
|
0331 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0332 |
ANI 088 |
Выделение из А третьего разряда |
0333 |
|
|
0334 |
CPI 00 |
Сравниваем А с нулём |
0335 |
|
|
0336 |
JZ 0347 |
Если ноль, переходим по адресу 0347 |
0337 |
|
|
0338 |
|
|
0339 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0340 |
ANI 108 |
Выделение из А четвёртого разряда |
0341 |
|
|
0342 |
CPI 008 |
Сравниваем А с нулём |
0343 |
|
|
0344 |
JNZ 0310 |
Если не ноль, то переход по адресу 0310 |
0345 |
|
|
0346 |
|
|
0347 |
MVI А, 028 |
Заслать содержимое 00001000 в А |
0348 |
|
|
0349 |
OUT port В2 |
Передать содержимое А в порт В(3) интерфейса 2 |
0350 |
RET |
Возврат в ГПМ |
0351 |
NOP |
|
0352 |
NOP |
|
0353 |
NOP |
|
0354 |
NOP |
|
0355 |
NOP |
|
0356 |
NOP |
|
0357 |
NOP |
|
0358 |
NOP |
|
0359 |
NOP |
|
ПМ3
0360 |
ПМ3+0 |
MVI A, 808 |
Заслать содержимое 10000000 в А |
0361 |
1 |
|
|
0362 |
2 |
OUT port A2 |
Передать содержимое А в порт А(7) интерфейса 2 |
0363 |
3 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0364 |
4 |
|
|
0365 |
5 |
|
|
0366 |
6 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0367 |
7 |
ANI 048 |
Выделение из А второго разряда |
0368 |
8 |
|
|
0369 |
9 |
CPI 008 |
Сравниваем А с нулём |
0370 |
ПМ3+10 |
|
|
0371 |
1 |
JNZ 0383 |
Если не ноль, переходим по адресу 0383 |
0372 |
2 |
|
|
0373 |
3 |
|
|
0374 |
4 |
MVI A, 7F8 |
Заслать в А 01111111 (первая цифра = 8 на Табло 1) |
0375 |
5 |
|
|
0376 |
6 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0377 |
7 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0378 |
8 |
|
|
0379 |
9 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0380 |
ПМ3+20 |
JM 0480 |
Возврат в ГПМ |
0381 |
1 |
|
|
0382 |
2 |
|
|
0383 |
3 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0384 |
4 |
ANI 088 |
Выделение из А третьего разряда |
0385 |
5 |
|
|
0386 |
6 |
CPI 008 |
Сравниваем А с нулём |
0387 |
7 |
|
|
0388 |
8 |
JZ 0399 |
Если ноль, переходим по адресу 0399 |
0389 |
9 |
|
|
0390 |
ПМ3+30 |
|
|
0391 |
1 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0392 |
2 |
ANI 108 |
Выделение из А четвёртого разряда |
0393 |
3 |
|
|
0394 |
4 |
CPI 008 |
Сравниваем А с нулём |
0395 |
5 |
|
|
0396 |
6 |
JNZ 0362 |
Если не ноль, то переход по адресу 0362 |
0397 |
7 |
|
|
0398 |
8 |
|
|
0399 |
9 |
MVI А, 018 |
Заслать содержимое 00000001 в А |
0400 |
ПМ3+40 |
|
|
0401 |
1 |
OUT port B2 |
Передать содержимое А в порт B(0) интерфейса 2 |
0402 |
2 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0403 |
3 |
|
|
0404 |
4 |
|
|
0405 |
5 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0406 |
6 |
ANI 048 |
Выделение из А второго разряда |
0407 |
7 |
|
|
0408 |
8 |
CPI 008 |
Сравниваем А с нулём |
0409 |
9 |
|
|
0410 |
ПМ3+50 |
JNZ 0422 |
Если не ноль, переходим по адресу 0422 |
0411 |
1 |
|
|
0412 |
2 |
|
|
0413 |
3 |
MVI A, 5F8 |
Заслать в А 01011111 (первая цифра = 9 на Табло 1) |
0414 |
4 |
|
|
0415 |
5 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0416 |
6 |
MVI A, 008 |
Заслать в А 00000000 (вторая цифра = 0 на Табло 1) |
0417 |
7 |
|
|
0418 |
8 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0419 |
9 |
JMP 0480 |
Возврат в ГПМ |
0420 |
ПМ3+60 |
|
|
0421 |
1 |
|
|
0422 |
2 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0423 |
3 |
ANI 08м |
Выделение из А третьего разряда |
0424 |
4 |
|
|
0425 |
5 |
CPI 008 |
Сравниваем А с нулём |
0426 |
6 |
|
|
0427 |
7 |
JZ 0438 |
Если ноль, переходим по адресу 0438 |
0428 |
8 |
|
|
0429 |
9 |
|
|
0430 |
ПМ3+70 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0431 |
1 |
ANI 108 |
Выделение из А четвёртого разряда |
0432 |
2 |
|
|
0433 |
3 |
CPI 008 |
Сравниваем А с нулём |
0434 |
4 |
|
|
0435 |
5 |
JNZ 0401 |
Если не ноль, то переход по адресу 0401 |
0436 |
6 |
|
|
0437 |
7 |
|
|
0438 |
8 |
MVI А, 408 |
Заслать содержимое 00000010 в А |
0439 |
9 |
|
|
0440 |
ПМ3+80 |
OUT port B2 |
Передать содержимое А в порт B(1) интерфейса 2 |
0441 |
1 |
CALL ПМТ10+0 |
Обращение к ПМТ10 (задержка на 10 секунд) |
0442 |
2 |
|
|
0443 |
3 |
|
|
0444 |
4 |
IN port C1 |
Чтение из порта С(2) интерфейса 1 в А |
0445 |
5 |
ANI 048 |
Выделение из А второго разряда |
0446 |
6 |
|
|
0447 |
7 |
CPI 008 |
Сравниваем А с нулём |
0448 |
8 |
|
|
0449 |
9 |
JNZ 0461 |
Если не ноль, переходим по адресу 0461 |
0450 |
ПМ3+90 |
|
|
0451 |
1 |
|
|
0452 |
2 |
MVI A, 5F8 |
Заслать в А 01011111 (первая цифра = 9 на Табло 1) |
0453 |
3 |
|
|
0454 |
4 |
OUT port A1 |
Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1) |
0455 |
5 |
MVI A, 5F8 |
Заслать в А 01011111(вторая цифра = 9 на Табло 1) |
0456 |
6 |
|
|
0457 |
7 |
OUT port В1 |
Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1) |
0458 |
8 |
JMP 0480 |
Возврат в ГПМ |
0459 |
9 |
|
|
0460 |
ПМ3+100 |
|
|
0461 |
1 |
IN port C1 |
Чтение из порта С(3) интерфейса 1 в А |
0462 |
2 |
ANI 088 |
Выделение из А третьего разряда |
0463 |
3 |
|
|
0464 |
4 |
CPI 008 |
Сравниваем А с нулём |
0465 |
5 |
|
|
0466 |
6 |
JZ 0477 |
Если ноль, переходим по адресу 0477 |
0467 |
7 |
|
|
0468 |
8 |
|
|
0469 |
9 |
IN port C1 |
Если не ноль, то чтение из порта С(4) интерфейса 1 в А |
0470 |
ПМ3+110 |
ANI 108 |
Выделение из А четвёртого разряда |
0471 |
1 |
|
|
0472 |
2 |
CPI 00 |
Сравниваем А с нулём |
0473 |
3 |
|
|
0474 |
4 |
JNZ 0440 |
Если не ноль, то переход по адресу 0440 |
0475 |
5 |
|
|
0476 |
6 |
|
|
0477 |
7 |
MVI А, 028 |
Заслать содержимое 00001000 в А |
0478 |
8 |
|
|
0479 |
9 |
OUT port В2 |
Передать содержимое А в порт В(3) интерфейса 2 |
0480 |
ПМ3+120 |
RET |
Возврат в ГПМ |
0481 |
NOP |
NOP |
|
0482 |
|
NOP |
|
0483 |
|
NOP |
|
0484 |
|
NOP |
|
0485 |
|
NOP |
|
0486 |
|
NOP |
|
0487 |
|
NOP |
|
0488 |
|
NOP |
|
0489 |
|
NOP |
|
ПМТ10
0490 |
LXI HL, 001016 |
Загружаем в HL адрес ОЗУ+001016 |
0491 |
|
|
0492 |
|
|
0493 |
MVI M, 008 |
Обнуляем счетчик1 |
0494 |
|
|
0495 |
LXI HL, 001116 |
Загружаем в HL адрес ОЗУ+001116 |
0496 |
|
|
0497 |
|
|
0498 |
MVI M, 008 |
Обнуляем счетчик2 |
0499 |
|
|
0500 |
LXI HL, 001216 |
Загружаем в HL адрес ОЗУ+001216 |
0501 |
|
|
0502 |
|
|
0503 |
MVI M, 008 |
Обнуляем счетчик3 |
0504 |
|
|
0505 |
NOP |
|
0506 |
NOP |
|
0507 |
NOP |
|
0508 |
INR M |
Инкрементируем счетчик3 |
0509 |
MVI A, FF8 |
Заносим число 25510 в аккумулятор |
0510 |
|
|
0511 |
CMP M |
Сравниваем счетчик 3 с числом 25510 |
0512 |
JNZ 0505 |
Если счетчик3 ≠ 25510, переход по адресу 0505 |
0513 |
|
|
0514 |
|
|
0515 |
LXI HL, 001116 |
Загружаем в HL адрес ОЗУ+001116 |
0516 |
|
|
0517 |
|
|
0518 |
INR M |
Инкрементируем счетчик2 |
0519 |
MVI A, 408 |
Заносим число 6410 в аккумулятор |
0520 |
|
|
0521 |
CMP M |
Сравниваем счетчик2 с числом 6410 |
0522 |
JNZ 0500 |
Если счетчик2 ≠ 6410, переход по адресу 0500 |
0523 |
|
|
0524 |
|
|
0525 |
LXI HL, 001016 |
Загружаем в HL адрес ОЗУ+001016 |
0526 |
|
|
0527 |
|
|
0528 |
INR M |
Инкрементируем счетчик1 |
0529 |
MVI A, 648 |
Заносим в аккумулятор число 10010 |
0530 |
|
|
0531 |
CMP M |
Сравниваем счетчик1 с числом 10010 |
0532 |
JNZ 0495 |
Если счетчик1 ≠ 1010, переход по адресу 0495 |
0533 |
|
|
0534 |
|
|
0535 |
RET |
Выход из программного модуля ПМТ10 |
