cmp と je/jg がアセンブリでどのように機能するかを理解したいと思います。Google でいくつかの例を見ましたが、まだ少し混乱しています。以下に、C 言語に変換しようとしているアセンブリ コードの一部と、対応する C コードを示します。それは正しい方法で実装されていますか、それともcmpの仕組みについて間違った理解をしていますか?
cmp    $0x3,%eax
je     A
cmp    $0x3,%eax
jg     B
cmp    $0x1,%eax
je     C
 int func(int x){
  if(x == 3)
    goto A;
  if (x >3)
    goto B;
  if(x == 1)
     goto C;
    A:
    ......
    B:
    ......
    C:
    ......