Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка АК Ч1.doc
Скачиваний:
40
Добавлен:
13.11.2019
Размер:
977.41 Кб
Скачать
    1. Вивчення команд арифметичних операцій та способу вивода даних на статичний 7-сегментний індикатор

Мета роботи: вивчити команди арифметичних дій (ADD, SUBB, MUL, DIV), схему підключення статичного 7-сегментного індикатору до лабораторного стенду EV8031/AVR і засвоїти методику і технологію розробки програм на мові Асемблера які виконують арифметичні дії та виводять інформацію на такий індикатор.

Завдання: скласти на мові Асемблера МК51 програму, яка обчислює значення заданої функції та виводить результат на статичний індикатор.

Методичні вказівки

1. При підготовці до виконання лабораторної роботи самостійно на основі матеріалів лекцій, рекомендованої літератури, матеріалів глобальної комп’ютерної мережі Internet та інших джерел вивчити:

  1. вивчити інструкції арифметичних команд додавання (add), віднімання (subb), множення (mul AB), ділення (div AB);

  2. вивчити схему підключення статичного семисегментного індикатора лабораторного стенду EV8031/AVR та способи програмної взаємодії з ним;

  3. скласти блок-схему алгоритму вирішення задачі.

2. При виконанні роботи в учбовій комп’ютерній лабораторії:

1) відлагодити програму та завантажити її в лабораторний стенд;

2) виконати тестування програми на стенді;

3) зробити висновки.

Зміст звіту

  1. Титульний аркуш.

  2. Мета роботи, індивідуальне завдання (табл. 1).

  3. Блок-схема алгоритму рішення завдання.

  4. Текст програми з кодами та коментарями.

  5. Результати тестування програми.

  6. Висновки.

Варіанти завдань

№ варіанту

Функція

Вихідні дані

Результат

Індикатор

X1

X2

Y

1

Y=2X1-3X2/5+3

R1

R2

R3

лівий

2

Y=2(X1+4X2)/7-2

R4

R5

R6

правий

3

Y=3(2X1-X2)/2+5

R1

R2

R7

лівий

4

Y=4X1-(2X2/5+4)

R2

R3

R0

правий

5

Y=(X1+X2)/4-3

R3

R2

R4

лівий

6

Y=(X1+2)-3X2/2

R2

R1

R5

правий

7

Y=X1+3(X2/5-8)

R5

R6

R3

лівий

8

Y=X1-5X2/8+12

R7

R0

R3

правий

9

Y=4X1+4X2/9-7

R3

R5

R7

лівий

10

Y=(X1-5)+10X2/3

R4

R6

R0

правий

11

Y=7X1+X2/5-1

R4

R6

R0

лівий

12

Y=X1-X2/7+10

R4

R6

R0

правий

13

Y=5X1+6X2/5-15

R4

R6

R0

лівий

14

Y=7X1-8X2/5+6

R4

R6

R0

правий

15

Y=3X1+4X2/5-9

R4

R6

R0

лівий

Пример выполнения лабораторной работы:

Составить блок-схему алгоритма и программу на языке Assembler вычисляемую значение функции Y от аргументов X1 и X2 являющееся целыми 1-байтными числами. Все данные разместить во внутренней памяти данных.

X1=20h =#00h

X2=21h =#04h

Y=22h

Ход работы:

Блок-схема:

Текст программы:

org 0

start:

mov 20h,#00h

mov 21h,#04h

mov A, 21h

rr a

mov 17h,a

rr a

add a,17h

mov 19h,A

mov A,20h

add A,#02

mov B,A

mov A,19h

div AB

mov 18h,A

mov A,20h

mov B,#03

mul AB

add A,18h

mov 22h,A

ret

END

Результат программы: Y=1

Проверка:

Вывод: изучили команды арифметических операций, и освоили их использование в программах линейной структуры для микропроцессора MCS-51.

ЛАБОРАТОРНАЯ РАБОТА №3