Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Пример использования директив и команд в программе






 

 

Имеются матрица байт Tabb (3´ 2) и константа С.

Вычислить: Y = b 11 x b12 + b13 x C

b21 + b22 + b23

 

Где: b11 = 26, b12 = 44, b13 = 02,

b21 = 08, b22 = 22, b 23 = 32; Элементы матрицы байт Tabb (2x3)

С = 6; Константа

 

Программа:

.MODEL SMALL; Задаём малую модель структуры программы;

.STACK 300H; Определяем размер сегмента стэка - 300Н (768 ячеек).

.DATA; Задаём начало и описываем сегмент данных.

Text DB ‘Это пример программы $‘; Этот текст выведем на экран.

C EQU 6; Зададим байтовую константу под именем C

Tabb db 26, 44, 14; Создадим таблицу десятичных байт

Db 08, 22, 32; размером 2 х 3.

Y dw 3 dup (?); Сюда запишем итог вычислений.

.CODE; Задаём начало и описываем программный сегмент.

str: mov AX, @data; Загрузим адрес сегмента данных в АХ.

mov DS, AX; Перешлём его в регистр DS.

mov AH, 09H; Функция DOS 09Н вывода текста на экран.

lea DX, text; Перешлём в DX адрес выводимого текста.

int 21H; Команда вызова DOS.

Mov al, tabb; Перешлём b11 = 26 в регистр AL

Mul [tabb+1]; Умножим содержимое AL на b12, теперь в АХ 1144 (0478H)

Add аl, tabb +2 ]; Сложим произведение с b13, теперь в АХ 1158 (0486H)

Mov bl, [tabb +3]; Перешлём b21 = 08 в регистр bl

Add bl, [tabb + 4]; Сложим b 21 с b22, теперь в bl 30 (1EH)

Add bl, [tabb + 5]; Сложим сумму с b 23, теперь в bl 62 (3EH)

Div bl; Разделим АХ на сумму. Частное в al=18(12H), остаток в ah

Mul С; Умножим al на С = 6. Теперь в АХ 108 (6CH)

Mov Y, ax; Перешлём произведение в ячейку Y.

mov AH, 4CH; Функция DOS завершения программы.

mov AL, 00H; Код (0)спешного завершения программы.

int 21H; Вызов DOS.

end str; Конец программы с указанием точки входа.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.