Цифровые устройства и микропроцессорные системы. Задачи и упражнения: Учебное пособие (Представление чисел и арифметические операции в цифровых устройствах. Микропроцессорные устройства и системы на базе МП КР580ВМ80), страница 50

Примеры команд1

Прямая адресация

1. ADD 9, 5 – сложить содержимое аккумулятора с содержимым ячейки памяти 9, которое предварительно сдвигается влево на 5 разрядов:

(ACC)¬(ACC)+[9]´25.

2. SUB 15, 3 – из содержимого аккумулятора вычесть содержимое ячейки памяти 15, которое предварительно сдвигается влево на три разряда:

(ACC)¬(ACC) – [15]´23.

Косвенная адресация

3. ADD *, 8 – сложить содержимое аккумулятора с одержимым ячейки памяти, адрес которой определяется содержимым текущего вспомогательного регистра. Перед сложением данные из ячейки памяти сдвигаются влево на восемь разрядов.

4. ADD *+, 8 те же действия, что в примере 3; содержимое текущего вспомогательного регистра после выполнения команды увеличивается на единицу.

5 ADD * +, 8, 1 – те же действия, что в примере 3, но содержимое текущего вспомогательного регистра уменьшается на единицу.

6. ADD * +, 8, 1 – те же действия, что и в примере 4, но в указатель вспомогательного регистра после выполнения команды дополнительного загружается единица, т.е. для следующей команды текущим вспомогательным регистром будет AR1.

7. ADD * +, 8, 0 те же действия, что и в примере 4, но в указатель вспомогательного регистра загружается нуль.

ЗАДАЧИ И УПРАЖНЕНИЯ

6.123. Какие способы повышения быстродействия используются при построении МП TMS 32010?

6.124. Какова разрядность шины данных МП TMS 32010?

6.125. Какова разрядность внешней шины адреса МП TMS 32010?

6.126. Сколько разрядов требуется для адресации портов ввода-вывода?

6.127. Какова разрядность АЛУ и аккумулятора?

6.128. Какие функции могут выполнять вспомогательные регистры?

6.129. В чем специфика гарвардской архитектуры и в чем заключается ее модификация в МП TMS 32010?

6.130. Какие существуют режимы адресации памяти данных?

6.131. Каково назначение указателя страниц памяти данных? При каком режиме адресации он используется?

6.132. Какие режимы работы программного счетчика допускаются в TMS 32010?

6.133. Что произойдет в МП, если на вход  подать напряжение низкого уровня?

6.134. Что такое текущий вспомогательный регистр? Чем определяется, какой вспомогательный регистр – текущий?

6.135. Сколько требуется команд для умножения двух 16-разрядных чисел?

6.136. Чем определяется глубина вложений подпрограмм? Как можно увеличить глубину вложений подпрограмм и как это сказывается на быстродействии микропроцессорной системы?

6.137. Каким будет значение AR0, AR1 и ARP после выполнения следующего фрагмента программы:

а)         LARP  0

LARK AR0,5

LARK AR1,9

ADD    * +, 0,1

ADD    * ¾

б)         LACK 3

SACL  8

LAR    AR0,8

LARP  0

LAR    AR1,8

ADD    * +,5,1

ADD    * ¾

в)

Адрес программной памяти

Команда

100

LARK AR0, 5

101

LARP 0

102

ZAC

103

ADD*

104

BANZ

105

103

6.138. Каким будет содержимое аккумулятора после выполнения фрагментов программы? Определить время их выполнения:

а)         LACK 3

SACL  8

ADD    8,1

ADD    8,2

б)         LACK 7

SACL  2

LT       2

MPYK 5

APAC

в)         LACK 1

SACL  5

LT       5

MPYK 2

LTA    5

MPYK 3

APAC

г)

Адрес

Команда

200

ZAC

201

LARP, 0

202

LARK AP0, 5

203

SAR AR0, *

204

ADD *

205

BANZ

206

203

д)

Адрес

Команда

200

ZAC

201

LARK AR1, 3

202

LARP 1

203

SAR AR1, *

204

LT *

205

MPY *

206

APAC

207

BANZ

208

203

6.139. Составить фрагмент программы вычисления величины y = x2 (x – целое число в диапазоне –128 £ х £ 128), если вводится через порт 3, а y выводится в порт 5.

6.140. Составить фрагмент программы вычисления величины z = 9x+7y (x и y – целые числа в диапазоне –1024 £ х £ 1024, -1024£y£1024), если х вводится через порт 3 y вводится через порт 4, а z выводится в порт 1.