Скачиваний:
5
Добавлен:
26.12.2024
Размер:
214 Кб
Скачать
☆

Вычислительная

техника

Лекция 6

Установка флагов состояний.

Команды умножения.

•Команды умножения, выполняющиеся в блоке умножителя

•MUL R2, R4, R5

•[R2] <= [R4] x [R5]

•SMULL R2, R3, R4, R5

•[R3][R2] <= [R4] x [R5]

•Команды умножения, выполняющиеся в умножителе с дополнительным сумматором для возможности накопления результата.

•MLA R2, R4, R5, R6

•[R2] <= ([R6] + [R4] x [R5])

•MLS R3, R1, R2, R4

•[R3] <= ([R4] – [R1] x [R2])

Пример использования сдвиговых регистров в умножении.

•22 х 21 => поступают на блок умножителя.

•22 (10110) — первый сомножитель (умножаемое);

•21 (10101)— второй сомножитель (поразрядный счетчик количества сдвигов)

Формируем первую сумму.

1 слагаемое (нет сдвига) — 10110

2 слагаемое

Первая сумма

1101110

2 слагаемое (4 сдвига) — 101100000

b111001110 = 256+128+64+8+4+2 = 462

Команды, изменяющие

состояние программного счетчика.

•Такие команды позволяют программе переходить к выборке кода из указанных в смещении областей памяти. При этом действие может производиться как в пределах тела программы (переходы), так и в подпрограмме (вызов процедуры при помощи возвратного перехода или вызов программы для обработки данных при обмене с внешними устройствами).

Команды переходов. Branch.

•Безусловные переходы.

•B disp – переход по смещению

•BL disp – переход с сохранением точки возврата

•BX LR – возврат из процедуры.

•Условные переходы

•Bcond disp

•Например:

•BEQ met

•BNE loop

•BHI adr

•BGT addr

Особенность условного перехода.

9

Условные переходы

•К моменту исполнения команды перехода очередь будет заполнена последующими командами. В случае выполнения условия все эти команды станут уже не нужны.

•Для увеличения производительности процессора используются методы прогнозирования переходов:

•1) статическое прогнозирование (на уровне компилятора);

•2) динамическое прогнозирование ( в структуре ядра)

•Кроме этого, условные переходы часто заменяются на условные команды. В случае невыполнения условия такая команда пропускается.

10

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