組み立て初心者ですが、とても楽しいです。とにかく一つ質問があります...
cmpw cr7, %r29, %r8
そのコードはと同等ですif cr7 > %r29 and %r8
か?
r29とr8を比較し、結果をcr7に配置します。
言い換えると:
cr7 = r29-r8
いくつかのPPCドキュメントを読んだ後、cr(比較レジスタ)のように見え、より小さい、より大きい、等しいを表すコード化された値を取得します。
less: 0x100
greater: 0x010
equal: 0x001
x86などの他のアーキテクチャでは、CR自体はありませんが、ZF、SF、CFなどのフラグのグループ(ゼロ、符号、およびキャリーフラグ)があります。これらは、減算などの算術演算中に常に設定されます。したがって、比較は基本的に減算と同じです。