演算処理装置にて実行される複数の分岐点を有する一連の命令のそれぞれに対応するトレースデータと照合用データの一致または不一致に基づいて、前記複数の分岐点における命令の実行状況を判定する判定部と、前記演算処理装置にて前記一連の命令が複数回実行されるときに、前記複数の分岐点における命令の実行状況の組合せごとの回数を集計する集計部と、を有するデータ処理装置。請求項1において、前記照合用データは、情報処理装置により設定されるデータ処理装置。請求項1または2において、前記複数の分岐点における命令の実行状況は、分岐したか否か、および各分岐点が迂回されたことのいずれかまたは両方であるデータ処理装置。請求項1乃至3のいずれかにおいて、前記集計部にて集計された前記複数の分岐点における命令の実行状況の組合せごとの回数が情報処理装置により出力されるデータ処理装置。演算処理装置にて実行される複数の分岐点を有する一連の命令のそれぞれに対応するトレースデータと照合用データの一致または不一致に基づいて、前記複数の分岐点における命令の実行状況を判定し、前記演算処理装置にて前記一連の命令が複数回実行されるときに、前記複数の分岐点における命令の実行状況の組合せごとの回数を集計する、データ処理方法。上記のようなプロファイル手法を含む動的プログラム解析では、種々のハードウェア動作が生じる状況下でトレースデータが取得される。そのために、MCUにある程度長い時間にわたりプログラムを繰り返し実行させるので、トレースデータのデータ量は膨大になる。よって、ICEには、膨大なトレースデータを格納可能なメモリ容量が求められる。しかしながら、メモリ容量の拡張は、ICEの高コスト化や大型化につながるので、好ましくない。また、メモリ容量を拡張したとしても、膨大なトレースデータの中から所定の命令を検出し、その実行回数や実行時間を集計するための処理は、大きい負荷を伴う。そこで、本発明の目的は、簡易な構成で動的プログラム解析の効率を向上できるデータ処理装置等を提供することにある。一実施形態におけるデータ処理装置は、演算処理装置にて実行される複数の分岐点を有する一連の命令のそれぞれに対応するトレースデータと照合用データの一致または不一致に基づいて、前記複数の分岐点における命令の実行状況を判定する判定部と、前記演算処理装置にて前記一連の命令が複数回実行されるときに、前記複数の分岐点における命令の実行状況の組合せごとの回数を集計する集計部と、を有する。以下に説明する実施形態によれば、簡易な構成のデータ処理装置により、動的プログラム解析の効率を向上できる。以下、図面にしたがって実施形態について説明する。但し、適用される技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。まず、図1、図2を参照して、本実施形態の基本的な構成と動作について説明する。図1は、本実施形態におけるデータ処理装置の構成例を示す図である。データ処理装置2は、ターゲットシステム6の動的プログラム解析を行うために用いられる。データ処理装置2は、接続部18を介してホストコンピュータ4と接続される。また、データ処理装置2は、接続部20を介してターゲットシステム6と接続される。データ処理装置2は、たとえば、インサーキットエミュレータである。ホストコンピュータ4は、たとえば、操作入力手段と、各種情報の表示手段や印刷手段を備えたパーソナルコンピュータなどの情報処理装置である。データ処理装置2とホストコンピュータ4とは、たとえばUSBバスなどの通信バスで接続される。ターゲットシステム6は、たとえば、家庭用電化製品などの専用機器である。データ処理装置2とターゲットシステム6は、トレースデータ用のバスや制御信号用のバスなどの各種バスの並列接続により接続される。あるいは、トレースデータと制御信号を1本のバスでやり取りする接続形態であってもよい。データ処理装置2では、制御部8が、ホストコンピュータ4からの制御信号に応答して、ターゲットシステム6の演算処理装置14にプログラムの実行停止を制御する制御信号を送る。ターゲットシステム6では、演算処理装置14が、複数の分岐点を含む制御用のプログラムPRGを実行することで、ターゲットシステム6の動作を制御する。演算処理装置14は、たとえば、MCUである。プログラムPRGは、たとえばターゲットシステム6内のプログラムメモリ16に格納される。プログラムメモリ16は、たとえば、ROMReadOnlyMemoryである。プログラムメモリ16は、プログラムPRGに含まれる命令を、それぞれ割り当てられたアドレスに格納する。演算処理装置14は、プログラムメモリ16のアドレスを指定して各命令を読み出し、これを実行する。このとき、演算処理装置14は、実行する各命令の格納アドレスをトレースデータとしてデータ処理装置2の制御部8に送る。データ処理装置2の制御部8は、演算処理装置14からトレースデータを受け取り、判定部10に送る。すると、判定部10と集計部12が、後に詳述する方法でトレースデータの処理を行う。データ処理結果はホストコンピュータ4に送られる。そして、ホストコンピュータ4は、データ処理結果を表示、印刷等して操作者に提供する。操作者は、提供された情報に基づいて、ターゲットシステム6の動的プログラム解析を行う。本実施形態では、演算処理装置14がトレースデータをデータ処理装置2に送る場合を例とする。しかし、プログラムPRGは、たとえばデータ処理装置2内のプログラムメモリ図示省略に格納することも可能である。その場合、データ処理装置2の制御部8は、データ処理装置2内のプログラムメモリに格納される各命令を演算処理装置14に送り、これを実行させる。そして、制御部8が、実行された命令の格納アドレスからトレースデータを生成し、判定部10に送る。データ処理装置2において、判定部10は、ターゲットシステム6から取り込んだトレースデータと照合用データの一致または不一致に基づいて、プログラムPRGの複数の分岐点における命令の実行状況を判定する。ここで、図2を用いて、判定部10の動作について説明する。図2には、演算処理装置14が実行するプログラムPRGが模式的に示される。プログラムPRGは、たとえば、メインルーチンMR1と、サブルーチンSR1、及びSR2を有する。各ルーチンでは、開始から終了まで、一連の命令が規定される。メインルーチンMR1は、分岐点以下、分岐ポイントというB0及びB1を有する。メインルーチンMR1における命令の実行は、分岐ポイントB0でサブルーチンSR1に、また分岐ポイントB1でサブルーチンSR2に分岐する。また、サブルーチンSR1及びSR2での命令の実行が終了すると、メインルーチンMR1に戻って命令の実行が継続される。分岐ポイントB0及びB1には、所定の分岐条件の成立不成立を確認する命令、分岐条件が成立するときの分岐命令、及び、分岐条件が成立しない場合に実行される命令などが含まれる。分岐条件は、たとえば所定の演算結果が得られることや、ターゲットシステム6における各種割込みの発生などである。なお、ここでは便宜上、2つの分岐ポイントB0、及びB1を例として示すが、分岐ポイントの数は、任意の数とすることが可能である。また、分岐ポイントを、メインルーチンだけでなく、サブルーチンに設定することも可能である。あるいは、分岐ポイントを、サブルーチンの開始アドレスを示す割込みベクタに設定してもよい。判定部10は、分岐ポイントB0、B1の順で、各分岐ポイントにおける命令の実行状況を判定する。分岐命令の実行状況は、たとえば、分岐命令が実行されて分岐が発生する分岐、分岐命令が実行されずに、その後の命令が実行される通過である。さらに、たとえば、分岐ポイントが迂回される分岐通過なしである。たとえば、分岐ポイントB0で分岐が発生するときには、分岐命令が実行され、サブルーチンSR1の命令が実行される。判定部10は、たとえば、分岐ポイントB0の分岐命令の格納アドレス、サブルーチンSR1に含まれる命令の格納アドレス、またはサブルーチンSR1を示す割込みベクタの格納アドレスを照合用データとして保持しておく。そして、これに一致するトレースデータが入力されたときに、判定部10は、分岐ポイントB0における命令の実行状況を分岐と判定する。一方、分岐が発生しないときには、分岐ポイントB0における分岐命令が実行されず、それ以降の命令が実行される。判定部10は、たとえば、かかる命令の格納アドレスを照合用データとして保持しておく。そして、これに一致するトレースデータが入力されたときに、判定部10は、分岐ポイントB0における分岐命令の実行状況を通過と判定する。なお、分岐ポイントB1における分岐及び通過も、同様にして判定される。次に、分岐ポイントB0が迂回されるときには、分岐ポイントB0に対応するトレースデータが入力されず、メインルーチンMR1における分岐ポイントB0以降の命令が実行される。これは、たとえば、メインルーチンMR1において分岐ポイントB0以前に他のサブルーチンへの分岐が発生し、その後、分岐ポイントB0以降に戻って命令が実行される場合などである。このような場合を判定するために、判定部10は、分岐ポイントB0以降に到達したことを示すデータを照合用データとして保持しておく。かかるデータは、たとえば、たとえば分岐ポイントB1における分岐条件の成立不成立を確認する命令などである。そして、分岐ポイントB0における命令に対応するトレースデータが入力されず、照合用データに一致するトレースデータが入力されたときに、判定部10は、分岐ポイントB0における分岐命令の実行状況を分岐通過なしと判定する。なお、分岐ポイントB1における分岐通過なしについては、次のように判定される。たとえば、判定部10は、分岐ポイントB0に対応する照合用データを保持しておく。そして、分岐ポイントB0で分岐または通過を判定した後、分岐ポイントB1を示すトレースデータが入力されずに、照合用データと一致し分岐ポイントB0に到達したことを示すトレースデータが入力されたときに、判定部10は、分岐ポイントB1が分岐通過なしと判定する。図1に戻る。データ処理装置2において、集計部12は、演算処理装置14にてプログラムPRGが複数回実行されるときに、複数の分岐ポイントB0、B1における命令の実行状況の組合せごとの回数を集計する。プログラムPRGは、ホストコンピュータ4の制御のもと、操作者が任意に設定する複数回実行される。このとき、プログラムPRGのメインルーチンMR1が1回実行されるごとに、複数の分岐ポイントB0、B1における命令の実行状況の組合せのいずれかが成立する。図2に示した例では、2つの分岐ポイントB0及びB1における命令の実行状況の組合せは、8=3^2-1通りである。たとえば、分岐ポイントB0についての分岐、通過、または分岐通過なしの判定結果と、分岐ポイントB1についての分岐、通過、または分岐通過なしの判定結果との可能な組合せは、9=3^2通りである。しかし、分岐ポイントB0及びB1の両方が迂回される場合、トレースデータと照合用データの一致不一致によってはこれを判定することができない。よって、分岐ポイントB0及びB1の両方が分岐通過なしの場合は、可能な組合せの9通りから除外される。集計部12は、成立する組合せごとにその回数をカウントする。そして、集計部12は、組見合わせごとの回数を集計結果として、ホストコンピュータ4に送る。ホストコンピュータ4は、たとえばアプリケーションプログラムにより集計結果を加工して表示または印刷する。加工の方法は、たとえば、テーブル化、グラフ化等が可能である。操作者は、かかる集計結果を参照して、プロファイル手法によるプログラムPRGの動的解析を行うことができる。次に、データ処理装置2の実施例について説明する。図3は、データ処理装置2の詳細な構成例を示す図である。図3に示す構成は、3つの分岐ポイントにおける命令の実行状況を判定する例である。ここでは、図4に示すように、プログラムPRGにおいて、メインルーチンMR1に3つの分岐ポイントB0、B1、及びB2が設定される。そして、分岐ポイントB0、B1、B2の順に、命令の実行状況が判定される。なお、ここに示す例は、分岐ポイントがサブルーチンに設定される場合にも適用される。判定部10は、複数のアドレスレジスタ22、アドレス比較回路24、分岐判定回路26、及び判定結果格納部28を有する。アドレスレジスタ22は、分岐ポイントB0~B3のそれぞれについての照合用データを格納する。アドレスレジスタ22には、ホストコンピュータ4から照合用データが書き込まれて設定される。操作者は、動的プログラム解析上重要な箇所の分岐ポイントを指定して、ホストコンピュータ4により照合用データをアドレスレジスタ22に設定する。アドレス比較回路24は、ターゲットシステム6から送られるトレースデータと、アドレスレジスタ22に格納された照合用データの一致、不一致を判定する。そして、その結果に基づいて、分岐判定回路26が判定結果格納部28に判定結果を示す値を格納する。なお、アドレスレジスタ22と判定結果格納部28は、判定部10の外部、たとえば集計部10の内部あるいはその外部に設けられてもよい。判定結果格納部28は、分岐ポイントB0について、分岐を示す一対の分岐判定フラグAb0及びAb1と、通過を示す一対の通過判定フラグAp0及びAp1を有する。また、判定結果格納部28は、分岐ポイントB1について、分岐を示す一対の分岐判定フラグBb0及びBb1と、通過を示す一対の通過判定フラグBp0及びBp1を有する。さらに、判定結果格納部28は、分岐ポイントB2について、分岐を示す一対の分岐判定フラグCb0及びCb1と、通過を示す一対の通過判定フラグCp0及びCp1を有する。判定結果格納部28では、各判定フラグは、たとえば、初期値0に設定される。そして、判定結果に基づいて次のように値が設定される。分岐ポイントB0を例とすると、分岐が判定されたときに、1つ目の分岐判定フラグAb0には、1が設定される。一方、1つ目の通過判定フラグAp0には、通過が判定されたときに1が設定される。そして、2つ目の分岐判定フラグAb1には、分岐判定フラグAb0が1であって、再度同じ分岐ポイントB0で分岐が判定されたときに、1が設定される。また、2つ目の通過判定フラグAp1には、通過判定フラグAp0が1であって、再度同じ分岐ポイントB0で通過が判定されたときに、1が設定される。分岐ポイントB1、B2についても同様にして、各判定フラグに値が設定される。図5は、判定結果格納部28の設定の具体例を示す図である。図5には、分岐ポイントB0~B2のそれぞれについて、対応する判定フラグと、各判定フラグに1が設定される条件が示される。たとえば、分岐ポイントB0について、分岐判定フラグAb0及びAb1と、通過判定フラグAp0及びAp1には、まず初期値0が設定される。そして、分岐が判定されたとき、分岐判定フラグAb0に1が設定される。一方、通過が判定されたとき、通過判定フラグAp0に1が設定される。また、プログラムPRGの過去の実行時に分岐判定フラグAb0が1に設定されAb01、新たに分岐が判定されたとき、分岐判定フラグAb1に1が設定される。同様に、プログラムPRGの前回の実行時に通過判定フラグAp0に1が設定されAp01、新たに通過が判定されたとき、通過判定フラグAp1に1が設定される。また、分岐ポイントB1について、分岐判定フラグBb0及びBb1と、通過判定フラグBp0及びBp1には、まず初期値0が設定される。そして、分岐が判定されたとき、分岐判定フラグBb0に1が設定される。一方、通過が判定されたとき、通過判定フラグBp0に1が設定される。また、プログラムPRGの過去の実行時に分岐判定フラグBb0が1に設定されBb01、新たに分岐が判定されたとき、分岐判定フラグBb1に1が設定される。同様に、プログラムPRGの前回の実行時に通過判定フラグBp0に1が設定されBp01、新たに通過が判定されたとき、通過判定フラグBp1に1が設定される。そして、分岐ポイントB2について、分岐ポイントB0について、分岐判定フラグCb0及びCb1と、通過判定フラグCp0及びCp1には、まず初期値0が設定される。そして、分岐が判定されたとき、分岐判定フラグCb0に1が設定される。一方、通過が判定されたとき、通過判定フラグCp0に1が設定される。また、プログラムPRGの過去の実行時に分岐判定フラグCb0が1に設定されCb01、新たに分岐が判定されたとき、分岐判定フラグCb1に1が設定される。同様に、プログラムPRGの前回の実行時に通過判定フラグCp0に1が設定されCp01、新たに通過が判定されたとき、通過判定フラグCp1に1が設定される。なお、ここでは、分岐ポイントがメインルーチンまたはサブルーチンに設定される場合の判定フラグの例が示される。しかし、分岐ポイントが割込みベクタに設定される場合には、割り込みベクタに書き込まれたアドレスに必ず分岐するので、実行状況は分岐だけとなる。よって、この場合、分岐ポイントに対応する通過判定フラグを省略してもよい。図3に戻り、集計部12は、カウンタ32とカウンタ制御回路30とを有する。カウンタ32は、分岐ポイントにおける分岐命令の実行状況の組合せごとに設けられる。カウンタ制御回路30は、判定結果格納部28の判定フラグの値に基づいて、分岐命令の実行状況の組合せの数をカウントアップする。ここで、n個nは2以上の整数の分岐ポイントについて、分岐、通過、または分岐通過なしの3通りの判定結果が対応付けられる場合、可能な組合せの数は3^n個である。しかし、上述したように、n個の分岐ポイントのすべてにおいて分岐通過なしとなる場合は判定できないので、かかる場合が除外される。よって、カウンタ32の個数は、3^n-1個である。よって、ここでは、3個の分岐ポイントB0~B2について、26=3^3-1個のカウンタ32が設けられる。分岐ポイントB0~B2における命令の実行状況の組合せは、図6において3次元のテーブルにより示される。図6では、分岐ポイントB0~B2それぞれの分岐、通過、及び分岐通過なしの組合せから、分岐ポイントB0~B2の全てで分岐通過なしとなる組合せを除外した、26通りの組合せC1~C26が示される。n個の分岐ポイントを設定した場合、すべての分岐ポイントで分岐または通過が判定された場合、分岐ポイントごとに、通過判定フラグまたは分岐判定フラグに1が設定される。よって、かかる場合の組合せの数は2^n個である。ここでは、3箇の分岐ポイントB0~B2が設定されるので、8=2^3通りの組合せとなる。また、n個の分岐ポイントのうち一箇所以上で分岐通過なしが判定される組合せの数は、3^n-2^nである。しかし、すべての分岐ポイントで分岐通過なしが判定される場合が除外されるので、カウントされる組合せ数は、3^n-2^n-1である。ここでは、3箇の分岐ポイントB0~B2が設定されるので、18=3^3-2^3-1通りの組合せとなる。このうち、最後に判定される分岐ポイントで分岐通過なしが判定される場合は、分岐または通過が判定された他の分岐ポイントにおいて、再度分岐または通過が判定された時点で組合せが確定する。設定した最後に判定される分岐ポイントで分岐通過なしと判定される組合せ数は、3^n-1で表されるが、すべての分岐ポイントを通過しなかった場合は除外されるので3^n1-1となる。たとえば、3箇の分岐ポイントB0~B2が設定される場合、分岐ポイントB2において分岐通過なしと判定される場合は8=3^3-1-1である。この場合、分岐ポイントB0またはB1で分岐または通過が判定された時点で組合せが確定する。一方、最後に判定される分岐ポイントで分岐または通過が判定される組合せの数は、1箇所以上で分岐通過なしと判定される組み合わせから、最後に分岐ポイントと設定した分岐ポイントを分岐通過なしと判定される組み合わせを除いた組み合わせとなるので3^n-2^n-1―となる。よって、3^n-2^n―3^と表される。たとえば、3箇の分岐ポイントB0~B2が設定される場合、分岐ポイントB2で分岐または通過が判定される組合せ数は、10=3^3-2^3―3^である。次に、[1]すべての分岐ポイントB0~B2において分岐または通過が判定された場合、[2]分岐ポイントB0またはB1で分岐通過なしが判定され、分岐ポイントB1で分岐または通過が判定された場合、及び、[3]分岐ポイントB0またはB1で分岐通過なしが判定され、分岐ポイントB1で分岐通過なしが判定された場合の3通りに場合分けして、カウントアップの条件を示す。[1]すべての分岐ポイントB0~B2において分岐または通過が判定された場合組合せC1のカウントアップ条件:Ab01andBb01andCb01組合せC2のカウントアップ条件:Ab01andBb01andCp01組合せC4のカウントアップ条件:Ab01andBp01andCb01組合せC5のカウントアップ条件:Ab01andBp01andCp01組合せC10のカウントアップ条件:Ap01andBb01andCb01組合せC11のカウントアップ条件:Ap01andBb01andCp01組合せC13のカウントアップ条件:Ap01andBp01andCb01組合せC14のカウントアップ条件:Ap01andBp01andCp01[2]分岐ポイントB0またはB1で分岐通過なしが判定され、分岐ポイントB2で分岐または通過が判定された場合組合せC7のカウントアップ条件:Ab01andCb01組合せC8のカウントアップ条件:Ab01andCp01組合せC16のカウントアップ条件:Ap01andCb01組合せC17のカウントアップ条件:Ap01andCp01組合せC19のカウントアップ条件:Ab0orAp00andBb01andCb01組合せC20のカウントアップ条件:Ab0orAp00andBb01andCp01組合せC22のカウントアップ条件:Ab0orAp00andBp01andCb01組合せC23のカウントアップ条件:Ab0orAp00andBp01andCp01組合せC25のカウントアップ条件:Ab0orAp00andBb0orBp00andCb01組合せC26のカウントアップ条件:Ab0orAp00andBb0orBp00andCp01[3]分岐ポイントB0またはB1で分岐通過なしが判定され、分岐ポイントB2で分岐通過なしが判定された場合組合せC3のカウントアップ条件:Ab01andBb01and組合せC6のカウントアップ条件:Ab01andBp01and組合せC9のカウントアップ条件:Ab01and組合せC12のカウントアップ条件:Ap01andBb01and組合せC15のカウントアップ条件:Ap01andBp01and組合せC18のカウントアップ条件:Ap01and組合せC21のカウントアップ条件:andBb01and組合せC24のカウントアップ条件:andBp01andカウンタ制御回路30は、上記[1]~[3]における各条件式において、第1項から順次、判定フラグの値を確認する。そして、カウントアップ条件が成立したときに、カウンタ制御回路30は対応するカウンタ32をカウントアップする。これにより、対応する組合せの数が集計される。ここで、分岐ポイントB0~B1のいずれかが分岐通過なしと判定される、[2]及び[3]の場合における組合せのカウントアップについて説明する。たとえば、[2]の組合せC7、C8、C16、またはC17の場合、分岐ポイントB0についてAb01またはAp01を検出した後、分岐ポイントB2についてCb01またはCp01を検出したときに、カウンタ制御回路30は、組合せC7、C8、C16、またはC17に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB0の分岐通過なしに対応する組合せの数が集計される。また、組合せC19、C20、C22、またはC23の場合、分岐ポイントB0についてAb00またはAp00のまま、分岐ポイントB1についてBb01またはBp01を検出し、さらに、分岐ポイントB2についてCb01またはCp01を検出したとき、カウンタ制御回路30は、組合せC19、C20、C22、またはC23に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB0の分岐通過なしに対応する組合せの数が集計される。あるいは、組合せC25またはC26の場合、分岐ポイントB0についてAb00またはAp00、分岐ポイントB1についてBb00またはBp00のまま、分岐ポイントB2についてCb01またはCp01を検出したとき、カウンタ制御回路30は、組合せC25またはC26に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB0及びB1の分岐通過なしに対応する組合せの数が集計される。[3]の組合せC3の場合、Ab01を検出した後、Bb01を検出し、その後、Ab11、Ap01、Bb11、Bp01のいずれかを検出したときに、カウンタ制御回路30は、組合せC3に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB2の分岐通過なしに対応する組合せの数が集計される。また、組合せC6の場合、Ab01を検出した後、Bp01を検出し、その後、Ab11、Ap01、Bb01、Bp11のいずれかを検出したときに、カウンタ制御回路30は、組合せC6に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB2の分岐通過なしに対応する組合せの数が集計される。また、組合せC12の場合、Ap01を検出した後、Bb01を検出し、その後、Ab01、Ap11、Bb11、Bp01のいずれかを検出したときに、カウンタ制御回路30は、組合せC12に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB2の分岐通過なしに対応する組合せの数が集計される。また、組合せC15の場合、Ab01を検出した後、Bp01を検出し、その後、Ab01、Ap11、Bb01、Bp11のいずれかを検出したときに、カウンタ制御回路30は、組合せC15に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB2の分岐通過なしに対応する組合せの数が集計される。また、組合せC9の場合、Ab01を検出した後、Ab11、Ap01のいずれかを検出したときに、カウンタ制御回路30は、組合せC9に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB1及びB2の分岐通過なし対応する組合せの数が集計される。また、組合せC18の場合、Ap01を検出した後、Ab01、Ap11のいずれかを検出したときに、カウンタ制御回路30は、組合せC18に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB1及びB2の分岐通過なし対応する組合せの数が集計される。そして、組合せC21の場合、Ab0またはAp00のままBb01を検出した後、Ab01、Ap01、Bb11、Bp01のいずれかを検出したときに、カウンタ制御回路30は、組合せC21に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB0及びB2の分岐通過なしに対応する組合せの数が集計される。また、組合せC24の場合、Ab0またはAp00のままBp01を検出した後、Ab01、Ap01、Bb01、Bp11のいずれかを検出したときに、カウンタ制御回路30は、組合せC24に対応するカウンタ32をカウントアップする。これにより、分岐ポイントB0及びB2の分岐通過なしに対応する組合せの数が集計される。なお、すべての分岐ポイントにおいて分岐通過なしと判定されるパターンC26については、カウント値が0であるので、カウンタ32を省略してもよい。カウントアップが終了したら、カウンタ制御回路30は、各判定フラグで値1が設定された判定フラグをネゲートする。ここで、組合せC3、C6、C9、C12、C15、C18、C21、及びC24では、対応するカウンタ32のカウントアップ後、次のカウンタ32の制御を行うために、判定フラグAb1、Ap1、Bb1、Bp1、Cb1、及びCp1のうちいずれかが1となっている。よって、その場合、カウンタ制御回路30は次のように処理する。Ab11の場合:Ab01としAb1をネゲートするAp11の場合:Ap01としAp1をネゲートするBb11の場合:Bb01としBb1をネゲートするBp11の場合:Bp01としBp1をネゲートするCb11の場合:Cb01としCb1をネゲートするCp11の場合:Cp01としCp1をネゲートするその後、判定部10は、プログラムPRGが実行されるごとにトレースデータと照合用データの比較を継続し、各分岐ポイントでの分岐命令の実行状況に応じて各判定フラグの値を設定する。これにより、集計部12は、26種類の組合せの回数を集計することができる。集計部12は、集計を終了すると、上記の集計結果をホストコンピュータ4に出力する。集計終了は、たとえば、操作者がホストコンピュータ4により集計終了を指示したときである。または、操作者がホストコンピュータ4により予めプログラムPRGの実行回数を設定しておき、その実行回数が終了したときである。そして、ホストコンピュータ4は、集計結果を表示または印刷して操作者に提供する。図7は、集計結果の出力例である。組合せC1~C26に対応するPattern1~Pattern26の実行回数が示される。操作者は、このような集計結果から、実行頻度の高い、プログラムPRGの動作パターンを知ることができる。かかる結果に基づき、操作者は、動的プログラム解析を実行し、チューニングポイントを特定してプログラムPRGの最適化を行うことができる。最適化は、プログラムPRGの一連の命令の格納アドレスを変更することや、プログラムPRGにおける命令の順序を変更することを含む。そして、たとえば、最も実行回数の多い動作パターンたとえばPattern9の実行速度が向上するような最適化を行うことで、プログラムPRGの実行速度を向上させることができる。あるいは、もっとも好ましい動作パターンがあらかじめ特定されている場合であって、その動作パターンが想定した実行回数より低い場合には、その実行回数を増加させるようなプログラムPRGの最適化が可能となる。本実施形態におけるデータ処理装置によれば、操作者は、分岐命令を指定してその実行状況の組合せを取得できる。その際、データ処理装置は、大量のトレースデータを保持することなく、分岐命令の実行状況の組合せを集計するので、メモリ容量を削減することができる。