ARM 汇编中的 "B ." 语句意义.


今天在玩 STM32F3 Discovery 的时候, 烧写程序后, 

FreeRTOS 运行一会就会跳转到 startup_stm32f30x.s 内的系统服务调用处理这段程序的"B  ."处, 如下.

SVC_Handler     PROC
                EXPORT  SVC_Handler                [WEAK]
                B       .
                ENDP


查阅了一下 keil-MDK 的帮助文档, 在 Built-in variables and constants 节找到了解释, 也就是跳转到当前行呀. 

2333333. 如下图:


好吧. 顺便解释一下 [WEAK] 的意义吧. 先看官方解释 :)

先上一句别处的零散话: 

WEAK
symbol is only imported into other sources if no other source exports an alternative symbol. 
If [WEAK] is used without symbol, all exported symbols are weak.


意思就是告诉 链接器

"我略弱但我很绅士, 如果你在别处看到和我一样的符号实例.你就用它吧. 表管我, 求忽视! " 

写完发现我是标题党. 2333333333



 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章