AVR单片机怎么用C语言将通用寄存器的值赋给外部变量
3个回答
展开全部
这个涉及到 C语言中的嵌入式汇编代码相关:
asm(
“汇编语句”
:输出寄存器
:输入寄存器
:会被修改的寄存器
);
范例:
// 取fs 段寄存器的值(选择符)。
34 #define _fs() ({ \
35 register unsigned short __res; \
36 __asm__("mov %%fs,%%ax":"=a" (__res):); \
37 __res;})
注:关于嵌入汇编详细格式参考GNU gcc手册中[5]第4章的内容(Extensions to the C Language Family)或见参考文献[20](Using Inline Assembly with gcc), 范例摘自 LInux0.12完全释注;
asm(
“汇编语句”
:输出寄存器
:输入寄存器
:会被修改的寄存器
);
范例:
// 取fs 段寄存器的值(选择符)。
34 #define _fs() ({ \
35 register unsigned short __res; \
36 __asm__("mov %%fs,%%ax":"=a" (__res):); \
37 __res;})
注:关于嵌入汇编详细格式参考GNU gcc手册中[5]第4章的内容(Extensions to the C Language Family)或见参考文献[20](Using Inline Assembly with gcc), 范例摘自 LInux0.12完全释注;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询