3

逆アセンブルからいくつかのコードをデバッグしています(ソースコードは利用できません)。dsセグメントレジスタを介してデータにアクセスするいくつかの命令があります。たとえば、次のようなものです。

66 3B 05 8A B1 43 00 cmp         ax,word ptr ds:[43B18Ah]

dsVisual Studioデバッガーにセグメントレジスタのオフセットを通知して、これが参照しているメモリを検査できるようにするにはどうすればよいですか?ds:[0x43B18A]ウォッチウィンドウは、またはバリアントのような表現を受け入れないようです。それdsは0であることがわかりますが、セグメント0のオフセットが何であるかはわかりません。

これには特別な構文がありますか、それともVSではできないことですか?WinDbgやntsdなどの別のデバッガーで運が良かったでしょうか。

4

1 に答える 1

5

これは、VisualStudioに組み込まれている逆アセンブラの癖です。これは不要で、DSレジスタがデフォルトです。無視してください。Windowsでは、DS、CS、およびESレジスタが同じ値に設定されています。プロテクトモードセレクター。そして、メモリウィンドウで使用されるのと同じ値。ds:プレフィックスを省略してください。

于 2010-09-07T18:34:12.873 に答える