找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
樓主: wangcaidao
打印 上一主題 下一主題
收起左側(cè)

學(xué)習(xí)單片機(jī)用匯編還是C比較好

  [復(fù)制鏈接]
1121#
ID:1138967 發(fā)表于 2024-12-14 00:09 | 只看該作者
學(xué)習(xí)單片機(jī)時(shí),選擇匯編還是C取決于你的學(xué)習(xí)目標(biāo)和需求。匯編語言能幫助你深入理解硬件操作和底層細(xì)節(jié),適合那些希望精通微控制器內(nèi)部工作原理的初學(xué)者。它對(duì)資源有限的應(yīng)用(如實(shí)時(shí)性要求高的系統(tǒng))尤其有用。然而,C語言更為高效、易學(xué),且更具可移植性,是開發(fā)實(shí)際項(xiàng)目時(shí)的主流選擇。對(duì)于大多數(shù)現(xiàn)代單片機(jī)開發(fā),C語言提供了良好的抽象,能夠提高開發(fā)效率并減少出錯(cuò)機(jī)會(huì)。總的來說,初學(xué)者可以先從C語言入手,再根據(jù)需要逐步學(xué)習(xí)匯編。
回復(fù)

使用道具 舉報(bào)

1122#
ID:1139833 發(fā)表于 2024-12-15 17:32 | 只看該作者
C語言可以極大減少學(xué)習(xí)單片機(jī)指令集的難度。即使你對(duì)具體的硬件知識(shí)不甚了解,也能編寫出高質(zhì)量的單片機(jī)程序。其次,C語言提供了豐富的數(shù)據(jù)類型和存儲(chǔ)類型選項(xiàng),可以有效利用有限的RAM空間。同時(shí),它還具有很高的程序堅(jiān)固性,能夠避免運(yùn)行中的數(shù)據(jù)破壞。此外,C語言的編譯模式能夠根據(jù)不同的存儲(chǔ)器需求進(jìn)行調(diào)整,以適應(yīng)不同的硬件環(huán)境。 在單片機(jī)開發(fā)中,C語言還提供了大量的標(biāo)準(zhǔn)庫函數(shù),可以簡化編程過程,提高開發(fā)效率。通過頭文件,可以定義宏、說明復(fù)雜數(shù)據(jù)類型和函數(shù)原型,有利于程序的移植和單片機(jī)系列產(chǎn)品的開發(fā)。同時(shí),C語言具有嚴(yán)格的語法檢查機(jī)制,能夠幫助開發(fā)者快速發(fā)現(xiàn)并修正錯(cuò)誤。
回復(fù)

使用道具 舉報(bào)

1123#
ID:1140002 發(fā)表于 2024-12-16 17:14 | 只看該作者
不考慮應(yīng)用場景,語言優(yōu)缺無任何意義。
回復(fù)

使用道具 舉報(bào)

1124#
ID:1140133 發(fā)表于 2024-12-17 16:59 | 只看該作者
在學(xué)習(xí)單片機(jī)時(shí)用C語言是比較好的,C語言和匯編語言兩者各有優(yōu)劣,如果在開發(fā)方式上來看C語言用處比較廣泛,且具有一定的普適性和靈活性,而匯編語言只應(yīng)用于一定的環(huán)境,需要考慮的參數(shù)過多,不利于開發(fā)
回復(fù)

使用道具 舉報(bào)

1125#
ID:1140183 發(fā)表于 2024-12-17 18:50 | 只看該作者
江科大的32是c的,匯編上課講的我現(xiàn)在還是不太理解
回復(fù)

使用道具 舉報(bào)

1126#
ID:221871 發(fā)表于 2024-12-18 13:02 | 只看該作者
當(dāng)然是用C編寫單片機(jī)程序好
回復(fù)

使用道具 舉報(bào)

