原创 真晕,发现AVR Instruction Set上的所有字操作指令的Summary与详细格式不一致

2007-8-27 13:51 3773 11 11 分类: MCU/ 嵌入式
    前两天用WinAVR写汇编代码的精确延迟程序, 看着AVR Instruction Set(版本号:Rev.0856E-AVR-11/05,目前仍为Atmel官方网站最新下载版本,updated:11/05)的格式写了如下一条指令:
adiw r25:r24,1

编译出错,仔细看了手册发现,在Instruction Set Summary上的指令格式为:

adiw Rd,K

而在adiw指令详细介绍上的格式却为:

adiw Rd+1:Rd,K

而WinAVR(avr-as)支持前一种格式。

 

    本来我修改了,在WinAVR正常运行也没什么了,但今天在将一段代码从AVRStudio上转换为WinAVR代码时,发现AVRStudio竟然是使用后一种格式的。本来汇编指令应该是一种标准的格式,这下搞得各自为政了。

 

    我也仔细看了一下,在这个版本的指令手册上,所有的字操作指令都存在这一问题,再如movw指令,在Summary上的是:

movw Rd,Rr

但在详细介绍中却是:

movw Rd+1:Rd, Rr+1,Rr

 

在编译器中,同样是avr-as支持前一种,AVRStudio支持的是后一种。

文章评论0条评论)

登录后参与讨论
我要评论
0
11
关闭 站长推荐上一条 /2 下一条