2

インストラクターから提供されたマクロを使用しようとした後、ファイルの本体を変更した後でも、プログラムがクラッシュし始めました。レポートで例外 80000003 が発生しています。これに関する唯一の情報はブレークポイントに関するもので、asm コードにブレークポイントを設定する方法がわかりません。この問題に関する光は素晴らしいでしょう。ありがとう。

提供されるマクロ: debug.h

inputW          MACRO  prompt, location
               output prompt
               input text, 8
               atoi text
               mov location, ax
            ENDM

outputW     MACRO   var
               itoa text, var
               mov text + 6, 0
               output text
               output carriage
            ENDM

私のコード:

.386
.MODEL FLAT

ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE ../debug.h

CR          EQU    0Dh  ; carriage return character
LF          EQU    0Ah  ; linefeed character

.STACK 4096

.DATA                 ;data storage
num       WORD  ?
prompt1   BYTE  "Enter a number:  ", 0

.CODE
_start:
        inputW prompt1, num 
        outputW num

        INVOKE  ExitProcess, 0 

PUBLIC _start
END

このコードも、例外 80000003 でクラッシュすることなく実行されるコードもありません

4

0 に答える 0