Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mIKROPROTsESSORY / LABMP_ALL_2013.doc
Скачиваний:
75
Добавлен:
09.04.2015
Размер:
2.25 Mб
Скачать

1.6. Задание для домашней подготовки

1.6.1. Ознакомиться по описанию с порядком разработки программ в рамках интегрированной среды.

1.6.2. Ознакомиться с примерами программ на Ассемблере, приведенными в разделе "Лабораторное занятие".

1.6.3. По рекомендованной литературе ознакомиться со структурой и программированием ОЭВМ семейства MCS51.

1.6.4. Разработать программу на языке Ассемблера по заданию, которое приведено ниже. В табл. 1.2 приведен номер варианта программы, которая должна быть разработана для каждой бригады в отдельности. Программа должна иметь все необходимые "псевдооператоры", которые позволяли бы загрузить ее непосредственно в среду. Коды программы должны начинаться с 0000Н, байтовые переменные - с 08Н, стек - с 60Н, битовые переменные - с 20Н, внешнее ОЗУ – с 0000H. Ассемблирование вручную приводить не надо.

Таблица 1.2

Распределение вариантов домашнего задания по бригадам

N бригады

1

2

3

4

5

6

7

8

9

10

N варианта

9

1

8

2

10

3

4

5

6

7

Вариант 1. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R3 подсчитать сумму чисел, хранящихся в R0, R1, R2.

Вариант 2. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R3 подсчитать выражение

R3 = R2 - R1 + R0

Вариант 3. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R4 подсчитать выражение

R4 = R2 – R0 + R1

.

Вариант 4. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение

R3 = R2 - R1 + R0

R4 = R2 – R0 + R1

R5 = R4 + R3

Вариант 5. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение

R3 = R2 - R1 + R0

R4 = R2 – R0 + R1

R5 = R4 - R3

Вариант 6. Загрузить в регистр R0 число 8. Загрузить в регистр R1 число 9. Загрузить в регистр R2 число 10. В регистре R5 подсчитать выражение

R3 = R2 - R1 + R0

R4 = R2 – R0 + R1

R5 = R3 - R4

Вариант 7. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R5 подсчитать выражение

R3 = R2 - R1 + R0

R4 = R2 – R0 + R1

R5 = R3 - R4

.

Вариант 8. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R5 подсчитать выражение

R3 = R2 - R1 + R0

R4 = R2 – R0 + R1

R5 = R3 - R4

Вариант 9. Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R2 число 15. В регистре R4 подсчитать выражение

R4 = R2 – R0 + R1

.

.

Вариант 10 Загрузить в регистр R0 число 4. Загрузить в регистр R1 число 5. Загрузить в регистр R3 число 15. В регистре R4 подсчитать выражение

R3 = R2 - R1 + R0

Примечание:

1) Команда загрузки в регистр числа: Mov Ri, #N , где Ri = R0, R1,…R7, N – число.

2) Команда пересылки из регистра Ri в регистр А: Mov А, Ri и обратная пересылка Mov Ri, А

3) Команда суммирования двух чисел предполагает, что одно из слагаемых должно быть предварительно загружено в регистр А. Тогда команда суммирования будет выглядеть так:

ADD A,Ri

где в А – первое число, в Ri - второе число. Результат суммирования сохраняется в том же регистре А.

4) Команда вычитания двух чисел предполагает, что одно из чисел (то, из которого вычитается) должно быть предварительно загружено в регистре А. Тогда команда вычитания будет выглядеть так:

SUBB A, Ri

где в А – первое число, в Ri - второе число (которое вычитают). Результат вычитания сохраняется в том же регистре А.

Соседние файлы в папке mIKROPROTsESSORY