AVR内联汇编:输出变量无需更改指令即可更改

时间:2016-04-25 11:05:22

标签: c++ avr inline-assembly avr-gcc

我正在尝试在ATmega328P的内联汇编中编写一些代码 我发现我的输出变量没有按照我预期的方式改变。所以我将原始代码缩减为:

uint8_t a=0;
__asm__ (
        "nop " "\n\t"
        :"=&r" (a)
        : 
        );

我希望 a 的值保持不变,但根据我的程序中的位置,我将此代码值 a 有时会更改为其他内容。 我不明白为什么会这样。如果有人会向我解释我错过了什么,那将会很高兴。

0 个答案:

没有答案