Секционные микропроцессоры с микропрограммным управлением серии К1804, страница 15

6.1 Алгоритм программы.

Рис.5                                      

В программе используется значение флага F3 для выявления единицы в старшем разряде. Когда F3=1 ведется подсчёт количества выходящих единиц из байта в счётчике R2. Просмотр старшего разряда будет идти пока счётчик R1(равен 8 в начале программы) не будет равен 0.

После чего R2 присваиваться значение 8-R2(т.е. количество нулей в байте).

Пример:

1) R0=1101 Q=0110

Результат выполнения: 0011

2) R0=0101 Q=0100

Результат выполнения: 0101

3) R0=0001 Q=0001

Результат выполнения: 0110

Задание №2. Умножение младшими разрядами вперед со сдвигом суммы.

Адрес

памяти

Микрокоманда

Выполняемая функция

адрес перехода

инструкция перехода

приёмник

результата

источник

операндов

АЛУ

А

В

D

7

6

5

4

3

2

1

0

0000

xxxx

0010

x000

x111

x011

xxxx

xxxx

1100

Мн-ль—> Q

0001

xxxx

0010

x011

x111

x011

xxxx

0001

1011

Мн-e—> R1

0010

xxxx

0010

x011

x111

x011

xxxx

0010

0000

Сумма(0)—> R2

0011

xxxx

0010

x011

x111

x011

xxxx

0011

0100

CT(4)—> R3

0100

xxxx

0010

x001

x110

x100

xxxx

xxxx

0001

 Q И 1

0101

0111

1100

x001

xxxx

xxxx

xxxx

xxxx

xxxx

Z=1 ->7

0110

xxxx

0010

x011

x001

0000

0001

0010

xxxx

Сумма+Mн-e

0111

1001

1111

x001

xххх

xххх

хххх

хххх

хххх

УП по С4=1

1000

1010

0001

x000

x110

x100

хххх

хххх

1110

Q ^ 1110

1001

хххх

0010

x000

x110

x011

хххх

хххх

0001

Q v 0001

1010

xxxx

0010

1100

0011

x011

xxxx

0010

xxxx

 сдвиг

1011

xxxx

0010

x011

x011

0001

xxxx

0011

xxxx

 CT-1 —>CT

1100

0100

0000

x001

xxxx

xxxx

xxxx

xxxx

xxxx

УП по Z=0

1101

1110

0001

x001

x010

x011

xxxx

xxxx

xxxx

 Q -> Y

1110

1110

0001

x001

x011

x011

xxxx

0010

xxxx

R2 -> Y