为什么push R0在keil会出错

如题所述

PUSH R1和POP R1都是错误的,虽然没有提示PUSH R1错误,当你把POP R1 改对了,就会提示PUSH R1 也是错误的。
PUSH 和POP指令的操作数要求是直接地址,R1是寄存器是不行的。要写成R1的字节地址,
如PUSH 01H ,POP 01H
其实,不必保护R1的,两个程序不要同时都使用R1就行了。延时子程序里,使用R5,R6,R7。
写汇编程序时,R1不要用作计数器,更不要用在延时子程序中,因为,要用@R1来间接寻址的。要有这样的良好习惯。
温馨提示:答案为网友推荐,仅供参考
相似回答