日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
次の例は,整数型修飾子 (/BYTE,/WORD,/LONGWORD) を指定した EXAMINE コマンドと DEPOSIT コマンドの使用例です。これらの型修飾子を使用すれば,特定の整数型の値を任意のプログラム記憶位置へ格納することができます。
DBG> SHOW TYPE ! コンパイラ生成型を持たない type: long integer ! 記憶位置の型を表示する。 DBG> EVALU/ADDR . ! 現在の記憶位置は 724 である。 724 DBG> DEPO/BYTE . = 1 ! 値 1 をアドレス 724 の 1 バイトの ! メモリへ格納する。 DBG> EXAM . ! 省略時の設定では 4 バイトが検査される。 724: 1280461057 DBG> EXAM/BYTE . ! 1 バイトだけを検査する。 724: 1 DBG> DEPO/WORD . = 2 ! 値 2 を現在の値の最初の ! 2 バイト (ワード) へ格納する。 DBG> EXAM/WORD . ! 現在の値の 1 ワードを検査する。 724: 2 DBG> DEPO/LONG 724 = 999 ! 値 999 をアドレス 724 から始まる 4 バイト !(ロングワード) へ格納する。 DBG> EXAM/LONG 724 ! アドレス 724 から始まる 4 バイト 724: 999 ! (ロングワード) を検査する。 DBG> |
次の例は,/ASCII:n 型修飾子を指定した EXAMINE コマンドと DEPOSIT コマンドの使用例です。
この修飾子を DEPOSIT コマンドで使用すると,長さ n の ASCII 文字列を任意のプログラム記憶位置に格納することができます。この例では,記憶位置はシンボリック名 (I) を持っており,したがってコンパイラ生成型に対応付けられています。コマンドの形式は次のとおりです。
DEPOSIT/ASCII:n address-expression = "ASCII string of length n" |
n の省略時の値は 4 バイトです。
DBG> DEPOSIT I = "abcde" ! I はコンパイラ生成の整数型を持つ。 %DEBUG-W-INVNUMBER, invalid numeric string 'abcde' ! したがって,I には文字列を格納できない。 DBG> DEP/ASCII:5 I = "abcde"! /ASCII 修飾子によって整数型を上書きし, ! 5 バイトの ASCII データを格納 ! できるようにする。 DBG> EXAMINE . ! I の値をコンパイラ生成の整数型で MOD3\I: 1146048327 ! 表示する。 DBG> EXAM/ASCII:5 . ! I の値を 5 バイトの ASCII 文字列として MOD3\I: "abcde" ! 表示する。 DBG> |
複数の DEPOSIT/ASCII コマンドを入力する場合は,SET TYPE/OVERRIDE コマンドを使用して上書き ASCII 型を設定できます。その場合,それ以後の EXAMINE コマンドと DEPOSIT コマンドは /ASCII 修飾子を指定したのと同じ効果を持ちます。次に例を示します。
DBG> SET TYPE/OVER ASCII:5! ASCII:5 を上書き型として設定する。 DBG> DEPOSIT I = "abcde" ! I に 5 バイトの文字列を格納できるようになる。 DBG> EXAMINE I ! I の値を 5 バイトの MOD3\I: "abcde" ! ASCII 文字列として表示する。 DBG> CANCEL TYPE/OVERRIDE ! ASCII 上書き型を取り消す。 DBG> EXAMINE I ! I をコンパイラ生成型で表示する。 MOD3\I: 1146048327 DBG> |
次の例は,/TYPE=(name) 修飾子を指定した EXAMINE コマンドと DEPOSIT コマンドの使用例です。この修飾子を使用すれば,検査または格納を行う際にユーザ宣言上書き型を指定できます。
たとえば,Pascal プログラムに次のコードが入っているとします。このコードは 3 つの値 RED,GREEN,および BLUE を持つ列挙型 COLOR を宣言します。
. . . TYPE COLOR = (RED,GREEN,BLUE); . . . |
デバッグ・セッションの間,次のように SHOW SYMBOL/TYPE コマンドはデバッガが認識しているとおりに型 COLOR を示します。
DBG> SHOW SYMBOL/TYPE COLOR data MOD3\COLOR enumeration type (COLOR, 3 elements), size: 1 byte DBG> |
次のコマンドはアドレス 1000 の値を表示します。この値はシンボリック名に対応付けられていません。したがって,省略時の設定では値 0 がロングワード整数型として表示されます。
DBG> EXAMINE 1000 1000: 0 DBG> |
次のコマンドはアドレス 1000 の値を型 COLOR で表示します。前の SHOW SYMBOL/TYPE コマンドで,それぞれの列挙要素が 1 バイトに格納されていることが示されています。したがって,デバッガはアドレス 1000 にあるロングワード整数値 0 の最初のバイトを,それに相当する列挙値 RED ( 3 つの列挙値の最初のもの ) に変換します。
DBG> EXAMINE/TYPE=(COLOR) 1000 1000: RED DBG> |
次の DEPOSIT コマンドは,上書き型 COLOR を持つアドレス 1000 に値 GREEN を格納します。EXAMINE コマンドは,アドレス 1000 の値を省略時の型であるロングワード整数で表示します。
DBG> DEPOSIT/TYPE=(COLOR) 1000 = GREEN DBG> EXAMINE 1000 1000: 1 DBG> |
次の SET TYPE コマンドは,シンボリック名を持たないアドレス 1000 のような記憶位置に対して型 COLOR を設定します。EXAMINE コマンドは, 1000 にある値を型 COLOR で表示するようになります。
DBG> SET TYPE TYPE=(COLOR) DBG> EXAMINE 1000 1000: GREEN DBG> |
目次 | 索引 |
|