|
你所講的arm code應該是指arm的組語(組合語言); `" W9 U! ^! A3 d6 s: L* l$ l
不論是c或c++都能編譯成arm的code... @o@ c, c++也能編成i386的code...
( g2 W, j( W# `5 \7 j C q' z8 N7 u# O% R1 L
我想你想說的是"有對應給arm用的c/c++ compiler工具可以使用" 可以讓你在異質的環境下(e.g. i386)去編譯出arm processor能跑的執行檔, 這叫cross compile, 這部份是大多數嵌入式發展會採用的模式
/ p' G" a1 |6 s7 r: p0 z C B8 A: u- S/ e7 y3 M1 {) V
在同一project部份c 部份組語的作法是為了performance/code size考量
3 g( K+ k" V/ s9 G$ X3 V- x7 q) q, R
你所講的ACD應該是指ADS2 M8 |( Z! R/ V& m! o
2 m# R. u2 x$ u# i/ }作性能分析的工具叫profiler, 一般軟體用的性能分析工具都是叫這名字
# Z' _1 z0 x5 U% M9 D+ w9 p; H( B6 N) M# `2 n1 Q
ARM原廠的tool不便宜, 也許你會想用GNU toolchain, 但兩者的語法及記憶體配置檔寫法有所差異6 Y! F% [, y3 u6 ~( I
! L/ E) f' W: U9 j$ ~" l& @8 |* G {" \你的問題可能要去翻翻看windows中的__fastcall是怎樣定義的, (去翻標頭檔), 這些type都是用最基本的int去定出來的"給人看的", 翻到最底層, 就會通過去了 |
|