- •Команды обработки данных и передачи управления для микроконтроллера mc68hc908gp32
- •Удк 621.375(03)
- •1. Команды арифметических операций
- •2. Команды логических операций
- •3. Команды сдвигов
- •4. Команды битовых операций
- •5. Команды управления программой и процессором
- •6. Маскирование данных и организация условных переходов
- •Упражнения
- •Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Список литературы:
Вариант 6
Запишите в регистр А число 24. Вычтите из (А) число 34. Результат запишите в ячейку памяти с адресом 105. Посмотрите и объясните результат, полученный в 105 ячейке памяти.
Сложите два числа 09 и 06, используя непосредственный способ адресации. Результат запишите в ячейку памяти с адресом C1. Из полученного результата вычтите число 07, хранящееся по адресу C10, используя прямой способ адресации. Результат запишите в ячейку памяти C2, используя индексный способ адресации. Полученный результат помножьте на число 7. Результат запишите в ячейку памяти C4. Очистите регистр АСС. Полученный результат поделите на число 6. Результат запишите в ячейку памяти C5.
Запишите в регистр А число 05. Запишите в Н:Х число 105. Уменьшайте на единицу содержимое Н:Х до тех пор пока содержимое регистра Х не станет больше значения в регистре А. Посмотрите регистр Х. Объясните полученный результат.
Дан массив из 10 однобайтных чисел, расположенный в ячейках памяти с начальным адресом 85. Перепишите в ячейки памяти, начиная с адреса 100, отрицательные числа из этого массива.
Сделайте проверку наличия 0 в каком-либо разряде аккумулятора и запишите в регистр Х номер этого разряда. Если установлены несколько разрядов в 0, то определите их количество (регистр Н) и номера разрядов (в ячейках памяти , начиная с адреса 40). Число в регистре А задаётся преподавателем.
Запишите в регистр Х код ЕЕ, если число в регистре А больше 6 и меньше 10. Число в регистре А задаётся преподавателем.
Запишите в ячейку памяти с адресом 90 число 3D. Выполните над этим числом различные варианты сдвигов влево(ASL, LSL, ROL), записывая результат каждой операции сдвига в последующие ячейки памяти (91, 92, 93). Полученные числа сложите и результат запишите в ячейку памяти с адресом 94.
Запишите в регистр А число C3. Сделайте 4 циклических сдвига вправо. Результат запишите в ячейку памяти с адресом 140. Произведите в аккумуляторе циклический сдвиг влево до тех пор пока не инвертируется содержимое флага С. Объясните полученные результаты.
Из двух однобайтовых чисел F6 и 8Е составьте последовательность чисел F8, FE, 68, 6E и запишите их в ячейки памяти, начиная с адреса 80, используя индексную адресацию.
Запишите в регистр А число 0А, в индексный регистр Н:Х – число 140, а в ячейку памяти с адресом 140 – число 94. Сложите (А) и (140). Если получилось отрицательное число, перейдите к подпрограмме, начинающейся с адреса 150, и с помощью подпрограммы вычислите дополнительный код (А). Вернитесь в основную программу и запишите (А) в (140). Объясните полученный результат.
Список литературы:
Шагурин И. И. Архитектура, программирование и применение 8-разрядных микроконтроллеров семейства Motorola 68HC08. Лабораторный практикум.-МИФИ.-2002,-98с.
Шагурин И. И. «Микропроцессоры и микроконтроллеры фирмы Motorola»: Справочное пособие. -М. :Радио и связь, 1998- 560с.: ил.
Ремизевич Т.В. Микроконтроллеры для встраиваемых приложений. Под редакцией Кирюхина И.С. –М: Додека, 2000.-272с.
Предко М. Руководство по микроконтроллерам в 2-х томах. М.: Постмаркет, 2001.
Солонина А.И., Улахович Д. А., Яковлев Л. А. Цифровые процессоры обработки сигналов фирмы Motorola. – СПб.:БХВ-Петербург, 2000.-512 с. ил.
Бухмин В.С. Микропроцессор КР580ИК80А. Составление и отладка программ на языке ассемблер. Описание к лабораторной работе. Казань, 1995. – 55 с.