Студопедия

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

КАТЕГОРИИ:

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






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




 

 

Имеются матрица байт 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 ; Конец программы с указанием точки входа.

 


mylektsii.ru - Мои Лекции - 2015-2019 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал