|
你所講的arm code應該是指arm的組語(組合語言)
; ? d' K' w: V不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...% h4 ^2 `$ }* F
3 k) A) e# i$ F! H" m8 r- ^我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式; `/ V' G2 |" S1 b
! c, k1 M0 ?( F+ A7 G- I8 y/ y
在同一project部份c 部份組語的作法是為了performance/code size考量
3 _9 H% x9 V# |; n* t
$ ?+ [* p2 e3 Y5 h你所講的ACD應該是指ADS
! y! ?$ O2 k# M" j8 _- @7 A: T( N
作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字
& P- U# q9 X/ W% R- Q1 g, `- k2 c
) @& d l2 {7 r) B+ K7 o$ |ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異
7 L- c% k: E# \, d3 x* w5 L; @- ^8 a9 `* |
你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|