その中でセグメントレジスタの値を確認する、という項目があるのですが、そこで出てくるCのプログラムで
#include <dos.h>
segread(&sreg);
という記述があります。しかしこのdos.hというのはMS-DOSでしか使用出来ないライブラリのようです。(手元の環境はLinux(x86_64))
ネットで調べるとLinuxでは上記のようなCのプログラムではセグメントレジスタの値は取得出来ないといった記述を見ました。
アセンブラ(nasm)等で実行するプログラムのセグメントレジスタの値を確認する方法はあるでしょうか。
> アセンブラ(nasm)等で実行するプログラムのセグメントレジスタの値を確認する方法はあるでしょうか。
有ります。
gdb a.out
break main
run
info register
とかすると見ることができます。
本当は「セグメントレジスタの値を自作プログラムで確認する方法」を訊きたい
可能性も考えられますので、その際はその旨ご連絡ください。
回答ありがとうございます。gdb自体使用したことはありませんでしたので調べてみます。
2015/04/13 16:28:32> 本当は「セグメントレジスタの値を自作プログラムで確認する方法」を訊きたい可能性も考えられますので、その際はその旨ご連絡ください。
教えて頂いた方法も調べますが、仰るとおりプログラムで確認する方法を求めておりました。アセンブラやCで実現する方法を教えて頂けたら幸いです。