-
我覺得沒關係,現在系統多是用C語言寫的,但是一開始可能用C語言寫的,然後系統比較大,很難改成C++,因為系統比較大,所以我覺得用C++寫就好了,好控制,當然, 速度是要打折扣的,但穩定性和靈活性應該更重要,畢竟慢總比不可修改和舊的崩潰好,C++的速度也不比C差多少,甚至在某些地方更快,因為現在C++的開發比CA快得多 Bjarne Stroustrup說, 學習 C 只是為了處理被當作遺產的**,呵呵。我想知道這是否有點過分?
至於編譯,一般是寫不出來的,太大一點就很難維護了。 雖然他速度很快,但這並不意味著用C++編寫的程式一定比彙編慢,編譯器會優化C++,如果彙編級別不夠,程式可能不如C++。 對於大型程式,組裝幾乎不可避免地難以維護。
C先編譯成彙編,再編譯成二進位,其實彙編和二進位**是一一對應的,只是0101這個數字被MOV等語句代替了。
對於匿名人士,我想補充一點,C++只是乙個程式設計思路,它全部編譯成彙編然後轉換成二進位,C++可以編譯成彙編,你能說彙編支援類嗎? C++ 和 C 的區別不在於有類,真正的區別在於思想,至於不支援什麼支援只是乙個介面和其他不是問題的問題。 所謂中級語言高階語言,只是為了在寫作過程中接近人類語言,而在編譯的時候是機器語言,又有什麼區別呢?
-
C和彙編適配於編寫作業系統。
c 做介面? 你是說VC! 純 C 不能用作介面! VC可以。
C++可以嵌入到彙編中,但不是一兩句話就能說清楚! 你可以用谷歌搜尋它,你可以參考那裡出現的任何答案! C++ 彙編混合編寫需要高水平的 C+ 和彙編。
彙編和C編譯,如果你讀過編譯原理,你就會知道C編譯器巢狀在乙個彙編編譯器裡面,他先把C C++**翻譯成彙編**,然後翻譯成1 0
-
廢話,C++類在作業系統的核心部分根本不起作用! 物件導向思維只能用於介面等高階開發,低階還是要用C語言的流程,如果堅持C++開發,只能用C這樣的函式,不能用類。 因為這些特性是系統要支援的,所以等你的系統完成核心,再寫介面,不要試圖用類來寫系統。
這是不可能的,因為作業系統不是乙個應用程式,它是面向底層的。 在 ring0 級別上執行的中間層程式。 C語言恰好具有中間語言的特徵。
這就是為什麼編寫作業系統如此親密的原因。
哪些語言最終是二進位的? 別逗我笑,你最終會變成二元的,但是如果你仔細想想,你要經過多少條路線才能在中間完成一件事,我告訴你,有很多,比如類,不斷的指向和來自指點,當然,慢慢地,所以我說物件導向的思維只是方便, 而且根本沒有很高的執行效率,因為為了提高程式設計開發的效率,是要失去效率的,如果用過程語言編寫的話,會快很多(C語言最後轉換成彙編,然後編譯成二進位,所以還是不如彙編快, 而C++是最慢的,因為成為機器碼需要很長時間),這是事實。
-
假設Windows XP作業系統是用C++編寫的。
-
我不知道你的測試是幹什麼用的。
但想要更有效率。 您可以嘗試將 scanf 和 printf 更改為檔案輸入和輸出。 你不能用手進入,是嗎? 估計值是在單個檔案中準備的資料。
-
將您的資料儲存在檔案中! 讓我們讓 C 讀取檔案。
-
沒有軟體可以潛入。
-
通常,引導載入程式是從程式集編寫的。 在此階段,初始化執行時環境(C 庫執行時),以便 C C++ 程式可以盡快執行。 在 C C++ 中,再次使用 arm 組裝並不常見。
如果需要訪問特殊的暫存器(移植作業系統時,就像UCOS需要修改CPSR、SP等一樣,需要修改時,需要有乙個內聯彙編)。 實際上,彙編用於低階移植過程,在 C++ 中需要訪問特殊的暫存器(通常與遷移相關),並且只能通過內聯彙編的方式訪問。
-
組合語言是一種低階語言,更面向機器操作。 C C++ 是一種高階語言,遠離機器操作。
-
組合語言與機器語言一樣,直接控制硬體。
每種型別的 CPU 都有自己的機器語言,因此無法移植程式集。
C語言,它不直接控制硬體。
在不同的機器上,都有相應的編譯軟體,可以將C編譯成你自己系統的機器語言。
易於移植的關鍵:C 語言無法直接控制硬體。
-
組合語言與硬體直接相關,每個運算元都有自己的硬體。 因此,編譯器將其直接翻譯成機器語言。
C 和 C++ 的 ** 與硬體無關,主要取決於編譯器。
無論是低階語言還是高階語言,最終都是編譯器將其轉換為機器語言進行執行。
例如,修繕房屋:
一種情況:房主只需要告訴承包商設計風格和所需的功能,具體的實施細節由承包商完成,比如剛才在哪裡買,先修這個或修那個,僱多少人等等。 在本例中,承包商是 C 的編譯器。
兩種情況:房主蓋房子自己動工,具體人僱,買多少鋼材,地基打多深等等,都是房主自己處理的,只有小細節,由一些工人或小承包商完成。 此時,房主充當程式集的編譯器。
因此,總的來說,低階語言可以把握非常詳細的地方,主要用在硬體精確控制的領域,而C C++等則非常高效,可以在短時間內編寫大型程式。 但是,C 和 C++ 的編譯器更為複雜。
所謂的移植,比如我們在Windows中寫的C++文字**:
int i=0;cout “如果我們想移植到 Linux,我們只需要將這段文字複製並貼上到 Linux 編譯器中即可。
儘管兩個系統編譯器的實現細節不同,但它們最終都會在螢幕上列印乙個“0”
-
最主要的是編譯器功能強大,高階語言本身是建立在對應的機器上的,底層的東西也應該用相應的彙編或者機器程式碼來構建,最後形成乙個進行高階語言編譯的環境,頂層使用者感受不到不同模型編譯的區別, 所以高階語言的可移植性很強。
如果將組合語言的編譯器與高階語言的編譯器進行比較,會發現高階語言的編譯器比組合語言的編譯器大很多倍。 反過來,它在編譯過程中為使用者做了很多工作(包括機器程式碼的對應和暫存器的儲存方式)。
-
關鍵是編譯器會將 C 翻譯成不同的機器語言。
所以雖然微處理器系統不同,但c是統一的。
-
組合語言是一種低階語言,更面向機器操作。 C C++ 是一種高階語言,遠離機器操作。
FIFA Online3 皇家馬德里的 cc 卡是:克里斯蒂亞諾·羅納爾多、勞爾、卡卡、卡西、拉莫斯、卡洛斯等。 >>>More
他們兩人的關係很複雜 要說有戀愛關係,漫畫劇情中並沒有明確說明,但CC一定喜歡魯路修,這不難看出來,魯路修可能更把她當成CC的最佳伴侶,因為在他們的世界裡,CC最了解他。