8085 マイクロプロセッサの SHLD 命令ではなぜ 5 マシン サイクルかかるのですか?
8085 マイクロプロセッサの SHLD 命令は、次の理由により 5 マシン サイクルを必要とします。
1. オペコードのフェッチ :最初のマシン サイクルは、メモリから SHLD 命令のオペコードをフェッチするために使用されます。
2. ソース レジスタのフェッチ :2 番目のマシン サイクルは、ソース レジスタ (データがシフトされるレジスタ) の内容をフェッチするために使用されます。
3. 宛先レジスタフェッチ/メモリアドレスフェッチ :3 番目のマシン サイクルは、宛先レジスタ (データのシフト元のレジスタ) の内容をフェッチするか、宛先がメモリの場合はメモリ アドレスをフェッチするために使用されます。
4.アキュムレータを回転します。 :4 番目のマシン サイクルは、アキュムレータを 1 ビット位置だけ左に回転させるために使用されます。
5. ストア アキュムレータ :5 番目で最後のマシン サイクルは、回転されたアキュムレータをデスティネーション レジスタまたはメモリに格納するために使用されます。
SHLD 命令は、アキュムレータを回転させながら、ソース レジスタ (データのシフト先のレジスタ) からデスティネーション レジスタ (データのシフト元のレジスタ) またはメモリにデータをシフトします。アキュムレータの回転により、XCHG 命令と比較して 1 マシン サイクルが追加されます。XCHG 命令では 4 マシン サイクルしか必要としません。