자료구조, 알고리즘/x64 assembly
백준 2741 N 찍기
lok2h4rd
2021. 10. 30. 21:31
자연수 N을 입력받고 N까지의 수를 1부터 차례대로 출력하는 코드를 작성하면 됩니다
어.. 뭐 기초라 뭐 말할 도 없지만 64bit 어셈블리에서는 스택을 16byte로 정렬해주어야 하는데(SSE instruction 때문)
입력하는 변수 그리고 루프 돌며 출력할 변수로 스택 또한 0x10(16byte)만 사용하면 되기 때문에 문제없이 작성하였습니다
코드의 주요한 것들만 보면 rbp-0x10을 1로 초기화해주고 rbp-0x8에 자연수 N을 입력받게 합니다
그리고 rbp-0x10을 rbp-0x8과 비교하여 rbp-0x10이 rbp-0x8보다 크게되면 _exit에서 코드를 종료하게 하며 같지 않게 되면 rbp-0x10의 값을 출력하게 됩니다