Составители:
21
вправо. Предполагается следующее распределение внутренних регист-
ров микроЭВМ К1816: множитель находится в ячейке памяти внутрен-
него ОЗУ, адресуемой через регист р R1; адрес счетчика циклов распо-
лагается в регистре R2 и, наконец, 16-разрядное произведение разме-
щается в ячейках памяти внутреннего ОЗУ, адресуемых регистрами R0
и R3.
докоменМииратнеммоК
0#,3R@VOM:TLUM яинедевзиорпатйабогешратсеинелунбО
9#,2RVOM акичтечсаквонатсУ
0R@,AVOM:1M ротялумуккавялетижонмакзургаЗ
CRR
СекжалфовялетижонмтибйондеречО
A,0R@VOM ялетижонмеинещарвзоВ
3M,2RZJD
онечноказенеинежонмуилсе,алкицяицазинагрО
3R@,AVOM
еротялумуккавяинедевзиорптйабйишратС
2MCNJ
0неварялетижонмтиБ
1R@,ADDA
огомижонмеинавориммуС
CRR:2M
ыммусйончитсачгивдС
A,3R@VOM
яинедевзиорпатйабогешратсеинещарвзоВ
1MPMJ
тибйищюуделсанеинежонмУ
TER:3M
яинежонмуыммаргорпдопзидохыВ
В нача ле программы производится обнуление ячейки памяти внут-
реннего ОЗУ с адресом в регистре R3, в которой будут образованы стар-
шие 8 бит произведения. Затем осуществляется установка счетчика числа
циклов суммирования частичных сумм. После этого множитель переда-
ется в аккумулятор и командой RRC очередной бит множителя переда-
ется во флажок С.
Если бит равен единице, то командой ADD осуществляется сложе-
ние множимого со старшим байтом произведения, а если бит равен нулю,
сложение не производится.
В данной программе младшие биты произведения замещают освобо-
дившиеся биты множителя. При этом длина программы составляет 13
байт.
2.3. Умножение однобайтовых чисел со знаком в прямом коде
В данной программе MULTS используется следующее распределе-
ние ячеек памяти резидентного ОЗУ микроЭВМ серии К1816: множи-
Страницы
- « первая
- ‹ предыдущая
- …
- 19
- 20
- 21
- 22
- 23
- …
- следующая ›
- последняя »