Re: [問題]有關ds pic的組合語言
※ 引述《ilike1128 (小白)》之銘言:
: 最近玩dspic看到裡面的主體架構是C語言
: 那裡面看到有一章說可以C語言跟組合語言可以混搭寫在一起
: 不曉得有沒有人可以找到類似的範例程式可以讓我看看
: 例如說我本來撰寫主程式的時候是C語言,不過遇到問題
: 去網路上找程式碼結果發現只有組合語言,那我要怎麼樣把它
: 弄出來呼叫 問題大概就是這樣子
如果看到 ASM source program 模組想拿來呼叫, 通常有兩種方
式(跟是否是組語是無關的).
一種是類似 插入 macro 再展開的用法, 把那個原始碼抄來,
塞進要寫的程式段, 但因為是組語, 其前後得有宣告提示
Compiler 這是一段組語指令. 通常 compiler 的後半動作就是
翻成組語, 因此這段塞入的組語語法規定必須與高階語言編譯
器要產生的組語用法相一致. 整個程式用到的變數也是相關聯
的.
另一種用法是把那段組語變成 function / procedure 的形式,
確認其傳入與結果帶回會用到的參數與型態, 將組語模組改成
external module 分開編譯, 做成獨立的 library 與 include
檔供高階語言呼叫使用. 此時, 那個 assembler 工具, 組語語
法, 模組內 local 變數等可以是與 調用模組是完全獨立無關
的, 這樣建好後也可以再利用.
高階語言程式裡, 使用 macro expansion 概念的 in line ASM
碼段, 通常有其特殊原因, 是一種綑綁的策略, 但也可能是求
快.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.1.146
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 4 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章
0
18