㈠ 計算機能直接執行的是什麼程序
計算機能直接執行的是可執行程序。
可執行程序(executable program,EXE File)是指一種可在操作系統存儲空間中浮動定位的可執行程序。在MS-DOS和MS-WINDOWS下,此類文件擴展名為·exe。
拓展資料
WINDOWS操作系統中的二進制可執行文件,分兩種:
一種後輟名為·com,另一種是·exe 。
.EXE文件包含一個文件頭和一個可重定位程序映象。文件頭包含MS-DOS用於載入程序的信息,例如程序的大小和寄存器的初始值。文件頭還指向一個重定位表,該表包含指向程序映象中可重定位段地址的指針鏈表。文件頭的形式與EXEHEADER結構對應。
參考資料來源:可執行程序—網路
㈡ 什麼是「可執行程序」舉個例呢
可執行文件有很多種,一般就是後綴是.exe,.com,.msc(文件的格式才重要,後綴不是重要的).
嘿嘿,我只研究過exe文件(PE文件),簡單說一下吧:PE文件結構首先就是一個MZ,再加一個DOS頭,在一個NT頭,再就是節表頭,最後就是節體.
任選頭(OptionalHeader):它是一個IMAGE_OPTIONAL_HEADER32結構,定義如下:
IMAGE_OPTIONAL_HEADER32 STRUCT
Magic WORD ?
MajorLinkerVersion BYTE ?
MinorLinkerVersion BYTE ?
SizeOfCode DWORD ?
SizeOfInitializedData DWORD ?
SizeOfUninitializedData DWORD ?
AddressOfEntryPoint DWORD ?; PE裝載器准備運行的第一個指令的RVA
BaseOfCode DWORD ?
BaseOfData DWORD ?
ImageBase DWORD ?; PE文件的優先裝載地址(映像基址)
SectionAlignment DWORD ?; 內存中節對齊的粒度
FileAlignment DWORD ?; 文件中節對齊的粒度
MajorOperatingSystemVersion WORD ?
MinorOperatingSystemVersion WORD ?
MajorImageVersion WORD ?
MinorImageVersion WORD ?
MajorSubsystemVersion WORD ?
MinorSubsystemVersion WORD ?
Win32VersionValue DWORD ?
SizeOfImage DWORD ?; 內存中整個PE映像體的尺寸
SizeOfHeaders DWORD ?; 所有頭+節表的大小
CheckSum DWORD ?
Subsystem WORD ?; NT用來識別PE文件屬於哪個子系統
DllCharacteristics WORD ?
SizeOfStackReserve DWORD ?
SizeOfStackCommit DWORD ?
SizeOfHeapReserve DWORD ?
SizeOfHeapCommit DWORD ?
LoaderFlags DWORD ?
NumberOfRvaAndSizes DWORD ?
DataDirectory IMAGE_DATA_DIRECTORY 16 p(<>);數據目錄
IMAGE_OPTIONAL_HEADER32 ENDS
數據目錄(DataDirectory):它是一個IMAGE_DATA_DIRECTORY結構,定義如下:
IMAGE_DATA_DIRECTORY STRUCT
VirtualAddress DWORD ?;指向 IMAGE_IMPORT_DESCRIPTOR 數組的RVA
isize DWORD ?
IMAGE_DATA_DIRECTORY ENDS
節表(Section table):它是一個IMAGE_SECTION_HEADER結構,定義如下
IMAGE_SECTION_HEADER STRUCT ;40個位元組
Name1 db 8 p(?) ;節名
union Misc
PhysicalAddress dd ?
VirtualSize dd ?
ends
VirtualAddress dd ?; 本節的RVA(相對虛擬地址)
SizeOfRawData dd ?; 經過文件對齊處理後節尺寸
PointerToRawData dd ?; 這是節基於文件的偏移量
PointerToRelocations dd ?
PointerToLinenumbers dd ?
NumberOfRelocations dw ?
NumberOfLinenumbers dw ?
Characteristics dd ?; 包含標記以指示節屬性
IMAGE_SECTION_HEADER ENDS:
參考一下吧,其實PE可是一個很多值得學的東西,寫病毒可是有很大幫助的.
㈢ 在c語言中「可執行程序」是什麼意思
C語言中的可執行程序就是將用文本信息表示的程序翻譯成計算機認識的二進制代碼串。
首先,我們先用C語言把源代碼寫好,然後交給C語言編譯器。C語言編譯器內部分為前端和後端。
(1)編譯器前端
前端負責將C語言代碼進行詞法和語法上的解析,然後可以生成中間代碼。
中間代碼這部分不是必須的,但是它能夠為程序的跨平台移植帶來諸多好處。比如,同樣的一份C語言源代碼在一台計算機上編譯完之後,生成一套中間代碼。
然後針對不同的目標平台(比如要將這一套代碼分別編譯成 ARM 處理器的二進制機器碼、MIPS 處理器的二進制機器碼以及 x86 處理器的二進制機器碼),只需要編寫相應目標平台的編譯器後端即可。
所以,這么做就可以把編譯器的前端與後端剝離開來(這在軟體工程上又可稱為解耦合),不同處理器廠商可以針對自家的處理器特性,對中間代碼生成到目標二進制代碼的過程再度進行優化。
(2)編譯器後端
接下來,由C語言編譯器後端生成源文件相應的目標文件。
目標文件在 Windows 系統上往往是.obj文件,而在 Unix/Linux 系統上往往是.o文件,C語言的源文件在所有平台上都統一用.c文件表示。
(3)鏈接器
最後,對於各個獨立的目標文件,通過連接器將它們合並成一個最終可執行文件。
(3)執行程序是一種什麼性質程序擴展閱讀:
起初,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語言
㈣ 計算機能直接執行的程序是( )。 A.源程序 B.目標程序 C.匯編程序 D.可執行程序
計算機能直接執行的程序是可執行程序。
解析:
由高級語言編寫的程序稱為「源程序」。
由二進制代碼表示的程序稱為「目標程序」。
由匯編語言編寫的程序稱為「匯編程序」。
可執行程序是可在操作系統存儲空間中浮動定位的二進制可執行程序。
它可以載入到內存中,由操作系統載入並執行。
對於計算機本身來說,它只能接收和處理由0到1的代碼構成的二進制指令和數據。
即,計算機能識別的程序是「目標程序」。
而計算可以直接執行的程序是可執行程序,即擴展名為.exe的文件。
(4)執行程序是一種什麼性質程序擴展閱讀:
程序的運行
為了使計算機程序得以運行,計算機需要載入代碼,同時也要載入數據。從計算機的底層來說,
這是由高級語言(例如Java,C/C++,C#等)代碼轉譯成機器語言而被CPU所理解,進行載入。
如果您在一個符合大多數的計算機上,操作系統例如Windows、Linux等,載入並執行很多的程
序,在這種情況下,每一個程序是一個單獨的映射,並不是計算機上的所有可執行程序。
它是指為了得到某種結果而可以由計算機等具有信息處理能力的裝置執行的代碼化指令序列,或
者可以被自動轉換成代碼化指令序列的符號化指令序列或者符號化語句序列。同一計算機程序的
源程序和目標程序為同一作品。
參考資料:網路—可執行程序
㈤ 浠涔堟槸紼嬪簭錛熺▼搴忔槸鎬庢牱琚鎵ц岀殑
紼嬪簭鏄涓緋誨垪鎸夌収鐗瑰畾欏哄簭鎵ц岀殑鎸囦護錛岀敤浜庡畬鎴愮壒瀹氫換鍔$殑璁$畻鏈轟唬鐮併傚畠鍙浠ラ氳繃璁稿氱紪紼嬭璦錛堝 C++錛孞ava錛孭ython 絳夛級緙栧啓錛屽苟鍙浠ュ湪璁$畻鏈猴紝鏈嶅姟鍣錛岀Щ鍔ㄨ懼囩瓑澶氱嶅鉤鍙頒笂榪愯屻
紼嬪簭鍦ㄦ墽琛岃繃紼嬩腑閫氳繃涓澶澶勭悊鍣錛圕PU錛夎誨彇浠g爜騫舵墽琛屽畠錛屼粠鑰屽疄鐜伴勬湡鍔熻兘銆傝ヨ繃紼嬮氬父縐頒負緙栬瘧鎴栬В閲婏紝鏍規嵁紼嬪簭鐨勭紪紼嬭璦鍜屽鉤鍙頒笉鍚岃屼笉鍚屻
渚嬪傦紝闈欐佺紪璇戣璦錛堝 C錛夌殑紼嬪簭鍦ㄦ墽琛屽墠閫氳繃緙栬瘧鍣ㄩ勫勭悊浠g爜錛屽苟鐢熸垚鏈哄櫒浠g爜錛岃ユ満鍣ㄤ唬鐮佸彲鐩存帴鐢 CPU 鎵ц屻傝屽姩鎬佺紪璇戣璦錛堝 Python錛夌殑紼嬪簭鍦ㄦ墽琛屾椂鐢辮В閲婂櫒鍔ㄦ佺紪璇戜唬鐮侊紝騫跺湪鎵ц岃繃紼嬩腑鐩存帴鎵ц岃В閲婂悗鐨勪唬鐮併
㈥ 計算機直接執行的程序是什麼程序
計算機能直接備閉執行的程序是可執行程序。
解析:
由高級語言編寫的程序稱為「源程序」。
由二進制代碼表示的程序稱為「目標程序」。
由匯編語言編寫的程序稱為「匯編程序」。
可執行程序是可在操作系統存儲空間中浮動定位的二進制可執行程序。
它可以載入到內存中,由操作系統載入並執行。
對於計算機本身來說,它只能接收和處理由0到1的代碼構成的二進制指令和數據。
即,計算機能識別的程序是「目標程序」。
而計算可以直接執行的程序是可執行程序,即擴展名為.exe的文件。
(6)執行程序是一種什麼性質程序擴展閱讀:
程序的運行
為了使計算機程序得以運行,計算機需要載入代碼,同時也要載入數據。從計算機的底層來說,
這是由高級語螞頌言(例如Java,C/C++,C#等)代碼轉譯成機器語言而被CPU所理解,進行載入。
如果您在一個符合大多數的計算機上,操作系統例如Windows、Linux等,載入並執行很多的程
序,在這種情況下,每一個程序是一仿物裂個單獨的映射,並不是計算機上的所有可執行程序。
它是指為了得到某種結果而可以由計算機等具有信息處理能力的裝置執行的代碼化指令序列,或
者可以被自動轉換成代碼化指令序列的符號化指令序列或者符號化語句序列。同一計算機程序的
源程序和目標程序為同一作品。
參考資料:網路—可執行程序