[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Не вижу никакого смысла в mov RXsave,rx/mov rx,RXsave.
Во-первых, при вложенных подпрограммах saveR'ов не напасешься. А "неизвестен банк", несмотря на USING 0 - это просто кривая реакция ассемблера на недопустимую мнемонику - дело в том, что в х51 нет команд push/pop reg, есть лишь push/pop direct, поэтому даже push a должно отражаться, т.к. нет direct с именем "a", должно быть написано push acc.
Поэтому, если точно известен текущий банк, нужно просто явно указывать direct-адрес регистра - push 0, push 5, pop 30 и т.п. Кстати, только mov direct,a/mov a,direct выполняются за один цикл, а и push direct/pop direct, и mov direct,r/mov r,direct - за два цикла, поэтому экономии времени тоже не получится.
E-mail: info@telesys.ru