① 什麼叫可執行的運行程序
簡單的講,就是雙擊之後可以直接運行的程序,比如:
擴展名
為.exe,.com等,在安裝軟體時安裝包里往往有很多個
程序文件
,其中有一個雙擊之後可以直接運行安裝,這個程序也叫可執行的運行程序.
SQL資料庫
編程中的觸發器,
存儲過程
等也叫可執行的運行程序.
② 把高級語言編寫的源程序轉換為可執行程序的過程叫什麼
這個過程有兩個叫法,編譯或者解釋。
有些高級語言在把源程序轉換為可執行程序的時候,需要先對完整的源程序做詞法分析、語法分析等一系列檢測,所有語法都沒有問題後,一次性把所有源代碼翻譯成機器碼,這要求源程序中不能有任何語法錯誤,否則將不會生成可執行程序,直到所有語法錯誤都改正,這種轉換的方式稱為編譯,C、C++等語言就是採用了編譯方式。
還有些高級語言在把源程序轉換為可執行程序的時候,一句話一句話的轉換,翻譯一行執行一行,如果遇到某一行出現了語法錯誤,程序將停止在出現錯誤的地方,程序員可以修改,然後繼續執行,這種轉換方式稱為解釋,VB、早期的Java都是採用解釋方式。
兩種方式各有利弊,編譯的方式對於程序員要求較高,源代碼中不能出現任何錯誤,最終的程序才能執行,但一旦通過了編譯,則生成的可執行代碼執行效率會很高;而解釋方式可以邊寫代碼邊調試,但執行的效率較低。
③ 什麼是可執行程序
因為EXE文件是可執行文件啊!傳文件的時候有個最簡單的方法:你把本來拓展名是EXE的文件的拓展名改成別的,比如RAR,然後就可以傳了。接收人只要在收到後把文件格式改回去就可以了呵呵~所以說不要接收陌生人的文件,更不要改成可執行文件打開!
④ 簡述將源程序編譯成可執行程序的過程
一個源程序到一個可執行程序的過程:預編譯、編譯、匯編、鏈接。其中,編譯是主要部分,其中又分為六個部分:詞法分析、語法分析、語義分析、中間代碼生成、目標代碼生成和優化。
預編譯:主要處理源代碼文件中的以「#」開頭的預編譯指令。處理規則如下:
1、刪除所有的#define,展開所有的宏定義。
2、處理所有的條件預編譯指令,如「#if」、「#endif」、「#ifdef」、「#elif」和「#else」。
3、處理「#include」預編譯指令,將文件內容替換到它的位置,這個過程是遞歸進行的,文件中包含其他文件。
4、刪除所有的注釋,「//」和「/**/」。
5、保留所有的#pragma 編譯器指令,編譯器需要用到他們,如:#pragma once 是為了防止有文件被重復引用。
6、添加行號和文件標識,便於編譯時編譯器產生調試用的行號信息,和編譯時產生編譯錯誤或警告是能夠顯示行號。
(4)生成可執行程序是什麼擴展閱讀:
編譯過程中語法分析器只是完成了對表達式語法層面的分析,語義分析器則對表達式是否有意義進行判斷,其分析的語義是靜態語義——在編譯期能分期的語義,相對應的動態語義是在運行期才能確定的語義。
其中,靜態語義通常包括:聲明和類型的匹配,類型的轉換,那麼語義分析就會對這些方面進行檢查,例如將一個int型賦值給int*型時,語義分析程序會發現這個類型不匹配,編譯器就會報錯。
⑤ 在c語言中「可執行程序」是什麼意思
C語言中的可執行程序就是將用文本信息表示的程序翻譯成計算機認識的二進制代碼串。
首先,我們先用C語言把源代碼寫好,然後交給C語言編譯器。C語言編譯器內部分為前端和後端。
(1)編譯器前端
前端負責將C語言代碼進行詞法和語法上的解析,然後可以生成中間代碼。
中間代碼這部分不是必須的,但是它能夠為程序的跨平台移植帶來諸多好處。比如,同樣的一份C語言源代碼在一台計算機上編譯完之後,生成一套中間代碼。
然後針對不同的目標平台(比如要將這一套代碼分別編譯成 ARM 處理器的二進制機器碼、MIPS 處理器的二進制機器碼以及 x86 處理器的二進制機器碼),只需要編寫相應目標平台的編譯器後端即可。
所以,這么做就可以把編譯器的前端與後端剝離開來(這在軟體工程上又可稱為解耦合),不同處理器廠商可以針對自家的處理器特性,對中間代碼生成到目標二進制代碼的過程再度進行優化。
(2)編譯器後端
接下來,由C語言編譯器後端生成源文件相應的目標文件。
目標文件在 Windows 系統上往往是.obj文件,而在 Unix/Linux 系統上往往是.o文件,C語言的源文件在所有平台上都統一用.c文件表示。
(3)鏈接器
最後,對於各個獨立的目標文件,通過連接器將它們合並成一個最終可執行文件。
(5)生成可執行程序是什麼擴展閱讀:
起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。
這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。
K&R C主要介紹了以下特色:
結構體(struct)類型
長整數(long int)類型
無符號整數(unsigned int)類型
把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產生混淆。
即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最 准要求,許多老舊的編譯器仍然運行K&R C的標准。
1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。
1983年,美國國家標准協會(ANSI)成立了一個委員會X3J11,來制定 C語言標准。
1989年,美國國家標准協會(ANSI)通過了C語言標准,被稱為ANSI X3.159-1989 "Programming Language C"。因為這個標準是1989年通過的,所以一般簡稱C89標准。有些人也簡稱ANSI C,因為這個標準是美國國家標准協會(ANSI)發布的。
1990年,國際標准化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標准,命名為ISO/IEC 9899:1990 - Programming languages -- C 。因為此標準是在1990年發布的,所以有些人把簡稱作C90標准。不過大多數人依然稱之為C89標准,因為此標准與ANSI C89標准完全等同。
1994年,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994 ,有些人簡稱為C94標准。
1995年,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity ,有些人簡稱為C95標准。
C99標准
1999年1月,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C語言的新標准,名叫ISO/IEC 9899:1999 - Programming languages -- C ,簡稱C99標准。這是C語言的第二個官方標准。
參考資料:網路-c語言