2014-06-18 1 views
0
movq $0, %r11 
movq $5, %r10 
cmpq %r11, %r10 
setl %r11b 

이 이후에는 r11이 설정되지 않습니다. 그러나 내가 이해하는 바에 따르면 0은 5보다 작으므로 반드시 있어야합니다.어셈블러 조건부 집합이 실행되지 않았습니다.

gnu 어셈블러와 gcc를 사용하고 있습니다.

as --version 
GNU assembler (GNU Binutils for Ubuntu) 2.22 

답변

0

음은, 당신이 AT & T에서 T

cmpq %r11, %r10 인텔 사이 & AT 혼동 인텔의 cmp r10, r11 동일있는 것으로 보인다.

예상 결과를 얻으려면 cmpq %r10, %r11을 시도하십시오.

+0

감사합니다. 간단합니다. 소음에 죄송합니다. – user2291758

+1

@ user2291758 그 종류의 버그는 세계에서 가장 까다로운 버그 중 하나입니다. o < – ikh