Использование языка ассемблер

Страницы работы

Содержание работы

МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ УКРАИНЫ

ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ УНИВЕРСИТЕТ РАДИОЭЛЕКТРОНИКИ

Отчет

по лабораторной работе № 9

по курсу «Системное программирование»

Вариант №7

Выполнил:                                                                                     Проверил:

ст. гр. КИ-06-7                                                                               Корниенко Т.В.

Парченко П. В.                                                                             

Харьков 2008


ИСПОЛЬЗОВАНИЕ ЯЗЫКА АССЕМБЛЕР

Цель работы

Ознакомление с языком программирования низкого уровня Ассемблер, областями его применения, получение практических навыков по созданию ассемблерных программ и стыковки их с программами на языках высокого уровня.

Задание

На языке Ассемблер написать следующие функции работы с матрицами: определение максимального/минимального элемента матрицы (с выводом на экран номера столбца и строки, где этот элемент находиться), среднего арифметического значения элементов строк и столбцов. Использовать функции из основной программы на С++.

Описание алгоритма решения поставленной задачи

Для решения задачи мы реализовали вложенные циклы типа for. Для этого мы определили переменные x, y, в которых храним текущую позицию, и переменную, в которой будем хранить позицию максимального либо минимального элемента. В каждом цикле мы реализовали по 3 метки, обозначающие увеличение переменной цикла, проверки на завершение, и метка окончания цикла. В самом начале после инициализации переменной цикла мы переходим на проверку выхода из цикла, т.к. увеличивать ее в начале не требуется. Если при проверке оказался выход переменной цикла за границу, то переходим на конец цикла, иначе выполняем тело.  В конце тела мы передаем управление на метку увеличения значения переменной цикла.

Для нахождения максимума и минимума в регистре edi храним значение текущего максимального или минимального значения, в регистр esi заносим значение текущего элемента матрицы. Если при проверке мы находим новый максимум или минимум, то заносим его координаты в result, а его значение в edi.

Похожие материалы

Информация о работе