AVR起步教程:从51到AVR编程篇
时间:10-07
来源:互联网
点击:
//tmp1 = 0x0B 0000 1011
"mov %2,%1""nt" //tmp2 = 0x0B
"andi %2,0x03""nt" //tmp2 = 0x03 0000 0011
"lsl %1""nt"
"lsl %1""nt" //tmp1 = 0x02 0000 0010
"eor %1,%2""nt" //tmp1 = 0x01 0000 0001
"mov %2,%1""nt" //tmp2 = 0x01
"andi %2,0x01 ""nt" //tmp2 = 0x01 0000 0001
"lsl %1""nt" //tmp1 = 0x00 0000 0000
"eor %1,%2 ""nt" //tmp1 = 0x00 0000 0001
"andi %1,0x0f""nt" //tmp1 = 0x01
: "=d" (Data),"=d" (tmp1),"=d" (tmp2)
: "0" (Data),"1" (tmp1),"2" (tmp2)
);
return tmp1;
}
这个方法中,我们加上return共花了15条指令,比方法2来讲,又省了7条指令。
- 基于单片机通用引脚的软件UART设计(10-16)
- 嵌入式实时操作系统μC/OS-II 在P89V51RD2中的移植(04-09)
- 关于RTX51 TINY的分析与探讨(05-30)
- 双CPU在多I/O口系统中的应用(07-05)
- 一种嵌入式时钟管理器的设计与实现(08-01)
- 基于RTOS的嵌入式系统在Nexar中的实现(01-20)