|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
blx symbol 不跳轉(zhuǎn)到symbol處是何故? |
| 作者:hermitpeng 欄目:ARM技術(shù) |
在ADS環(huán)境下,Project就包含一個C文件: #include "stdio.h" int main(void) { int a,b,c ; a = 10; b = 110; c = a + b; printf ("ABCDEFGHIJKLMN\n"); c = a+ b; c = a + b; return c; } 編譯和鏈接都沒有問題,運(yùn)行也沒問題。但是利用AXD調(diào)試時,如果看反匯編的代碼, main [0xe92d4070] stmfd r13!,{r4-r6,r14} 000000cc [0xe3a0500a] mov r5,#0xa 000000d0 [0xe3a0606e] mov r6,#0x6e 000000d4 [0xe0854006] add r4,r5,r6 000000d8 [0xe28f0010] add r0,pc,#0x10 ; #0xf0 000000dc [0xfa000008] blx _printf 000000e0 [0xe0854006] add r4,r5,r6 000000e4 [0xe0854006] add r4,r5,r6 。。。。。。。。。 _printf [0xb40f] PUSH {r0-r3} 00000106 [0xb500] PUSH {r14} 00000108 [0xb08f] sub r13,#0x3c 0000010a [0xa811] add r0,r13,#0x44 0000010c [0x0880] lsr r0,r0,#2 單步跟蹤,發(fā)現(xiàn)blx _printf根本不會跳轉(zhuǎn)到_printf符號處,而是直接執(zhí)行下面的add r4,r5,r6指令,這是怎么回事? 請大家指點!謝謝! |
| 2樓: | >>參與討論 |
| 作者: hermitpeng 于 2006/5/29 8:42:00 發(fā)布:
大家碰到過此類問題嗎? |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |