Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Laby_MP / Отчет_семестровая работа

.doc
Скачиваний:
14
Добавлен:
06.02.2015
Размер:
37.89 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФГОУ ВПО «Чувашский государственный университет

имени И. Н. Ульянова»

Факультет энергетики и электротехники

Кафедра электрических и электронных аппаратов

Семестровая работа

Вариант 2

Выполнили студенты

гр. ЭТ-21-10

Гаврилов А.Ю.

Шоглев Р.Г.

Проверил:

Никифоров И.К.

Чебоксары 2014

Семестровая работа

Задание: определить максимальный элемент массива. Задаются начальный адрес массива и его длина.

Блок схема программы

Программа

{Длина массива задается в регистре R1}

$MOD812 {подключение модуля ADuc812}

LCALL PP {вызов подпрограммы PP}

SJMP KONEZ {переход на метку KONEC}

PP: PUSH ACC {начало стека}

M1: CLR A {очищаем аккумулятор}

MOVX A,@DPTR {переносим содержимое регистра DPTR в аккумулятор}

MOV 04H,A {переносим содержимое аккумулятора в ячейку 04H}

SUBB A,02H {разность аккумулятора и регистра R2}

JNC M2 {если С=0 переходим на метку M2}

INC DPTR {увеличиваем содержимое DPTR на +1}

CLR C {очищаем флаг С}

DJNZ R1,M1 {пока R1 не обнулится, переходим на метку M1}

SJMP M3 {переход на метку M3}

M2:MOV 02H,04H {переносим содержимое ячейки 04H в R2}

INC DPTR {увеличиваем содержимое DPTR на +1}

DJNZ R1,M1 {пока R1 не обнулится, переходим на метку M1}

M3:POP ACC {выход из стека}

RET {конец ПП}

KONEZ: END {конец}