反復ごとにRAXをデクリメントしています。RAXがゼロの場合、プログラムはフローを変更する必要があります。
# AT&T syntax
start_calc_factorial:
decq %rax
cmpq $0, %rax
je quit_calc_factorial
mulq %rcx
jmp start_calc_factorial
ただし、プログラムが終了することはありません。デバッガーは、RAXの値が(おそらくアンダーフローですが、命令0xa0257c7238581842
が原因ではないはずです)であることを通知します。je
RAXの初期値は7です。
何が問題なのですか?