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

LDR和LDRB的使用问题

作者:gyf2000 栏目:ARM技术
LDR和LDRB的使用问题
; 文件名:TEST2.S
; 功能:使用LDR、STR指令对变量NumCount进行加1操作
; 说明:使用ARMulate软件仿真调试
NumCount    EQU        0x80003000            ; 定义变量NumCount
            AREA    Example2,CODE,READONLY    
            ENTRY                             
MAIN        LDR        R0,=NumCount        ; 使用LDR伪指令装载NumCount的地址到R0
            LDR        R1,[R0]                ; 取出变量值
            ADD        R1,R1,#1            ; NumCount=NumCount+1
            STR        R1,[R0]                ; 保存变量值
HALT        B        HALT            
            END
编译调试没问题,但
当我将LDR和STR改为LDRB和STRB指令后,DEBUG时报如下错误
Error   : A1255E: Operand to LDRB does not fit in 8 bits
Test2.s LINE 7   

    7 00000000 MAIN  LDRB  R0,=NumCount  ; 使用LDR伪指令装载NumCount的地址到R0

1 Error, 0 Warnings

请版主告知到底是怎么回事?是不是要改NumCount呀?如何改啊?

2楼: >>参与讨论
七夜
ldrb是8bit NumCount是32bit
参与讨论
昵称:
讨论内容:
 
 
相关帖子
EASYARM2200+建议
在2210上移植UC/OS中,有关邮箱和消息队列使用中的问题!
关于中断使能寄存器VICIntEnable和向量控制寄存器VICVectCntI
如何打开UC/OS II的自动任务切换功能?
在bc++45集成环境里如何设置并建立调试ucos工程
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


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