#assembly #x86-64
#сборка #x86-64
Вопрос:
movq $0, %r11
movq $5, %r10
cmpq %r11, %r10
setl %r11b
После этого r11 не устанавливается. Но из того, что я понимаю, 0 меньше 5, так и должно быть.
Я использую gnu assembler и gcc.
as --version
GNU assembler (GNU Binutils for Ubuntu) 2.22
Ответ №1:
Похоже, вы путаете Intel и AT amp; T
cmpq %r11, %r10
в AT amp; T равно cmp r10, r11
в Intel.
Попытайтесь cmpq %r10, %r11
получить ожидаемый результат.
Комментарии:
1. Спасибо, это было просто, извините за шум.
2. @user2291758 такую ошибку является одним из buggiest ошибка в мир >о<