2011年5月22日 星期日

MASM_8

信區 : 破解網-破解技術討論區

日期 : Tue May 14, 12:14                                                      
來自 : Jerry Cls                                               39:40/103
給   : All                                
標題 : ASM 8                                                                
--------------------------------------------------------------------------------

@TID: FastEcho 1.40 17014


※  利用文書處理程式建立一個 SMILE.ASM 的原始碼檔案。
※  ASM 檔案中的空白行可幫助您分清楚程式的架構,便於閱讀。
※  MASM 會將所有的數值假設為十進位,而 DEBUG 則使用十六進
  位;所以在原始碼中,我們必須加上 h,以代表十六進位。
※  若是以字母開頭的十六進位數字,則還必須在字母前加個 0,
  以表示它是數字。
  原始程式碼                           DEBUG 程式

prognam segment
        assume cs:prognam
        mov  dl,1                          mov  dl,1
        mov  ah,2                          mov  ah,2
        int  21h                           int  21
        int  20h                           int  20
prognam ends
        end

※  原始程式碼新增了四列敘述:
※  prognam segment 與 prognam ends 是成對的,用來告訴 MASM 及
  LINK,此程式將放在一個稱為『PROGNAM』(PROGram NAMe) 的
『邏輯區段』內;其中區段名稱(PROGNAM)可以任取,但其
  位置必須固定,且兩個區段名稱必須相同。

※  assume cs:prognam 必須在程式的開頭,用來告訴組譯器,此
  程式所在區段的位置放在 CS 暫存器中。
※  end 用來告訴 MASM,程式到此結束。
※  要產生 COM 檔案的所有原始程式碼都需含這四列,且必須依
  相同的次序及位置出現。

※  以 MASM.EXE 組譯 ASM 檔案時,不可打入附屬檔名 ASM。
※  組譯器會要求您輸入 OBJ 檔案、表例(LST)檔案及對照(CRF)
  檔案(供除錯時參考用)等檔案名稱,您只要按 Enter 鍵,
  則表示要使用其預設名稱。
※  NUL 表示沒有檔案,所以最後組譯的結果只產生 SMILE.OBJ 。
1.請輸入 MASM SMILE
2.請按 Enter 鍵三次。

Microsoft (R) Macro Assembler Version 5.10
Copyright (C) Microsoft Corp 1981, 1988.  All rights reserved.
Object filename [SMILE.OBJ]:

Source listing  [NUL.LST]:

Cross-reference [NUL.CRF]:

  50162 + 403867 Bytes symbol space free
      0 Warning Errors
      0 Severe  Errors

※                :警告錯誤,表示組譯器對某些事情不瞭解,
                 不過,尚不致嚴重到使程式組譯的結果發生
                 錯誤。
※                :嚴重錯誤,會造成程式無法正常執行的錯誤
※  在使用 LINK 之前,必須將錯誤修正。


※  OBJ 檔案中包含的是組譯後的二進位結果,它還無法被 DOS
  載入記憶體中加以執行,必須先加以鏈結(Linking)。
※  以 LINK 將 OBJ 檔案(SMILE.OBJ)鏈結成 EXE 檔案(SMILE.EXE)
  時,不可使用附屬檔名 OBJ。
1.請輸入 LINK SMILE
2.請按 Enter 鍵三次。

Microsoft (R) Overlay Linker Version 3.64
Copyright (C) Microsoft Corp 1981, 1988.  All rights reserved.
Run File [SMILE.EXE]:

List File [NUL.MAP]:

Libraries [.LIB]:

LINK : warning L4021: no stack segment

※  [.LIB]:  :程式庫,是一些程式的集合,在特殊的情況下,
            您可將它與您的程式合併使用。
※  由於 COM 檔案並不使用堆疊段,所以錯誤訊息 "no stack
  segment" 並不會影響程式的正常執行,只是增加我們的緊
  張罷了。

※  使用 EXE2BIN 將 EXE 檔案(SMILE.EXE),轉換成 COM 檔案
(SMILE.COM)時,前者不必使用附屬檔名,而後者則必須指定
  附屬檔名,否則,會產生 BIN 檔案(SMILE.BIN)。
※  其實 BIN 檔案與 COM 檔案是完全相同的,但由於 COMMAND.COM
  只認識 COM、EXE 及 BAT 檔案,所以 BIN 檔案無法被正確執行。
1.請輸入 EXE2BIN SMILE SMILE.COM

※  現在,磁片上應該有 SMILE.COM 檔案了,您只要在提示符號
  A> 下,直接輸入檔案名稱 SMILE ,就可以執行這個程式了。
1.請執行本程式。 


--- SuperBBS 1.17 (Reg)
 * Origin: BEAR BBS OPEN:24HR  TEL : (02)377-6746 (39:40/103)
PATH: 40/103 100

沒有留言:

張貼留言