久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 單片機編程和平時c語言編程的區(qū)別 [打印本頁]

作者: csw57859406    時間: 2019-1-20 09:41
標題: 單片機編程和平時c語言編程的區(qū)別
我這個問題主要是想問,單片機與電腦在對c語言代碼處理上有什么不同,不同在哪里,為什么用理解c語言編程的思路卻寫不好單片機編程等問題,希望有dalao能給我些解釋,在下是個菜鳥萌新,實在感謝如果有dalao可以給我解答


作者: yzwzfyz    時間: 2019-1-20 10:41
計算機只能識別機器碼,即0101,根據這些有序排列的機器碼的含義(即硬件指令=這些機器碼),來運行程序。任何語言的程序最終都必須轉成機器碼,否則計算機不認識。
但0101的機器碼太不方便記意了。于是就用方便記意的語句代替它,這就產生了兩個問題:
1、用什么語句替代機器碼?
2、誰把它再譯回到機器碼?
計算機是外國人發(fā)明的,自然用了英文的語句,不過又帶來了一個新的問題:
一個語句替代多少條機器碼指令?這是回答你問題的關鍵了:
匯編語言:一個語句替代一條機器碼指令,因此它最接近機器碼,最靈活,也最難掌握。
C語言:一個語句替代一條或多機器碼指令,因此它效率高,但不靈活。
至于“誰把它再譯回到機器碼?”,編程平臺幫你完成了,最常用的“翻譯”是KELL。
作者: yzwzfyz    時間: 2019-1-20 10:58
本帖最后由 yzwzfyz 于 2019-1-22 14:38 編輯

明白上述的道理后,就會明白:
C是由若干條匯編語句組成的。但這些,用C的人看不出來,因為C不關心匯編,就沒有必要展示給你看,不過想看也看得到,每次對C程序編譯時,也會生成匯編代碼。
由于C建立在匯編的基礎上,所以它的規(guī)矩多且嚴格,稍不小心,平臺就不認識,C語言強力地依賴庫函數(shù)(各種子程序),但通俗易懂易掌握。
匯編則只依據CPU的指令系統(tǒng)寫程序,天馬行空,任君游。但要求程序員有很強的邏輯、數(shù)學水平。
例如:開方。對C語言是一句話的事,而匯編,如你沒有很好的數(shù)學基礎,是根本無法想像得出來的。不過最終的機器碼目標還是一致的。雖然C是一語話的事,也是由匯編寫而來的,只不過不需要你寫,而是前輩們用匯編寫好了,做成了C函數(shù)庫,你直接引用就可以了。
記住:計算機、單片機只認識機器碼!

作者: devcang    時間: 2019-1-20 11:50

keil安裝后,在C51\hlp中有c51.chm 幫助文件,可以看語法等知識
作者: bucker    時間: 2019-1-20 13:18
單片機也可以用C語言,和PC機C語言相比,算法是一樣的,只是單片機編程要熟悉一些單片機的端口,內部外設資源的配置等,這方面宏定義及指針變量用得較多。
作者: 刀刀見紅    時間: 2019-1-20 23:47
本帖最后由 刀刀見紅 于 2019-1-21 04:21 編輯

區(qū)別?區(qū)別就如同當初你上學,吃穿都是你父母給你提供,你只上學就行,現(xiàn)在你成家了,吃穿要自己解決,要工作,也許邊工作邊學習!同理,當初在PC上玩C,鍵盤是怎樣輸入,顯示器是怎樣顯示不用你操心,現(xiàn)在獨立了,那輸入輸出依然還是存在的,那就得你自己來認識他,操作他!所以說懂了C只是萬里長征才走出了第一步,后面路還長,還要勤學苦練!
作者: Angle145    時間: 2019-1-21 03:43
PC上的C和單片機的C是差不多的,只有設計硬件的函數(shù)才可能用不了,比如scanf,printf等,但是在MDK里printf是可以重定向實現(xiàn)調用,而string.h里的大部分函數(shù)都是可以直接用,因為都是一些字符處理函數(shù),純軟件,不涉及硬件,說到這應該有個了解了吧,涉及單片機硬件的就和pc上不同,不涉及就一樣通用。
作者: angmall    時間: 2019-1-21 05:47
頭文件不同
集成開發(fā)環(huán)境不同。
最關鍵的是一般來說,嵌入式物理資源遠比計算機少,比如內存,緩存之類的

你會發(fā)現(xiàn)單片機編程的C語言和標準C會有差別,很多單片機C語言在標準C里是不被承認的,這個也能說明單片機和電腦的區(qū)別吧。

作者: 遠征之路    時間: 2019-1-21 09:58
物理層的硬件結構大不相同,但是單片機C語言與計算機的C語言算法大致一致。
作者: 街角の風鈴    時間: 2019-1-21 11:28
其實主要的語法是一樣的,只不過C語言只是一個實現(xiàn)結果的過程,是一種工具,單片機的實現(xiàn)不光要會c語言的語法知識,還需要掌握單片機的硬件知識。這個是從單片機的思路來編程
作者: 累不死的狗    時間: 2019-1-21 12:04
自認為沒啥區(qū)別,高級芯片,編程的語言該用上的也都用上了
作者: jinsheng7533967    時間: 2019-1-21 13:17
后面的大家說的越說越靠譜,前面的有一種文不對題的感覺!樓主現(xiàn)在是碰到了C與單片機學習方法不同的困惑,單片機多了許多的硬件的東西(并不是說PC就沒有,只是學C時不用我們理會),也多了許多的電路,許多不同屬性的新器件。理所當然的這與學C的思路就不一樣了.C學的好,并不代表就能搞定單片機,假如說不會模電數(shù)電,那就是硬傷,想要的結果整不出來。調試遇到的問題也難分出是硬件還是軟件.單片機內部還有獨有的定時器,中斷,ADC等資源,掌握不了這些就是軟傷了。所以說學單片機要掌握的東西很多,是綜合技能很強的事物!路很長,多加油!
作者: 隨風飄遠    時間: 2019-1-21 17:37
單片機編程就是更偏向硬件,C語言 編程自己定義就好了。
作者: 1137221527    時間: 2019-1-23 18:25
其實本質是一樣的,只是用電腦編程是遵守電腦的規(guī)則去編程,用單片機是用單片機的規(guī)則去編程。
作者: 僧多    時間: 2019-1-23 22:06
首先頭文件是不同的
所需實現(xiàn)的功能也不同
單片機c語言一般不會有返回值




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美成人一区二区 | 欧美a级成人淫片免费看 | 在线看av的网址 | 国产精品久久久久久久免费观看 | 欧美一区免费在线观看 | 精品久久久久久久久久久久 | 2021狠狠干| 在线看片国产精品 | 7777在线视频| 9999久久 | 一区二区在线观看免费视频 | 亚洲精品粉嫩美女一区 | 一区二区av | 欧洲精品一区 | 日韩免费视频 | 一级片在线免费看 | 东京久久| 国产精品a一区二区三区网址 | 每日更新av| 免费久久精品视频 | 国产中文原创 | 一级亚洲 | 在线91 | 日韩中文字幕在线观看 | 成人av看片 | 91久久精品国产91久久性色tv | 国产九一精品 | 91久久国产精品 | 毛片一区二区 | 国产欧美在线视频 | 欧美日韩一区二区在线观看 | 日韩欧美国产一区二区三区 | 欧美中文字幕一区二区 | 国产日韩精品在线 | 国产99小视频 | 国产福利视频在线观看 | 亚洲综合在线视频 | 日韩精品在线网站 | 亚洲色图综合 | 国产精品视屏 | 国内激情av片 |