[問題]如何解決"NTVDM CPU已經遇到不合法的提示"?

看板ASM (組合語言)作者 (ppttcc)時間14年前 (2010/11/04 00:38), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
當我組譯完成後,在consol下ml /AT test.asm後 再執行test.com時,就出現對話框,說啥 "NTVDM CPU已經遇到不合法的提示",我修改完後要再重新組譯, 組譯器的輸出似乎就有點不正常,不正常的意思是原來該會有輸出的一些訊息, 如什麼要指定obj檔案名稱,crf檔那些就都沒有出現. 然後是就連原本能正常執行的.com程式也無法執行了 感覺好像是被鎖起來的樣子?? 請教一下這該如何解決?謝謝,感謝. ps.我若用debug載入似乎會變正常 程式就只是呼叫副程式顯示ASCII碼而已(副程式放在結尾處,即exit的下方,就會出問題), 但我向來都是把副程式寫在exit的下方,一直以來也都沒事,可正常組譯執行,不知為何 突然產生問題. ;*************************************** code segment assume cs:code,ds:code org 100h ;--------------------------------------- start: mov dl,3 call tochar call show exit: mov ah,4ch int 21h tochar proc near mov bl,48 add dl,bl tochar endp show proc near mov ah,2 int 21h show endp code ends ;*************************************** end start os:xp ml版本:6.1.2 ※ 編輯: ppttcc 來自: 114.38.9.137 (11/04 01:08) ※ 編輯: ppttcc 來自: 114.38.9.137 (11/04 01:26)

11/04 01:36, , 1F
把之前組譯時新增的檔案砍掉再組譯看看?
11/04 01:36, 1F

11/04 02:20, , 2F
只要是放在exit上方一定出問題.
11/04 02:20, 2F

11/04 03:10, , 3F
現在debug的結果之一是就算沒有呼叫副程式,也會自己執行...
11/04 03:10, 3F

11/04 03:11, , 4F
7月不是已經過了嗎...
11/04 03:11, 4F

11/04 09:48, , 5F
你的副程式沒ret?
11/04 09:48, 5F

11/04 13:27, , 6F
感謝!感謝!原來昏頭漏了ret,現在移到exit下也正常了
11/04 13:27, 6F
文章代碼(AID): #1CqP0OJQ (ASM)
文章代碼(AID): #1CqP0OJQ (ASM)