Составление программы на языке Ассемблер
На основе представленного алгоритма разработана программа на языке Ассемблер, которая выполняет описанные действия. Полученная программа описывается в таблице 4.1
Таблица 4.1
| Метка | Код | Операнд | Машинный код | Комментарий | |
| LXI | В, 00 00 | 01 00 00 | Пересылка внешних данных в регистровую пару | ||
| LXI | D,00 00 | 11 00 00 | Пересылка внешних данных в регистровую пару | ||
| К5: | IN PORT | DB 01 | Ввод данных | ||
| PUSH | D | D5 | Запись содержимого регистровой пары в стек | ||
| PUSH | B | С5 | Запись содержимого регистровой пары в стек | ||
| MOV | С, А | 4F | Данные из регистра А занести в регистр С | ||
| MOV | D, А | Данные из регистра А занести в регистр D | |||
| DCR | С | ОD | Уменьшение на единицу | ||
| ADC | D | 8А | Сложение содержимого регистра А с содержимым D | ||
| DCR | С | 0D | Уменьшение на единицу | ||
| JNZ | К1 | C2 23 | Если флаг Z не равен 0 то переходим на К1 | ||
| MOV | D, А | Данные из регистра А занести в регистр D | |||
| MOV | D,B | Данные из регистра В занести в регистр D | |||
| MOV | А, В | Данные из регистра В занести в регистр А | |||
| DCR | D | Уменьшение на единицу | |||
| JNZ | К1 | C2 23 | Если флаг Z не равен 0 то переходим на К1 | ||
| К1: | ADC | В | Сложение содержимого регистра А | ||
| DCR | D | Уменьшение на единицу | |||
| JNZ | К1 | С2 23 | Если флаг Z не равен 0 то переходим на К | ||
| ADC | С | 8А | Сложение содержимого регистра А с содержимым С | ||
| MVI | В 01 | 4Е | Запись внешних данных | ||
| MVI | С 00 | 0Е | Запись внешних данных | ||
| MOV | D,А | Данные из регистра А занести в регистр D | |||
| K2 | INR | С | 0С | ||
| SBB | В | Вычитание из регистра А регистр В | |||
| JNZ | К2 | С2 32 | Если флаг Z не равен 0 то переходим на К2 | ||
| MOV | А, В | Данные из регистра В занести в регистр А | |||
| CMP | С | В9 | Вычитание из регистра А регистра С без сохранения результата | ||
| JNZ | К2 | С2 32 | Если флаг с не равен 0 то переходим на К2 | ||
| РОР | В | С1 | Излечение из стека информации | ||
| MOV | D,А | Данные из регистра А занести в регистр D | |||
| MOV | А,В | Данные из регистра В занести в регистр А | |||
| MVI | Е 00 | 1Е | Запись внешних данных | ||
| K3 | INR | Е | 1С | Приращение E | |
| SBB | D | 9А | Вычитание из регистра А регистр D | ||
| JNZ | КЗ | С2 43 | Если флаг с не равен 0 то переходим на КЗ | ||
| MOV | A, E | 7В | Данные из регистра Е занести в Регистр А | ||
| DAA | Десятичная коррекция | ||||
| RAL | |||||
| DAA | Десятичная коррекция | ||||
| СМР | C | В8 | Вычитание из регистра А регистра С без сохранения результата | ||
| JZ | К4 | СА | |||
| INR | С | ОС | |||
| К:4 | INR | В | |||
| MOV | А,В | Данные из регистра В занести в регистр А | |||
| СРI | 64 H | FЕ 64 | Вычитание из А внешних данных без сохранения результата | ||
| JC | К5 | DA | |||
| РОР | D | D1 | Излечение из стека информации | ||
| DCX | D | 1В | Уменьшение регистровой пары на 1 | ||
| JNZ | К5 | С2 09 | Если флаг Z не равен 0 то переходим на К5 | ||
| MOV | А, С | Данные из регистра С занести в регистр А | |||
| OUT PORT | 02 H | Порт 2 | |||
| HLT | Завершить | ||||
Заключение
Курсовой проект выполнен в полном объеме в соответствии с техническим заданием.
В разделе выбор и обоснование блок-схемы микропроцессорного устройсва была рассмотрена типовая блок-схема микропроцессорного устройства, и было произведено ее упрощение.
В разделе разработки принципиальной схемы микропроцессорного устройства курсового проекта был осуществлен выбор элементной базы, а также его обоснование.
В разделе описания работы микропроцессорного устройства был описан принцип работы данного микропроцессорного устройства, в результате чего была создана схема электрическая принципиальная.
В разделе разработка алгоритма и программы на языке Ассемблера в соответствии с техническим заданием был составлен алгоритм работы устройства, руководствуясь которым была написана программа на языке Ассемблера.
В результате было разработано микропроцессорное устройство, выполняющее все задачи, поставленные в техническом задании.
Список литературы
1 Сергеева Т.И., Гребенникова Н.И. Информатика. Вычислительные машины и программирование. Воронеж: ВГТУ, 2005. – 237с.
2 Новиков Ю.В., Скоробогатов П.К. Основы микропроцессорной техники. М: Интернет-Университет Информационных технологий, 2003. – 440с.
3 Фрумкин Г.Д., Расчет и конструирование радиоэлектронной аппаратуры. М.: Высшая школа, 1977. – 238 с.
4 Калабеков Б.А., Микропроцессоры и их применение в системах передачи и обработки сигналов. М: Радио и связь, 1988. – 368 с.
5 Б.Я., Цехановский В.в. Информационные технологии. М.: Высшая школа, 2003. – 263с.