-1
저는 Intel x86 어셈블리가 처음입니다. 실제로이 프로그램을 작성한 첫 번째 프로그램입니다. 루프가 계속해서 다시 시작됩니다.
나는이 비슷한 루프를 사용하는 것을 시도하고있다 :mov ecx,5
numLoop:
[OTHER CODE - DOESN'T OVERWRITE ECX]
loop numLoop
이 나에게 잘 보이는, 그러나 그것은 단지 출력에 영원히 루프를하고 그 이유를 알아낼 수 없습니다. 나는 여분의 코드 도중 ECX
의 가치를 전혀 바꾸지 않는다.
사이에 코드를 표시하면'ecx '를 변경하는 함수에 대해'call'이 제대로 있습니다. –
@BSH, 나는 모두 printf와 scanf라고 부른다. 이 중 하나가 영향을 줄 수 있습니까? – PotWashMike
그렇습니다. 일부 함수는 먼저 스택에있는 모든 레지스터 값을 저장하지만 안전하기 위해 호출하기 전에 먼저 레지스터 값을 저장하십시오. –