冰楓論壇

 找回密碼
 立即註冊
查看: 23|回覆: 0
打印 上一主題 下一主題

WIN64組合語言也能呼叫C語言函式

[複製鏈接]

16

主題

0

好友

61

積分

新手上路

Rank: 1

UID
460236
帖子
32
主題
16
精華
0
積分
61
楓幣
1918
威望
59
存款
0
贊助金額
0
推廣
0
GP
17
閱讀權限
10
性別
保密
在線時間
48 小時
註冊時間
2024-10-12
最後登入
2026-11-13
跳轉到指定樓層
1樓
發表於 1 小時前 |只看該作者 |倒序瀏覽
微軟實作了 C 語言標準函式庫,稱為 MSVCRT.DLL(這是 Microsoft Visual C++ Runtime 的縮寫)動態連結成式庫。MSVCRT.DLL 包含了 C 語言常用的函式,譬如 scanf、printf、sqrt……,在組合語言中也可以呼叫它們。

實作:
1.安裝MASM64 SDK:到MASM論壇 下載masm64sdk_beta_2b.exe,安裝。
2.依據\masm64\bin64\FileList.txt內容,到PCONLIFE下載FileList.txt內的所有檔案。

實例:
  1. INCLUDE E:\masm64\include64\masm64rt.inc
  2. EXTRN   printf:PROC
  3. EXTRN   scanf:PROC
  4. EXTRN   getchar:PROC
  5. EXTRN   strcat:PROC
  6. ;*********************************************************************
  7. .DATA
  8. now  SYSTEMTIME <>
  9. szName   DB     24 DUP (0)
  10. szFmt1   DB     "%18[^",0Ah,"]",0
  11. szFmt2   DB     "今天是%d月%d日,",0Dh,0Ah,0
  12. szFmt3   DB     "%s,祝您學習x64組合語言順利。",0
  13. szHint   DB     "請輸入您的姓名:",0
  14. Ellipses DB     "...",0
  15. ;*********************************************************************
  16. .CODE
  17. ;---------------------------------------------------------------------
  18. main    PROC
  19. ;印出提示字串,並讓使用者輸入姓名
  20.         invoke  printf,ADDR szHint
  21.         invoke  scanf,ADDR szFmt1,ADDR szName
  22.         call    getchar
  23.         cmp     al,0Ah  ;若AL=0Ah,表示輸入未超過18個字元
  24.         je      ok
  25.         invoke  strcat,ADDR szName,ADDR Ellipses
  26. ;取得今天日期,並印出來
  27. ok:     invoke  GetLocalTime,ADDR now
  28.         xor     rdx,rdx
  29.         sub     r8,r8
  30.         invoke  printf,ADDR szFmt2,now.wMonth,now.wDay
  31. ;印出使用者輸入的姓名及祝福語
  32.         invoke  printf,ADDR szFmt3,ADDR szName
  33.         invoke  ExitProcess,NULL
  34. main    ENDP
  35. ;*********************************************************************
  36. END
複製代碼
收藏收藏0 推推0 噓噓0

分享這篇文章



把本文推薦給朋友或其他網站上,每次被點擊增加您在本站積分: 1鑰匙
複製連結並發給好友,以賺取推廣點數
簡單兩步驟,註冊、分享網址,即可獲得獎勵! 一起推廣文章換商品、賺$$
高級模式
B Color Image Link Quote Code Smilies |上傳

廣告刊登∣意見回饋∣關於我們∣管群招募∣本站規範∣DMCA∣隱私權政策∣詐騙防範及資料調閱

Copyright © 2011-2026 冰楓論壇, All rights reserved

免責聲明:本網站是以即時上載留言的方式運作,本站對所有留言的真實性、完整性及立場等,不負任何法律責任。

而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。

小黑屋|手機版|冰楓論壇

GMT+8, 2026-11-13 15:22

APP Store下載 Play Store下載
回頂部