Tips
[Tips] 어셈블리어 코딩, div 명령어 오류
OZ1NG
2019. 5. 16. 00:45
가끔씩 어셈블리어로 코딩을 할때 div 명령어를 옳게 사용해도 에러가 떠서 프로그램이 그냥 종료되는 경우가 있습니다.
이때 디버깅을 해보면 보통
위와 같이 Integer overflow가 일어났다고 합니다.
[Integer overflow가 뜨는 이유]
https://stackoverflow.com/questions/5606895/integer-overflow-problem
영알못인 제가 대충 해석한 바로는 edx에 뭔 값이 있으면 어떠한 연산에 의해 edx에 뭔 값이 저장되고, 그 값이 Integer overflow가 되기 때문에 안된다는 것입니다.
아무튼 결론적으로 이 버그를 해결하는 방법은
edx레지스터를 0으로 초기화를 하고 div 명령어를 사용하시면 해결 됩니다.