regs コマンドを使用すると、すべてのレジスタの値を表示することができます。
regs [-f] [-F]
-f には浮動小数点レジスタ (単精度)、-F には浮動小数点レジスタ (倍精度) が含まれます。これは、SPARC だけのオプションです。
dbx regs -F current thread: t@1 current frame: [1] g0-g3 0x00000000 0x0011d000 0x00000000 0x00000000 g4-g7 0x00000000 0x00000000 0x00000000 0x00020c38 o0-o3 0x00000003 0x00000014 0xef7562b4 0xeffff420 o4-o7 0xef752f80 0x00000003 0xeffff3d8 0x000109b8 l0-l3 0x00000014 0x0000000a 0x0000000a 0x00010a88 l4-l7 0xeffff438 0x00000001 0x00000007 0xef74df54 i0-i3 0x00000001 0xeffff4a4 0xeffff4ac 0x00020c00 i4-i7 0x00000001 0x00000000 0xeffff440 0x000108c4 y 0x00000000 psr 0x40400086 pc 0x000109c0:main+0x4 mov 0x5, %l0 npc 0x000109c4:main+0x8 st %l0, [%fp - 0x8] f0f1 +0.00000000000000e+00 f2f3 +0.00000000000000e+00 f4f5 +0.00000000000000e+00 f6f7 +0.00000000000000e+00 ...
次の表は、式で使用できる SPARC および x86 のプラットフォームに固有のレジスタ名を示しています。
|
レジスタ |
説明 |
|---|---|
|
$g0-$g7 |
「大域」レジスタ |
|
$o0-$o7 |
「出力」レジスタ |
|
$l0-$17 |
「局所」レジスタ |
|
$i0-$i7 |
「入力」レジスタ |
|
$fp |
フレームポインタ (レジスタ $i6 と等価) |
|
$sp |
スタックポインタ (レジスタ $o6 と等価) |
|
$y |
Y レジスタ |
|
$psr |
プロセッサ状態レジスタ |
|
$wim |
ウィンドウ無効マスクレジスタ |
|
$tbr |
トラップベースレジスタ |
|
$pc |
プログラムカウンタ |
|
$npc |
次のプログラムカウンタ |
|
$f0-$f31 |
FPU “f” レジスタ |
|
$fsr |
FPU 状態レジスタ |
|
$fq |
FPU キュー |
$f0f1 $f2f3...$f30f31 のような浮動小数点レジスタのペアは、C の“doule”型とみなされます。通常、$fN レジスタは C の“float”型とみなされます。
次の追加レジスタは、SPARC V9 および V8+ ハードウェアで使用できます。
$xg0 $xg1 through $xg7 $xo0 $xo1 through $xo7 $xfsr $tstate $gsr $f32f33 $f34f35 through $f62f63
SPARC のレジスタとアドレッシングの詳細については、『SPARC アーキテクチャマニュアルバージョン 8』(トッパン刊) および『Sun-4 Assembly Language Reference Manual』を参照してください。
|
レジスタ |
説明 |
|---|---|
|
$gs |
代替データセグメントレジスタ |
|
$fs |
代替データセグメントレジスタ |
|
$es |
代替データセグメントレジスタ |
|
$ds |
データセグメントレジスタ |
|
$edi |
デスティネーションインデックスレジスタ |
|
$esi |
ソースインデックスレジスタ |
|
$ebp |
フレームポインタ |
|
$esp |
スタックポインタ |
|
$ebx |
汎用レジスタ |
|
$edx |
汎用レジスタ |
|
$ecx |
汎用レジスタ |
|
$eax |
汎用レジスタ |
|
$trapno |
例外ベクトル番号 |
|
$err |
例外を示すエラーコード |
|
$eip |
命令ポインタ |
|
$cs |
コードセグメントレジスタ |
|
$eflags |
フラグ |
|
$uesp |
ユーザースタックレジスタ |
|
$ss |
スタックセグメントレジスタ |
一般的に使用されるレジスタには、マシンに依存しない名前が別名として指定されます。
|
$sp |
スタックポインタ ($uesp と同じ)。 |
|
$pc |
プログラムカウンタ ($eip と同じ)。 |
|
$fp |
フレームポインタ ($ebp と同じ)。 |
80386 用の下位 16 ビットのレジスタは次のとおりです。
|
$ax |
汎用レジスタ |
|
$cx |
汎用レジスタ |
|
$dx |
汎用レジスタ |
|
$bx |
汎用レジスタ |
|
$si |
ソースインデックスレジスタ |
|
$di |
デスティネーションインデックスレジスタ |
|
$ip |
命令ポインタ (下位 16 ビット) |
|
$flags |
フラグ (下位 16 ビット) |
上記のうち最初の 4 つの 80386 用 16 ビットレジスタは、8 ビットずつに分割できます。
|
$al |
レジスタの下位 (右) 部分 |
$ax |
|
$ah |
レジスタの上位 (左) 部分 |
$ax |
|
$cl |
レジスタの下位 (右) 部分 |
$cx |
|
$ch |
レジスタの上位 (左) 部分 |
$cx |
|
$dl |
レジスタの下位 (右) 部分 |
$dx |
|
$dh |
レジスタの上位 (左) 部分 |
$dx |
|
$bl |
レジスタの下位 (右) 部分 |
$bx |
|
$bh |
レジスタの上位 (左) 部分 |
$bx |
|
$fctrl |
コントロールレジスタ |
|
$fstat |
状態レジスタ |
|
$ftag |
タグレジスタ |
|
$fip |
命令ポインタオフセット |
|
$fcs |
コードセグメントセレクタ |
|
$fopoff |
オペランドポインタオフセット |
|
$fopsel |
オペランドポインタセレクタ |
|
$st0 - $st7 |
データレジスタ |