検索
ホームページ運用・保守窓の運用と保守debug gコマンドの使い方は?

DEBUG の G コマンドはコードの実行に使用されます。その構文は "g [=address] [breakpoints]" です。このコマンドの後にはアドレスとブレークポイントを続けることができます。次のコードまで実行すると一時停止します。メモリ内の指定された場所。パラメータが追加されない場合、デフォルトでは現在の IP からプログラムの最後まで実行されます。

debug gコマンドの使い方は?

DEBUG G コマンドはコードの実行に使用されます。このコマンドの後にはアドレスとブレークポイントを続けることができます。つまり、形式は g [=address] [breakpoints] です。メモリ内の指定された場所でコードを実行した後、一時停止します。パラメータが追加されない場合、デフォルトは次のとおりです。現在の IP からプログラムの最後まで実行します。

debug gコマンドの使い方は?

debug コマンド構文

g [=address] [breakpoints]

パラメータ:
アドレス、現在メモリ内にあるプログラムのアドレス、指定実行を開始するアドレス。
breakpoints は、g サブコマンドの一部として設定できる 1 ~ 10 の一時ブレークポイントを指定します。
?は、デバッグサブコマンドリストを表示します。

注:
Windows XP では、このコマンドは使用されません。 MS-DOS ファイルとの互換性を維持するためにのみ使用してください。
有効なアドレス項目を指定してください。アドレスは、アルファベットのセグメント レコード、または 4 桁のフィールド アドレスとオフセットを含む 2 桁の名前です。セグメントレジスタまたはセグメントアドレスは無視できます。

CS は、「デバッグ」サブコマンド a、g、l、t、u、および w のデフォルトのセクションです。他のすべてのコマンドのデフォルトのセグメントは DS です。すべての値は 16 進形式です。セグメント名とオフセットの間にコロンを含める必要があります。有効なアドレスは次のとおりです。

CS:0100
04BA:0100

アドレス パラメータを使用する
アドレスとブレークポイント アドレス (ブレークポイント) を区別するには、アドレス パラメータの前に等号 (=) を使用する必要があります。

ブレークポイントの指定
ブレークポイント リストのどこにブレークポイントを入力しても、プログラムは最初のブレークポイントで停止します。 Debug.exe は、各ブレークポイントで元の命令をブレーク コードに置き換えます。

プログラムがブレークポイントに到達すると、Debug.exe はすべてのブレークポイント アドレスを元の命令に復元し、すべてのレジスタの内容、すべてのフラグのステータス、および最後に実行された命令のデコードされた形式を表示します。 Debug.exe は、r (register) サブコマンドを使用してブレークポイント アドレスを指定した場合と同じ情報を表示するようになりました。

プログラムをブレークポイントで停止しない場合、Debug.exe は割り込みコードを元の命令に置き換えません。

8086 オペレーション コード (opcode) の最初のバイトを含むアドレスにのみブレークポイントを設定できます。 10 個を超えるブレークポイントが設定されている場合、Debug.exe は次のメッセージを表示します。

bp error

ユーザー スタック ポインターの使用
ユーザー スタック ポインターは有効である必要があり、 g サブコマンドに使用できる 6 バイトが必要です。 g サブコマンドは、iret 命令を使用して、テストする必要があるプログラムにジャンプします。 Debug.exe はユーザー スタック ポインターを設定し、ユーザー フラグ、コード セグメント レジスタ、および命令ポインターをユーザー スタックにプッシュします。 (ユーザー スタックが無効であるか小さすぎる場合、オペレーティング システムが失敗する可能性があります。Debug.exe は、指定されたブレークポイント アドレスまたは指定されたアドレスにブレーク コード (0CCh) を配置します。

プログラムを再起動します
次のメッセージが表示された後は、プログラムを再起動しないでください。

Program terminated normally

プログラムを正しく実行するには、n (名前) サブコマンドと l (ロード) サブコマンドを使用してプログラムを再ロードする必要があります。

p サブコマンドを使用してループ、反復文字列命令、ソフトウェア割り込み、またはサブルーチンを実行する方法については、「関連トピック」を参照してください。
t サブコマンドを使用して命令を実行する方法については、「関連トピック」を参照してください。

現在メモリ内にあるプログラムを実行し、CS セグメントのブレークポイント アドレス 7550 まで実行するには、次のように入力します。

gcs:7550

Debug.exe を実行すると、

2 つのブレークポイントを設定するには、次のように入力します:


gcs:7550, cs:8000

デバッグ後に g サブコマンドを再度入力する場合。 exe がブレークポイントに遭遇すると、開始アドレスではなくブレークポイントの後の命令から実行が開始されます。


以上がdebug gコマンドの使い方は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。