① 程序語言最終怎樣被轉換成計算機能讀懂的機械語言,0和1,
程序語言有很多,拿最常用的c/c++語言舉例。
將用戶的文本形式的源代碼轉化成計算機可以直接執行的機器代碼的過程。主要經過這么幾個過程:
一、預編譯,又稱為預處理 , 是做些代碼文本的替換工作
二、編譯,由編譯器將c源代碼(.cpp)轉變成匯編代碼(.s)
三、匯編,由匯編器將匯編代碼(.s)轉變成目標代碼(.o)
四、鏈接,由鏈接器將代碼在執行過程用到的其他目標代碼和庫文件鏈接成為一個可執行程序也就是目標程序。
經過以上步驟高級語言就會被解釋成為計算機可以認知的機器語言。
一、預編譯
1、定義
處理以# 開頭的指令 , 比如拷貝 #include 包含的文件代碼,#define 宏定義的替換 , 條件編譯等,就是為編譯做的預備工作的階段。
主要處理#開始的預編譯指令,預編譯指令指示了在程序正式編譯前就由編譯器進行的操作,可以放在程序中的任何位置。
二、編譯
1、定義
編譯的過程就是將源代碼文件以字元流的形式進行處理,進行詞法和語法的分析,然後通過匯編器將源代碼指令轉變成匯編指令,編譯的過程包括兩個大部分:預處理 = 預編譯
2、特殊符號
特殊符號是指:例如在源程序中出現的LINE標識將被解釋為當前行號(十進制數),FILE則被解釋為當前被編譯的C源程序的名稱。預編譯程序對於在源程序中出現的這些串將用合適的值進行替換。
三、匯編
1、定義
匯編過程實際上是把匯編語言代碼翻譯成目標機器指令的過程。對於被翻譯系統處理的每一個C語言源程序,都將最終經過這一處理而得到相應的目標文件。目標文件中所存放的也就是與源程序等效的目標的機器語言代碼。
四、鏈接
1、定義
由匯編程序生成的目標文件並不能立即就被執行,其中可能還有許多沒有解決的問題。
② 將c語言編寫的源程序轉換成可執行程序要用什麼程序處理
不同版本的c語言可能有所不同,以下以TC20為例:
一、IDE環境中生成
1)雙擊TC文件夾下的TC.EXE啟動TC20。
2)按F3,選擇打開源程序。(1.c)
3)按F9即可生成打開文件名的可執行文件。(如開始的是1.c,則生成1.exe)
二、DOS或控制台下生成:
1)用cmd打開控制台窗口,並進制TC目錄。
2)在控制台命令行輸入:tcc
1(回車),則生成1.obj
3)再在控制台命令行輸入:tlink
1(回車),則生成1.exe
③ 用( )講c語言的源程序轉變為機器語言的目標程序。 A.匯編程序 B.編譯程序 求解
④ C語言採用解釋方式將源程序轉換為二進制的目標代碼嗎
不是,C語言採用編譯方式將源程序轉換為二進制的目標代碼。使用C語言編譯器來完成。
所謂C語言編譯器,就是把編程得到的文件,比如.c,.h的文件,進行讀取,並對內容進行分析,按照C語言的規則,將其轉換成cpu可以執行的二進制文件。其本質在於對文件的讀入,分析,及處理。
C語言編寫的程序代碼稱為源程序,對於計算機本身來說,它並不能直接識別由高級語言編寫的程序。C語言程序經C語言編譯程序編譯後,生成後綴為.obj的二進制文件(稱為目標文件)。
此.obj文件必須與系統提供的各種庫函數連接起來生成一個後綴為.exe的可執行文件才可以執行。C語言的可執行文件由一系列機器指令構成的。
(4)c語言源程序通常由什麼將其轉換擴展閱讀
解釋執行和編譯執行是計算機語言的執行方式。解釋執行由解釋器現場解釋執行,不生成目標程序。如BASIC便是解釋執行,一般解釋執行效率較低,低於編譯執行。
編譯執行由編譯程序將目標代碼一次性編譯成目標程序,再由機器運行目標程序。如:PASCAL,C,C++,delphi等語言。效率高於解釋執行。
⑤ c語言源程序是有什麼組成的
所有編程語言本質上都是由演算法+數據結構組成的。
一個C語言源程序,是由一個或多個函數定義順序組成的,其中必須有一個函數名為main的函數,main()函數又稱為主函數。C語言源程序的次要構成成分有:編譯預處理命令、注釋和聲明。
主函數被編譯程序翻譯成一個機器語言形式的主程序段,任何其他函數都將被編譯程序翻譯成機器語言形式的子程序段。
換言之,C語言源程序中的函數,並非數學中時常顯得有些高深莫測的函數,它只是完成特定數據處理任務的、功能上獨立的一個程序段而已。
(5)c語言源程序通常由什麼將其轉換擴展閱讀:
C語言特有特點
1、C語言是一個有結構化程序設計、具有變數作用域(variable scope)以及遞歸功能的過程式語言。
2、C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。
3、不同的變數類型可以用結構體(struct)組合在一起。
4、只有32個保留字(reserved keywords),使變數、函數命名有更多彈性。
5、部份的變數類型可以轉換,例如整型和字元型變數。
6、通過指針(pointer),C語言可以容易的對存儲器進行低級控制。
7、預編譯處理(preprocessor)讓C語言的編譯更具有彈性。
參考資料:網路-C語言
⑥ 有了C語言源代碼如何把它轉成應用的軟體啊
有C語言源代碼,要將之轉換為可執行的應用軟體方法如下:
1、准備一個C語言的編譯器,比如TC2.0等等
2、運行編譯器TC2.0
3、載入源代碼
4、按Alt-F9。
⑦ 為把c語言源程序轉換為計算機能夠執行的程序,需要
轉換的過程稱為編譯:源程序——目標程序——可執行程序
也就是預編譯->編譯->鏈接
通俗的說就是用編譯器編譯
⑧ c語言源程序通常由什麼將其轉換為目標程序
C語言程序不能直接運行,通常用編譯程序將其編譯為目標程序。再連接上需要的庫程序,得到可運行的二進製程序。