精華區beta Tech_Job 關於我們 聯絡資訊
每種CPU的運作方式不一樣 CPU也有分高低階 CPU大致又有分MCU跟DSP跟general 系統架構雖大同小異用起來就是不同 舉凡我們寫C希望模組化有物件概念等一堆觀念 但是到低階CPU就不同了 你把所有的功能全模組化可能影響到速度 因為各個cpu call function大致都要多花一些cycle 當你把一個簡單的程式硬寫成物件可能變得很麻煩 又如同data/program memory可能很小 很多變數得共用 程式追求的是體積小效率高 而非物件導向模組化 常call的小程式模組化會拖速度 但是可以省memory 不常call的大程式就一定要模組化 絕對可以省memory 但是又到了高階CPU(如tri-media) 由於高階了大多data/program memory比較充裕 又加上cpu本身有pipeline multi-function的功能 也不太可能從組語開始架構整個系統 多半靠CPU本身附的tool去作最佳化 做完最佳化後 找出performance的bottleneck直接用組語改 總之殺雞千萬不要拿牛刀 殺老虎時千萬不要握小刀 其他skill用嘴巴說了也沒用 還是得自己做一次才有可能體會得到 ※ 引述《Seals (海豹特遣隊)》之銘言: : 原文恕刪 : 這方面可能有些困難,因為要學好單晶片除了需要有良好的程式編寫能力, : 但事更加需要對於計算機硬體方面的特殊長才, : 因為單晶片的RAM很小,你可能會為了幾個位元與程式碼苦苦搏鬥。 : 我無意冒犯,但是資管系應該在高階語言上甚為重視模組化導向才是 : 模組化導向對於單晶片來說是一種浪費...會影響執行速度的 : 我也不是來撥冷水的,如果你真的有心往這方面發展, : 我建議最少去買一本滿滿是嵌入式系統程式碼的書,基本來說建議是選用組語的。 : 越低階的寫法能獲得最好的執行效率,但是仍看工程施功力而言。 : 如果沒時間鑽研組合語言,那就直接買C語言的程式範例本 : 然後要逐行逐行的研究,如果以前的教授有經驗那更好,回去找她們吧。 : 寫嵌入程式以效率為最大目標,所以以前冠冕堂皇的程式寫作方式可能會受到挑戰。 : 其實我建議去學FPGA就好了...學8051有很好啦 : 最後祝你心想事成,你的成功將會是我的快樂。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.69.97.52
Seals:推吧~我死大學生收下經驗值啦 218.169.49.88 08/24
deathblue:推~140.135.100.187 08/27