|
你所講的arm code應該是指arm的組語(組合語言)
, C! a6 J: }- V, a6 I" N不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...
! [8 }' }# C$ i3 F; b! k5 ~" z. M4 C$ e
我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式
# w) U4 p, `. i
0 E+ ]4 H! g3 }: z/ d* F7 {8 q在同一project部份c 部份組語的作法是為了performance/code size考量
+ v5 X2 }2 p0 J- R& G; a4 n. U2 C" x" c: @2 T
你所講的ACD應該是指ADS0 c: {' r c A" P# n/ ]3 K2 ~
! }$ C1 k. ]& Q2 |( @
作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字
- X$ q& m) X4 K0 d$ {. t! q2 g$ I6 L9 P! H$ w
ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異& C2 }4 ]3 g j) Q7 l
5 Y& @1 H2 @% q
你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|