Студопедия Главная Случайная страница Обратная связь

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

Директива определения типа микропроцессора




Model flat,stdcall ; задание линейной модели памяти

Data ; директива определения данные

_a dw 5 ; запись в переменную с именем _а числа 5

_b dw 27 ; запись _b = 16h

_c dw 86 ; запись _c = 56h

_e dw 1986 ; запись _e = 7C2h

_d dw 1112 ; запись _d = 458

Res dw 0 ; резервирование памяти для сохранения переменной res

Code ; директива начала сегмента команд

start:

Mov edx,0 ; очистка регистров

Mov ebx,0 ; очистка регистров

Mov ecx,0 ; очистка регистров

mov ах,_e ; в регистр ах заносим число _e = 7C2h

Mul _d ; умножаем _e на _d

SHL edx,16 ; делаем сдвиг на 16

Mov dx,ax

Push edx ; заталкиваем значение в стек

Mov edx,0

Mov ах,_e

Mov cx,_b

Div cx ; делим содержимое ах на содержимое cx

Pop ecx ; достаем из стеку значения

Sub ecx,eax ; отнимаем

Mov ах,_a

Sub eax,ecx

Mov res, eax

Ret ; возвращение управление ОС

End start ; окончание программы с именем _start

Результат работы программы:

 

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

1. Изучить приведенный теоретический материал к лабораторной работе.

2. В соответствии с вариантом задания написать программу на ассемблере.

3. Оттранслировать программу в объектный код.

4. Провести отладку программы и проверить получаемые результаты.

 

СОДЕРЖАНИЕ ОТЧЕТА

Отчет должен включать:

§ титульный лист;

§ описание цели работы;

§ описание задания на лабораторную работу;

словесные пояснения к алгоритму решения задачи и схему программы (обращаю Ваше внимание на то, что понятие массива и индексации массива весьма условны, ибо в памяти ЭВМ элементы массива располагаются последовательно, строка за строкой. Поэтому физическая структура двумерного массива и вектора (одномерного массива) оказываются одинаковыми. Отличие двумерного массива и вектора заключается в интерпретации области памяти, отведенной этим структурам. Наращивание индекса элемента структуры определяется алгоритмом обработки структуры данных);

§ листинги программ;

§ результаты выполнения программ;

§ выводы.

 

ВАРИАНТЫ ЗАДАНИЙ.

Написать и отладить программы.

1. Подсчитать количество четных (нечетных) элементов двухмерного массива

а) элементы массива однобайтовые;

б) элементы массива двухбайтовые.

2. Подсчитать сумму элементов строк (столбцов) двухмерного массива

а) элементы массива однобайтовые;

б) элементы массива двухбайтовые.

3.Подсчитать сумму всех элементов двухмерного массива и найти медиану (среднее арифметическое).

а) элементы массива однобайтовые;

б) элементы массива двухбайтовые.

4. Подсчитать суммы положительных и отрицательных элементов двухмерного массива и определить, какая из них по абсолютной величине больше

а) элементы массива однобайтовые;

б) элементы массива двухбайтовые.

Примечание к заданиям 1-2: в контексте определения четности-нечетности могут быть использованы различные команды ассемблера:

- команда логического умножения (конъюнкции). При этом учитывается то обстоятельство, что четные положительные числа имеют значение младшего двоичного разряда равное 0, а нечетные – 1. То есть, если результат выполнения команд

mov al, mas[si]







Дата добавления: 2014-11-10; просмотров: 192. Нарушение авторских прав

Studopedia.info - Студопедия - 2014-2017 год . (0.005 сек.) русская версия | украинская версия