2

私は組み立てが初めてで、本当に気になる質問があります。デバッグ中に、レジスタの値を確認できます。実行を一時停止したり、観察したりできます。私の質問は、これがどのように可能かということです。レジスタは汎用であるため、実行中のすべてのプログラムがレジスタにアクセスして変更できます。ある種のレジスターのロックは、他のプログラムでエラーが発生しやすくなるため、効果がないように思われます。では、これはどのように機能しますか。より洞察に満ちた回答と説明をいただければ幸いです。

4

2 に答える 2

3

非常に簡単な答えがあります。デバッガー (および/または OS 依存のデバッグ API) は、レジスターの値をメモリーに保存し、制御を引き継いでデバッガー画面を表示します。

後で、デバッグされたプログラムの実行を続行する場合、デバッガーは値を復元して実行を続行します。

これは、命令を 1 つずつ実行する場合、実行されるすべての命令で発生します。

于 2013-09-15T09:45:46.237 に答える