1127#
ID:1140282 發(fā)表于 2024-12-18 13:04 | 只看該作者
對(duì)于沒有任何基礎(chǔ)的人來說,我建議直接從匯編入手去學(xué)習(xí)開發(fā)單片機(jī),因?yàn)槭〉袅薈語言的語法學(xué)習(xí)研究,更高效。 對(duì)于有C語言基礎(chǔ)的人來說,開發(fā)單片機(jī)還是選用c語言,  學(xué)了匯編,再去學(xué)C,覺得C好麻煩,太繁瑣。 學(xué)了C之后再去學(xué)匯編,我個(gè)人覺得還是匯編寫起來舒服。 可能我目前的C和匯編都學(xué)得不是很好,才有這樣的體會(huì),等我后面再回過頭來看吧,或許又是一個(gè)體會(huì)了。  時(shí)間充足,都學(xué)肯定是好的,同時(shí)一起學(xué),也不是特別費(fèi)時(shí)間,反而能更好的去理解寄存器。 時(shí)間不充足,選C吧。
回復(fù)

使用道具 舉報(bào)

1128#
ID:1140733 發(fā)表于 2024-12-21 19:48 | 只看該作者
如果你的目標(biāo)是深入理解單片機(jī)的底層工作原理以及掌握硬件控制,學(xué)習(xí)匯編語言是有幫助的;但如果你希望快速開發(fā)應(yīng)用,提升編程效率,那么C語言是更好的選擇。
回復(fù)

使用道具 舉報(bào)

1129#
ID:1130054 發(fā)表于 2024-12-23 18:05 來自手機(jī) | 只看該作者
各有優(yōu)勢。
回復(fù)

使用道具 舉報(bào)

1130#
ID:613800 發(fā)表于 2024-12-26 15:51 | 只看該作者
如果從事嵌入式之類行業(yè)有限c語言,匯編了解了解就行,如果是從事比較便宜空間很小的芯片開發(fā)最好學(xué)會(huì)匯編能編譯更小的代碼通?梢允〔簧俪杀,c也需要會(huì)一些;總結(jié)就是搞單片機(jī)c和匯編都要學(xué),如果非要一個(gè)優(yōu)先級(jí)c優(yōu)先
回復(fù)

使用道具 舉報(bào)

1131#
ID:1120828 發(fā)表于 2024-12-26 17:55 | 只看該作者
c語言邏輯性強(qiáng)好學(xué)
回復(fù)

使用道具 舉報(bào)

1132#
ID:1132182 發(fā)表于 2025-1-4 09:51 | 只看該作者
angmall 發(fā)表于 2018-11-14 06:25
我也是喜歡用匯編。但是也要會(huì)C語言,最起碼要能讀的懂。
匯編語言的優(yōu)勢在于程序簡潔,占用內(nèi)存少,效率 ...

給你來個(gè)幾千行的c語言的代碼就老實(shí)了
回復(fù)

使用道具 舉報(bào)

1133#
ID:949647 發(fā)表于 2025-1-4 16:45 | 只看該作者
個(gè)人認(rèn)為對(duì)于初學(xué)者,可以先學(xué)習(xí)C語言入門,但是匯編的學(xué)習(xí)仍然是必不可少的
回復(fù)

使用道具 舉報(bào)

1134#
ID:1142487 發(fā)表于 2025-1-5 19:57 | 只看該作者
匯編和c其實(shí)不存在誰好誰壞的區(qū)別,不過新手上路建議先學(xué)C,然后逐漸熟悉之后建議還是得學(xué)習(xí)匯編,只有學(xué)習(xí)了匯編才真正懂得底層的東西
回復(fù)

使用道具 舉報(bào)

1135#
ID:146782 發(fā)表于 2025-1-5 21:06 | 只看該作者
C容易入門
回復(fù)

使用道具 舉報(bào)

1136#
ID:1141914 發(fā)表于 2025-1-6 01:54 | 只看該作者
一定要選的話,學(xué)C呀,適用性很廣,會(huì)C的話不止對(duì)單片機(jī)有用,很多其他的地方也可以用到。
回復(fù)

使用道具 舉報(bào)

