0

私はアセンブリにかなり慣れていないので、この質問に答えるには曖昧すぎる場合、またはより多くの情報を含める必要がある場合はお知らせください。

基本的に、私はいくつかの情報をdlレジスターに保存しています。、、、およびレジスタにもeax、保持したい値が格納されています。他のレジスタの値を変更せずにレジスタを画面に表示するにはどうすればよいですか?ebxecxdl

使用も試しましたが、使用int 21h中にセグメンテーション違反が発生します。

4

1 に答える 1

0

作業している環境によって、表示しようとしているものをどのように表示できるかが決まります。割り込みはint 21hDOSサービスであるため、DOS環境(たとえば、DOSがロードされていない純粋なBIOS環境)で作業していない限り、使用できません。この場合、int 10hビデオサービスを確認する必要があります-たとえばint 10h AX=0Ah

他のレジスタの値を保持する限り、これは出力の表示方法によって異なります。上記のint 10h AX=0Ahサービスでは、、、、およびレジスタを使用する必要がありますAH-このサービスを使用するには、値を、から移動する必要があり、レジスタを他の場所に移動する必要があります-おそらく他のレジスタに移動するか、特定のメモリ位置に格納するか、または設定しますスタックをアップしてingし、値を表示した後、値をレジスタに戻します。AHBHBLCXEAXEBXECXPUSHPOP

于 2013-03-09T05:13:46.443 に答える