ARM启动代码中的断言伪指令ASSERT
ASSERT :DEF:ENDIAN_CHANGE
ASSERT :DEF:ENDIAN_CHANGE
[ ENDIAN_CHANGE
ASSERT :DEF:ENTRY_BUS_WIDTH
[ ENTRY_BUS_WIDTH=32
b ChangeBigEndian ;DCD 0xea000007
]
[ ENTRY_BUS_WIDTH=16
andeq r14,r7,r0,lsl #20 ;DCD 0x0007ea00
]
[ ENTRY_BUS_WIDTH=8
streq r0,[r0,-r10,ror #1] ;DCD 0x070000ea
]
|
b ResetHandler
]
1、ASSERT :DEF:ENDIAN_CHANGE
ASSERT 是断言伪指令,语法是:ASSERT +逻辑表达式
def 是逻辑伪操作符,格式为: :DEF:label,作用是:判断label是否定义过 //*****************补充,如果label未定义,编译器在编译的时候会报错 。
2、四句蓝色的指令能且只能执行一句,并且前三句若执行跳转后处理程序的最后一句也是
b ResetHandler
3、" [ " 相当于 if
" | "相当于else
" ] " 相当于endif
【ARM启动代码中的断言伪指令ASSERT】
推荐阅读
- NVIDIA 400亿美元重金收购ARM,ARM大部分产品不受美国出口管制约束
- 富士康竞标马来西亚Silterra 8英寸晶圆厂,“3+3”布局正式启动!
- STM32f103 双串口配置和中断
- 单片机I/O口管脚内部结构
- ARM的体系结构与编程系列博客——ARM处理器系列介绍
- GPRS和ARM相配合的软件无线升级系统设计
- 特种机器人研发商中科超远完成A轮融资,预计明年5月启动B轮融资
- s3c2440的arm-linux交叉编译工具
- HC-SR04超声波测距仪 基础代码
- LG 27 4K IPS显示器仅$249并带有促销代码