Visual C++でインラインアセンブリーを使用しています。私のプログラムでint 21hを使用できるようになりました。私が21時間を間違って呼んでいるとか、何とかブロックされていると信じさせる他の割り込み処理(int 3)。私はint 21hを使用すると、ランタイムエラーが発生します。私がそれをコメントアウトすれば、レジスタをうまく動かすことができます。インラインアセンブリーでint 21hを使用する
は、これまでのところ、私は一緒にこれを得ている:
int _tmain(int argc, _TCHAR* argv[])
{
__asm {
mov ah, 1h
int 21h
mov dl, al
mov ah, 2h
int 21h
}
}
恐らくそれはセグメンテーションです。私が知る限り、32ビットのアプリケーションでintを使うことはできません。 – BlackBear
前述のように、他の割り込みも機能します。 int 3はエラーなしでブレークポイントを正常に作成します。私が問題を抱えているのはint 21hだけです。 – ozdrgnaDiies
これはどのようなプログラムですか? Int21hはDOS割り込みです。 –