0x080001D6 F44F6000 MOV r0,#0x800
0x080001DA 4908 LDR r1,[pc,#32] ; @0x080001FC
0x080001DC 6008 STR r0,[r1,#0x00]
17: delay_ms(300);
0x080001DE F44F7096 MOV r0,#0x12C
0x080001E2 F000F964 BL.W delay_ms (0x080004AE)
在CM3手冊上寫著“PC始終等于當前指令地址+4,無論是16位還是32位指令”,那么pc=0x080001DA+4=0x080001DE,然后執行 LDR r1,[pc,#32] ,將PC+0X20 ,也就是0x080001FE保存到R1中,為什么是0x080001FC呢?我想了一天,沒想明白,希望大家幫忙解答
uj5u.com熱心網友回復:
一晚上過去了咳咳咳咳咳咳uj5u.com熱心網友回復:
pc=0x080001DA+4,紅色的那個地址應該是錯誤的,不是4的倍數轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/72550.html
標籤:單片機/工控
上一篇:PHP安裝配置(Windows和Linux)-一篇就夠了
下一篇:35歲就是技術人的天花板嗎?
