㈠ 匯編語言與c語言有什麼區別
1、操作復雜程度的不同
c語言,與匯編語言相比,c語言在更加接近人的一般思維,因此在程序的設計過程中比較容易操作,此外在進行一些復雜的操作,運算時,c語言比匯編就要簡單很多,尤其是c語言中的豐富的函數庫,可以直接實現一些原本很復雜的功能,並且從代碼量來說任意一個c語言程序,通過反匯編之後變成匯編語言程序,其長度都可能要增加好幾倍。
2、使用范圍的不同
c語言程序的事件將會只是編寫匯編語言程序的幾分之一,從編寫程序的效率上來說c語言無疑更高,此外C語言是高級程序語言因此可移植性較好,不太受到到硬體設備的限制。
在實現一個功能時,匯編語言可以直接奔著目標去,而C語言則是給你提供了一種對於對於這種問題的普遍處理辦法,不具有針對性,因此會有許多多餘的在這個問題中不需要的過程,因此可能回事程序較大,運行較慢。相對與匯編語言,C語言更加適合一些較大型項目的開發。
3、運行的速度和效率不同
程序沒有了匯編語言計算機直接就無法運行,因為匯編語言是基於計算機底層硬體的編程,通過它實現了對cpu,內存,硬碟以及外界設備的直接操作,因為直接所以匯編語言在程序的大小,執行的速度與效率方面幾乎無可比擬,但是也是因為直接,所以匯編程序難以移植,且完成相同的操作代碼量太大,在進行一些大的項目是,單獨使用匯編進行編程幾乎不可能實現。
㈡ C語言和匯編語言的區別是什麼
區別如下:
1、效率不同
匯編效率高,C語言效率比較低。
2、對硬體的可操控性不同
匯編對硬體的可操控性強,C語言硬體可操控性比較差。
3、代碼體積大小不同
匯編目標代碼體積小,C語言目標代碼體積大。
4、維護性不同
匯編不易維護,C語言容易維護。
5、可移植性不同
匯編可移植性很差,C語言可移植性很好。
(2)c編程與匯編語言的區別擴展閱讀:
匯編語言運行效率高的原因
匯編語言實質上是機器語言的助記符。 CPU只能運行它所支持的指令集,而這些指令集當中的每條指令都是一些二進制數的序列,也就是「0」和「1」的有序組合;「0」和「1」的組合不便於程序員的記憶因此有了「MOV A 0x40」等這樣的助記符。
所以匯編語言編譯成CPU可執行的機器語言其實只要做一個翻譯的動作就好了。而C語言編寫完程序後,需要通過編譯器將C語言編譯成與相應CPU指令集對應的機器語言。匯編語言與機器語言是一一對應的。
但是C語言,就沒這么好了。C語言的語法是固定的,C語言編寫的程序要編譯成CPU能讀懂的機器語言指令沒辦法一一對應,因此需要有編譯規則了,所以運行效率低一些。也可以說,C語言,是面向程序員的語言,而匯編語言是直接面向CPU的語言。
㈢ C語言和匯編語言的區別是什麼
匯編語言屬低級語言,而C語言是高級語言,所謂高級語言就是更容易被人們理解的語言,其實匯編語言能實現的功能往往也能通過C語言來實現,甚至用C語言會更簡單,但是匯編語言有一個優勢是其他任何語言所不具備的,這也是為什麼匯編語言一直能在編程中佔有一席之地,那就是匯編語言對硬體的直接控制,也就是說他能直接對硬體操作,可以繞過操作系統等等之類。雖然有的領域其他編程也能實現,但是在很多地方往往是匯編語言能更加簡單,更加完美的完成。而且學好了匯編語言你就能對cpu是怎麼工作的有了清晰的認識,所以學計算機專業的一般都會學匯編語言。
㈣ c語言和匯編語言的區別
C語言是需要經過機器語言解釋和翻譯才能被硬體執行的高級語言。
匯編是一種直接對於硬體操作的語言,屬於低級語言,面向硬體。
另外:兩種語言的語法也是完全不同的。你可以在網上找一些例子看看就知道區別了。
㈤ 匯編語言和c語言區別
匯編語言與C語言的區別:
1、在匯編語言中,為一個處理器編寫的程序不能在另一種類型的處理器上運行。在C語言程序中,程序獨立於處理器類型運行。
2、匯編語言代碼的性能和准確性優於C代碼。
3、C語言必須提供額外的指令來在計算機上運行代碼。
4、匯編語言代碼比C代碼難以理解和調試。
5、 一個或兩個C語言語句擴展為許多匯編語言代碼。
6、匯編語言可以比C別更好地進行通信某些類型的硬體操作只能通過匯編語言執行。
7、在匯編語言中,我們可以直接讀取物理地址上的指針,這在C別是不可能的。
8、在匯編語言中使用位更容易。
9、匯編程序用於在匯編語言中轉換代碼,而編譯器用於在C編譯代碼。
10、C語言的可執行代碼大於匯編語言代碼,因此執行時間較長。
11、由於長的可執行代碼,C程序的效率低於匯編語言程序。
12、與匯編程序員相比,C語言程序員不需要知道處理器中的寄存器等硬體細節。
13、最C的語言代碼首先自動轉換為匯編代碼。
㈥ C學習筆記(一) C語言和匯編語言的區別
C學習筆記(一) C語言和匯編語言的區別
2016-07-11 09:43162人閱讀評論(0)收藏舉報
分類:
C學習筆記(13)
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
C學習筆記(五)C語言和匯編語言的區別
C語言和匯編語言的區別:
匯編:效率高,對硬體的可操控性更強,體積小,不易維護,可移植性很差;
C:效率比較低,硬體可操控性比較差,目標代碼體積大,容易維護,可移植性很好。
匯編語言運行效率高的原因:
1.匯編語言實質上是機器語言的助記符。 CPU只能運行它所支持的指令集,而這些指令集當中的每條指令都是一些二進制數的序列,也就是「0」和「1」的有序組合;「0」和「1」的組合不便於程序員的記憶因此有了「MOV A 0x40」等這樣的助記符。所以匯編語言編譯成CPU可執行的機器語言其實只要做一個翻譯的動作就好了。而C語言編寫完程序後,需要通過編譯器將C語言編譯成與相應CPU指令集對應的機器語言。匯編語言與機器語言是一一對應的。但是C語言呢?當然沒這么好事了。C語言的語法是固定的,C語言編寫的程序要編譯成CPU能讀懂的機器語言指令沒辦法一一對應,因此需要有編譯規則了,所以運行效率低一些。也可以說,C語言,是面向程序員的語言,而匯編語言是直接面向CPU的語言。
2.匯編是直接面對CPU的語言,只要是在指令集支持的范圍內,匯編語言可以直接而靈活地管理包括特殊功能寄存器、通用寄存器、存儲單元的每一個位元組,甚至是每一個bit。C語言對內存的使用及管理功能也是很強大的,但畢竟還是受制於語法。舉個最簡單的例子,C語言當中沒有對應三位元組或是五位元組的變數類型,要麼int型,要麼long型,所以每次申請必須是固定的位元組數,勢必造成內存使用上的浪費。而大部份匯編語言根本沒有這樣的語法,在偽指令的幫助下(其實也只是提高可讀性),匯編語言程序可以使用任意位元組數的變數,當然處理起來比C語言麻煩得多,最終還是一個位元組一個位元組地拼接處理,而用C語言寫程序就輕鬆了,不用管這些,最終編譯器會搞定嘛。而輕松的代價就是造成了浪費。而內存使用效率不高同時也會影響到整個程序的整體效率。
C語言與匯編的不同適用場合
1:若只有較簡單的邏輯操作、邏輯演算法、簡單運算,使用匯編會得到較為精準的代碼,但用c也同樣可以做到。
2:若摻有復雜運算、浮點運算、非線性方程等,匯編難度很大,而C語言作為一種高級語言,有簡潔緊湊,使用靈活的語法機制,編寫復雜程序容易得多。
3:每一款處理器各自的匯編語法大都不一樣,若僅使用匯編,可擴充性、可移植性都很差,用c就會好的多。
4:對硬體進行初始化的操作,使用匯編語言。
㈦ 匯編語言與c語言的區別
用匯編語言編程,相當於,你自己開車。
用 C 語言編程,相當於,你坐計程車。
㈧ 匯編語言和C語言的比較
1.
匯編語言是低級語言,C語言是中級語言(它既有高級語言的特點,又具有匯編語言的特點。)
2.
匯編是面向機器語言,C語言是面向過程語言。
3.
匯編在編寫復雜程序時具有明顯的局限性,匯編語言依賴於具體的機型,不能通用,也不能在不同機型之間移植。C語言編寫不依賴計算機硬體的應用程序,有較強的可移植性。
4.
匯編語言編寫的程序執行效率和性能高,C語言次之。
5.
C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
6.
匯編語言和C語言都可以直接控制硬體。
7.
匯編語言和C語言都是編譯型語言。(編譯型語言編寫的程序需要經過編譯器編譯成計算機可執行文件)