Составление программы на языке Ассемблер

 

На основе представленного алгоритма разработана программа на языке Ассемблер, которая выполняет описанные действия. Полученная программа описывается в таблице 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 Сложение содержимого регистра А с содержимым 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 С Сложение содержимого регистра А с содержимым С
  MVI В 01 Запись внешних данных
  MVI С 00 Запись внешних данных
  MOV D,А Данные из регистра А занести в регистр D
K2 INR С  
  SBB В Вычитание из регистра А регистр В
  JNZ К2 С2 32 Если флаг Z не равен 0 то переходим на К2
  MOV А, В Данные из регистра В занести в регистр А
  CMP С В9 Вычитание из регистра А регистра С без сохранения результата
  JNZ К2 С2 32 Если флаг с не равен 0 то переходим на К2
  РОР В С1 Излечение из стека информации
  MOV D,А Данные из регистра А занести в регистр D
  MOV А,В Данные из регистра В занести в регистр А
  MVI Е 00 Запись внешних данных
K3 INR Е Приращение E
  SBB D Вычитание из регистра А регистр D
  JNZ КЗ С2 43 Если флаг с не равен 0 то переходим на КЗ
  MOV A, E Данные из регистра Е занести в Регистр А
  DAA   Десятичная коррекция
  RAL    
  DAA   Десятичная коррекция
  СМР C В8 Вычитание из регистра А регистра С без сохранения результата
  JZ К4 СА  
  INR С ОС  
К:4 INR В  
  MOV А,В Данные из регистра В занести в регистр А
  СРI 64 H FЕ 64 Вычитание из А внешних данных без сохранения результата
  JC К5 DA  
  РОР D D1 Излечение из стека информации
  DCX D Уменьшение регистровой пары на 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с.