オプション:
- jz
- jnz
- jc
- jnc
私はこの質問に対する答えを持っていますが、それが何を求めているのかを正確に理解するのに苦労しています. それは何を意味し、このトピックをブラッシュアップするための良い方法は何ですか? ありがとう。
オプション:
私はこの質問に対する答えを持っていますが、それが何を求めているのかを正確に理解するのに苦労しています. それは何を意味し、このトピックをブラッシュアップするための良い方法は何ですか? ありがとう。
主に x86 の命令セットを使用しましたが、8080の命令セットでも十分近いようで、ジャンプ命令は同じです。
x86 (または 8080) では、C コードが次のようになっている場合
if (a != b)
{
code1
}
code2
コンパイラは通常、次のようなアセンブリ コードを生成します。
cmp a, b
jz label2
code1
label2:
code2
疑似コードで
a
してb
code1
)code1
code2
最適化コンパイラはコード レイアウトを変更する可能性があります (場合によっては大幅に変更されるため、どちらcmp
も表示されませんjz
)。ただし、それを予測することはできないため、最適化や再配置が行われていないと想定するのが最善の方法です。