49111

Вычесть содержимое ячейки памяти с адресом 6001H из содержимого ячейки памяти с адресом 6000Н. Занести результат в ячейку памяти с адресом 6002H, если результат положительный, иначе — в ячейку 6003Н

Курсовая

Информатика, кибернетика и программирование

Директивы ассемблера позволяют включать в программу блоки данных (описанные явно или считанные из файла); повторить определённый фрагмент указанное число раз; компилировать фрагмент по условию; задавать адрес исполнения фрагмента, менять значения меток в процессе компиляции; использовать макроопределения с параметрами и др.

Русский

2014-01-07

433 KB

24 чел.

ОГЛАВЛЕНИЕ


ВВЕДЕНИЕ

Assembler — язык программирования низкого уровня, представляющий собой формат записи машинных команд, удобный для восприятия человеком.

Команды языка ассемблера один в один соответствуют командам процессора и, фактически, представляют собой удобную символьную форму записи (мнемокод) команд и их аргументов. Также язык ассемблера обеспечивает базовые программные абстракции: связывание частей программы и данных через метки с символьными именами и директивы.

Директивы ассемблера позволяют включать в программу блоки данных (описанные явно или считанные из файла); повторить определённый фрагмент указанное число раз; компилировать фрагмент по условию; задавать адрес исполнения фрагмента, менять значения меток в процессе компиляции; использовать макроопределения с параметрами и др.

Каждая модель процессора, в принципе, имеет свой набор команд и соответствующий ему язык (или диалект) ассемблера.


1 ПОСТАНОВКА ЗАДАЧИ

Задача: Вычесть содержимое ячейки памяти с адресом 6001H из содержимого ячейки памяти с адресом 6000Н. Занести результат в ячейку памяти с адресом 6002H, если результат положительный, иначе — в ячейку 6003Н.

Этапы решения задачи:

1. Разработать структурную схему алгоритма решения задачи по заданному варианту.

2. Написать программу на языке ассемблера.

3. Ассемблировать программу вручную.

4. Занести программу в память микроЭВМ.

5. Выполнить программу.

2 АНАЛИЗ ЗАДАЧИ И РАЗРАБОТКА АЛГОРИТМА

Определяем в регистр H,L адрес ячейки 6000h. C помощью команды MOV присваиваем содержимое регистра H,L аккумулятору. Используем команду INX для продвижения указателя на следующую ячейку H,L<-(H,L+1). С помощью команды SUB вычитаем из аккумулятора содержимое регистра H,L: A<-(A)-( H,L). Снова, используем команды INX и MOV для продвижения указателя и присваивания указателя, соответственно. Результат в ячейке 6002h. 

Вносим содержимое ячеек с адресами 6000h и 6001h соответственно.

3 РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ И ЕЁ АССЕМБЛИРОВАНИЕ

Рисунок 1 Блок-схема алгоритма

Таблица 1 Кодирование

Адрес

Код

Команда

5000

21

LXI

H,6000h

5001

00

5002

60

5003

7E

MOV

(А) (H,L)

5004

23

INX

(H,L)(H,L)+1

5005

96

SUB

(A) (A)-(H,L)

5006

23

INX

(H,L)(H,L)-1

5007

77

MOV

5008

76

HLT


4 ОТЛАДКА И ВЕРИФИКАЦИЯ ПРОГРАММЫ

Начальное и итоговое состояния программы показаны на рисунках 2,3. Как видно из рисунка 2, все коды команд из таблицы 1 вписаны в окно памяти.

Рисунок 2 Окно программы на начальном шаге

На последнем шаге работы программы, когда ячейка памяти с адресом 6000h имеет значение 05 и ячейка памяти с адресом 6001h значение 02, рузельтат вычисления в ячейке с адресом 6003h – 03.

Рисунок 3 Окно программы на конечном шаге


ЗАКЛЮЧЕНИЕ

В результате выполнения данной работы были получены навыки ассемблирования вручную простейших программ на языке ассемблера МП 580ВМ80. Получены навыки по отладке ассемблерных программ.


БИБЛИОГРАФИЧЕСКИЙ СПИСОК

  1.  Степанов А.Н. Архитектура вычислительных систем и компьютерных сетей/А.Н. Степанов – СПб.: Питер, 2007. – 509 с.
  2.  Таненбаум Э. Архитектура компьютера/Э. Таненбаум  – СПб.: Питер, 2003 – 704 с.
  3.  Топольский Д.В. Топольская И.Г., Микропроцессоры. Методические указания по выполнению лабораторных работ. – Челябинск: ЮУрГУ, 2003 – 31с. 


(H,L)
(H,L)+1

А) (H,L)

(H,L )6000h

Начало

(H,L) (H,L)-1

(A) (A)-(H,L)

Конец

(H,L) (A)


 

А также другие работы, которые могут Вас заинтересовать

38259. Доходы, расходы и результаты деятельности 60 KB
  В течение отчётного периода на счетах классов 7 и 9 накапливаются соответственно доходы и расходы а в конце месяца эти счета закрываются путём списания их Сдо на сч. № 92 Административные расходы предназначен для учёта общехозяйственных расходов связанных с управлением и обслуживанием предпр. № 93 Расходы на сбыт используется для отражения расходов на содержание подразделений занимающихся сбытом ГП товаров учитываются расходы на рекламу доставку товаров покупателю.