Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦУМП2 лаб.раб.посл. вар.2.doc
Скачиваний:
5
Добавлен:
09.09.2019
Размер:
368.64 Кб
Скачать

5. Команды работы с битовыми полями.

Список команд работы с битовыми полями представлен в таблице 7.

Таблица 7.

SEC

SEI

SEV

BSET

CLC

CLI

CLV

BCLR

Пример 10. Установить бит переноса регистра признаков в логическую единицу и сбросить бит переполнения в логический ноль.

7. Содержание отчета

Отчет должен содержать:

  1. Название и цель работы.

  2. Лабораторные задания.

  3. Составленные и отлаженные программы.

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

8. Контрольные вопросы и задания.

1. Какие команды сложения Вы знаете?

2. Какие команды вычитания Вы знаете?

3. Где располагаются результаты команды FDIV и что они собой представляют?

4. Где располагаются сомножители и произведение при выполнении команды MUL?

5. Чем отличаются команды FDIV и IDIV?

6. Какие методы адресации используют команды ABA, ADDA, ABY?

7. Каким образом используется бит переноса в операции вычитания?

8. Над какими операндами могут выполняться команды INC, DEC?

9. Объясните отличие в выполнении команд ADD и ADC.

10. Что может служить операндом команды ADCA?

11. Какой флаг устанавливается, если результат операции сложения превышает $FF?

12. Объясните, по какому принципу устанавливаются флаги переноса, нуля и переполнения в регистре статуса CCR при выполнении арифметических команд сложения и вычитания.

13. Напишите программу вычитания содержимого регистров X и Y из регистра D.

14. Просуммируйте содержимое двух ячеек памяти.

15.Вычислите произведение двух ячеек памяти.

16. Вычислите разность содержимого регистров X и Y.

17. Напишите программу сравнения ячеек памяти $0 и $1.

18. Произвести обмен содержимого аккумулятора B с содержимым старшего байта регистра Y.

19. Заполнить десять ячеек памяти, начиная с адреса $2000, десятью значениями ячеек стека.

20. Напишите программу, инвертирующую те биты ячейки памяти $2000, которые сброшены в ноль в аккумуляторе B.

21. Напишите программу, которая записывает в ячейку памяти $2100 только четыре старших бита аккумулятора A.

Методические указания по выполнению лабораторной работы №2 Изучение команд сдвигов, команд передачи управления и специальных команд.

1. Команды сдвигов.

Перечень команд сдвигов представлен в таблице 2.1.

Различают три типа команд сдвига: арифметические сдвиги, логические сдвиги и циклические сдвиги. Операции сдвига могут выполняться над содержимым аккумуляторов А и В, или над содержимым ячейки памяти.

Таблица 2.1

ASLA/LSLA

ASRA

LSRA

ROLA

RORA

ASLB/LSLB

ASRB

LSRB

ROLB

RORB

ASLD/LSLD

ASR

LSRD

ROL

ROR

ASL/LSL

LSR

При выполнении команд арифметического сдвига вправо значение старшего бита заполняется знаком первоначального операнда (команды ASRA, ASRB, ASR).

Команды арифметического и логического сдвига влево практически совпадают (команды ASLA/LSLA, ASLB/LSLB, ASLD/LSLD, ASL/LSL). Освободившийся бит заполняется нулём.

При выполнении команд циклического сдвига освободившийся бит аккумулятора или ячейки памяти заполняется значением флага переноса С (carry) регистра признаков.

Пример 2.1. Умножить целое положительное число, находящееся в памяти по адресу $2000 на 16 не используя операцию умножения. Результат записать в ячейки [$2040,$2041].