メモリ パネル/ウォッチ パネルでは,プログラムの実行中に,リアルタイムにメモリ/ウォッチ式の内容を表示更新,および書き換えることができるリアルタイム表示更新機能を備えています。
このリアルタイム表示更新機能を有効化することにより,プログラムが停止している状態だけでなく,実行中の状態であっても,メモリ/ウォッチ式の値の表示/変更を行うことができます。
なお,リアルタイム表示更新機能は,デバッグ・ツールが持つRRM機能(読み込み)【IECUBE】【シミュレータ】,RAMモニタ機能(読み込み)(【シミュレータ】以外),DMM機能(書き込み)により実現され,各機能ごとに読み込み/書き込みが可能な対象領域は異なります。
まず,リアルタイム表示更新機能を有効にするために,プロパティ パネルの[デバッグ・ツール設定]タブ上において,次の基本設定を行ってください。
メモリ パネル/ウォッチ パネルにおける値の書き換え方法についての詳細は,「2.10.1.3 メモリの内容を変更する」/「2.10.6.6 ウォッチ式の内容を変更する」を参照してください。 |
プログラム実行中に,リアルタイムにメモリ/ウォッチ式の内容を読み込む機能です。
この領域に割り当てられているメモリ/ウォッチ式は,常にリアルタイムな表示が可能です。
プログラムの実行を一瞬停止して,ソフトウエア・エミュレーションによりメモリ/ウォッチ式の内容を読み込む機能です。
RAMモニタ機能による読み込みが可能な領域は次のとおりです。
ただし,RAMモニタ機能を有効にするためには,リアルタイム表示更新機能の基本設定に加え,次の設定が必要となります。
プログラム実行中にリアルタイムにメモリ/ウォッチ式に値を書き込む機能です。
ただし,DMM機能を有効にするためには,リアルタイム表示更新機能の基本設定に加え,次の設定が必要となります。
RRM機能やRAMモニタ機能で値を読み出す変数のサイズが複数バイト(2バイト/4バイト/8バイト)の場合,変数へ値を代入する処理が2回に分けて行われる場合があります。 |
次の例では,“命令1”実行完了後から,“命令2”実行完了前に読み出しがあった場合,下位2バイトのみ代入が完了した変数“value_a”の値を読み出します。
MOVW AX, #2800H MOVW !_value_a, AX ;命令1:変数“value_a”の下位2バイトを代入 MOVW AX, #0EE6BH MOVW !_value_a+2, AX ;命令2:変数“value_a”の上位2バイトを代入 |
なお,メモリ パネル/ウォッチ パネルでは,リアルタイム表示更新機能を行っているメモリ値/ウォッチ式がピンク色に強調表示されます。
さらに,IECUBEを使用している場合のメモリ パネルでは,RRM機能によるリアルタイム表示更新を行っているメモリ値の背景色が,アクセス状態に従って次のように変化します(表示の際の文字色/背景色は,オプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存します)。