|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
c編程問題請教 |
| 作者:doherty 欄目:單片機 |
初學(xué)c編程,寫了下面的簡單程序編譯 #include <pic.h> unsigned CHAR a=5; main() { } 編譯通過后結(jié)果如下: MEMORY Usage Map: Program ROM $0000 - $0033 $0034 ( 52) words Program ROM $07FC - $07FF $0004 ( 4) words $0038 ( 56) words total Program ROM Bank 0 RAM $0020 - $0022 $0003 ( 3) bytes Bank 0 RAM $0070 - $0070 $0001 ( 1) bytes $0004 ( 4) bytes total Bank 0 RAM Program statistics: Total ROM used 56 words (0.7%) Total RAM used 4 bytes (1.1%) 于是打開program MEMORY查看,仔細對照那些代碼,卻沒怎么看出個名堂,想想要用匯編實現(xiàn)以上的功能,也只是需要幾行就可以搞定了,而用c生成的代碼卻如此的麻煩 請教大家,你們用c寫的程序編譯后也是這個樣子嗎?為什么c會產(chǎn)生這樣多的代碼,有沒有什么可以優(yōu)化的方法? 懇請指教~~~ |
| 2樓: | >>參與討論 |
| 作者: shaoguang 于 2003/7/5 20:25:00 發(fā)布:
picc 默認的是外部優(yōu)化 其實是否選匯編還是C,由項目來決定,如有多路模擬量測量,用到復(fù)雜的計算,開發(fā)周期又短,C是最好的選擇,如只是用到開關(guān)量的邏輯運算,匯編挺好, 假如你是新手,以練兵為目的,先用匯編,后精通C。 一家之言,不當(dāng)見諒! |
|
| 3樓: | >>參與討論 |
| 作者: 張明峰 于 2003/7/5 21:44:00 發(fā)布:
C還是匯編? 頂樓的如果你只需要實現(xiàn)“a=5”的任務(wù),那當(dāng)然用匯編更好。 你說你做如此的比較是否有點無聊?C由C的規(guī)矩,順著點吧。 |
|
| 4樓: | >>參與討論 |
| 作者: doherty 于 2003/7/6 8:54:00 發(fā)布:
謝謝你們的建議 我是個新手,這樣做的目的只是想理解一下c生成代碼的過程和效率 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |