首頁>Club>
6
回覆列表
  • 1 # 使用者7255976288107

    COM檔案是一種可執行程式的記憶體映象檔案,它與只有16位地址線的8位機上的CP/M作業系統下的可執行程式結構相似。在COM程式執行過程中,除了呼叫DOS功能和 ROM BIOS 功能,以及使用者特意安排外,段暫存器一般不發生變化。四個段暫存器具有同樣的內容,都指向PSP,因此程式的大小仍限於64k以內。COM檔案的入口必須是100H,而EXE檔案可以有多個段。其中CS和SS以及IP和SP在程式裝入時由DOS根據檔案頭中的資訊初始化,ES和DS則指向PSP。EXE檔案除了程式本身外,還要包括檔案頭(512位元組的整數倍),因而所佔磁碟空間大一些,裝入也慢一些,但程式大小不受限制。EXE檔案用debug修改後,無法直接寫回磁碟上去。

    一、相同點

    二者都是DOS下的可執行檔案。.COM檔案是可執行的二進位制程式碼檔案,.EXE檔案是可執行的浮動程式碼檔案。

    二、不同點

    (1).COM檔案一般比較小,其大小不能超過64KB,而.EXE檔案一般比較大,可以超過64KB。

    (2).COM檔案裝入記憶體較快,而.EXE檔案較慢。

    (3).COM檔案一般比較簡單,.EXE檔案則比較複雜,編寫的難度較大。

    (4).COM檔案在執行時段暫存器含有相同的值,即程式碼、資料等混合在一起,而.EXE檔案在執行時段暫存器含有不同的值,即程式碼、資料等駐留在不同的段中。

    (5)駐留在磁碟上的.COM檔案既無檔案頭也沒有任何其它的內部標識資訊,而駐留在磁碟上的.EXE檔案有一個檔案頭(也稱作控制資訊塊)、一個重定點陣圖以及DOS使用的其它資訊。

    xxxx(6)對.COM檔案來說,DOS的裝入程式不能為其執行段重定位,而對.EXE檔案來說,其執行段可以被重定位。

    (7).COM檔案只能有一個段,而.EXE檔案可以有一個以上的段。

  • 中秋節和大豐收的關聯?
  • 身心俱疲,被一些事壓得喘不過氣是一種什麼感受?