2 回目にループを通過して E を入力すると、セグメンテーション違反が発生し続けます (ループを終了するためのものです)。最初に E を入力すると、問題なく終了します。うまくいけば、私はここでばかげているだけで、誰かが簡単な修正を提案できます!
御時間ありがとうございます。
宣言:
segment .bss
a resd 1
b resd 1
op resb 2
主要:
loop:
call read_int ;read two integers, then a char
mov [a], eax
call read_int
mov [b], eax
call read_char
call read_char ;takes newline input
cmp al, 'E' ;if char is E, then exit
je exit
call loop ;start over
exit:
dump_regs 0 ;completes, but then seg faults if the loop has run more than once