1

アセンブリ プログラムで各命令を実行する際にかかるクロックを測定しようとしていますが、IAR では MACRO 内にブレークポイントを設定できません。MACRO 呼び出しの前にブレークポイントを設定し、ループから抜けるまで [ステップ オーバー] を数回クリックするだけで済みますが、実行された MACRO の各命令を確認できず、毎回同じ命令フラッシュ (1 つの命令) しか確認できません。 MACRO を呼び出します) 終了するまで、次の命令に移動します。

MACRO 内にブレークポイントを配置する方法を知っている人はいますか? または、MACRO 内の各命令にかかるクロックを測定する方法は?

ありがとう!

4

1 に答える 1

2

マクロの直前にブレークポイントを設定すると、マクロ関数によって生成されたコードがリストされている逆アセンブリ ウィンドウの任意の場所に別のブレークポイントを設定できます。逆アセンブルされたコードにブレークポイントを設定することで、好きな方法でコードをステップ実行できます。

マクロの実行に必要なクロック数またはプロセッサ サイクル数を知りたい場合は、プロセッサのデータ シートを使用して、逆アセンブリ ウィンドウに表示されるコンパイル済み出力の各命令のサイクル カウントを合計するか、 CPU Registers ウィンドウで CYCLECOUNTER 値を確認できます。これは、デバッガ シミュレータ モードまたは MSP の一部のファミリ (MSP430F5XXX で使用) で動作し、物理デバイスおよび JTAG/SPY-BI-WIRE インターフェイスで動作します。

于 2013-05-14T09:06:03.270 に答える