1137#
ID:283954 發(fā)表于 2025-1-31 14:49 | 只看該作者
這個(gè)問題討論了好久了,最新的一個(gè)事實(shí)是:AI模型為了取得最快最好的結(jié)果,繞過的CUDA語言,直接用內(nèi)層的語言,相當(dāng)于不用C語言,直接用匯編了,所以C語言和匯編都要學(xué),在極端情況下,用匯編才能取得突破。

附錄:
△ DeepSeek-V3 Technical Report

這種操作是用英偉達(dá)的PTX(Parallel Thread Execution)語言實(shí)現(xiàn)的,而不是CUDA。

PTX在接近匯編語言的層級(jí)運(yùn)行,允許進(jìn)行細(xì)粒度的優(yōu)化,如寄存器分配和Thread/Warp級(jí)別的調(diào)整。

這種編程非常復(fù)雜且難以維護(hù),所以行業(yè)通用的做法是使用CUDA這樣的高級(jí)編程語言。

換句話說,他們把優(yōu)化做到了極致。

REF: 雷陣雨​​CUDA(Compute Unified Device Architecture)是NVIDIA開發(fā)的并行計(jì)算平臺(tái)和編程模型,允許開發(fā)者使用NVIDIA GPU進(jìn)行通用計(jì)算。它擴(kuò)展了C/C++等編程語言,使開發(fā)者能夠利用GPU的強(qiáng)大計(jì)算能力加速應(yīng)用程序。
回復(fù)

使用道具 舉報(bào)

1138#
ID:1143252 發(fā)表于 2025-2-3 17:23 | 只看該作者
學(xué)習(xí)單片機(jī)編程時(shí),選擇匯編語言還是C語言,應(yīng)綜合考慮您的學(xué)習(xí)目標(biāo)、項(xiàng)目需求和個(gè)人偏好。匯編語言因其高效性和對(duì)硬件的精細(xì)控制而適用于特定的實(shí)時(shí)性要求場合,同時(shí),學(xué)習(xí)匯編有助于深入理解計(jì)算機(jī)工作原理,但其復(fù)雜性和可讀性差使得學(xué)習(xí)和代碼維護(hù)較為困難。相比之下,C語言更易學(xué),且在保持較高運(yùn)行效率的同時(shí),提供了良好的開發(fā)效率和可移植性,適合大多數(shù)單片機(jī)編程場景。因此,對(duì)于初學(xué)者而言,從C語言開始是更為合適的選擇;而對(duì)于追求極致效率和精細(xì)控制的開發(fā)者,匯編語言的學(xué)習(xí)則不可或缺。在實(shí)際工作中,許多專業(yè)開發(fā)者會(huì)根據(jù)具體情況,將匯編和C語言結(jié)合使用,以實(shí)現(xiàn)效率與開發(fā)速度的最佳平衡。
回復(fù)

使用道具 舉報(bào)

1139#
ID:1143585 發(fā)表于 2025-2-7 11:53 | 只看該作者
匯編語言是我們學(xué)51單片機(jī)時(shí)候?qū)W的,但是做項(xiàng)目都是用c語言
回復(fù)

使用道具 舉報(bào)

1140#
ID:1143717 發(fā)表于 2025-2-11 09:00 | 只看該作者
匯編靠近底層但是語法、語義不好理解。就目前而言項(xiàng)目中匯編之出現(xiàn)在啟動(dòng)代碼中或者少部分和c混用。個(gè)人建議從C開始
回復(fù)

使用道具 舉報(bào)

1141#
ID:554603 發(fā)表于 2025-2-11 15:44 | 只看該作者
當(dāng)然是C了,做大項(xiàng)目時(shí)候效率高
回復(fù)

使用道具 舉報(bào)

1142#
ID:1138682 發(fā)表于 2025-2-12 16:05 | 只看該作者
支持匯編,當(dāng)年玩Z80就用匯編,后來玩51,也是匯編,指令集只有100多條基本指令
回復(fù)

使用道具 舉報(bào)

1143#
ID:227818 發(fā)表于 2025-2-13 15:35 | 只看該作者
既然說到是學(xué)單片機(jī),我以為還是匯編好,學(xué)會(huì)后干活當(dāng)然是C好。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表