登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

各位大侠帮我看看这段非常简单的程序——

作者:Wxy8030 栏目:单片机
各位大侠帮我看看这段非常简单的程序——
.include "8515def.inc"

.macro    ff
    @0    r0,0
.endmacro

.org    $0000
rjmp    RESET
.ORG    $0010
RESET:    
         clt
    ff    bld

LOOP:    nop
    RJMP    LOOP

.exit


结果发现编译通过,并且ff bld这条语句也会翻译成F800(BLD R0,0)
但是RJMP LOOP却不是跳到LOOP:NOP这条语句上,而是其上面一条语句(ff bld)

怎么解决??

2楼: >>参与讨论
51avr
学C语言吧,汇编我不懂
 
3楼: >>参与讨论
刘友辉
要先设置堆暂的,
 
4楼: >>参与讨论
tuwen
回复 Wxy8030
这好象是ATMEL的AVR汇编系统的一个BUG,不用MACRO,就不会发生这种情况。

这不关堆栈什么事。

5楼: >>参与讨论
Wxy8030
我也觉得是个bug,但怎么解决那呢?
难道非要把那宏去掉?

6楼: >>参与讨论
Wxy8030
4.10的版本可以了-----
编译好象没问题了,不过在调试的时候还是有BUG,程序指示的当前执行指令实际并非当前执行的指令!

晕啊,,,

* - 本贴最后修改时间:2004-9-22 8:55:21 修改者:Wxy8030

参与讨论
昵称:
讨论内容:
 
 
相关帖子
想用atmega128单片机做开发需要些什么工具
不错的单片机接口芯片资料介绍网站:万芯单片机
avr单片机关于延时问题一问
请问ICCAVR里的汇编模块上怎么用诸如SPMCSR的寄存器?
把单片机一个脚的数据移位近来,用C怎么写?
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号