Tuuna Computer Science

[Assembly] gets함수와 atoi함수를 어셈블리어로 구현하기 본문

Assembly

[Assembly] gets함수와 atoi함수를 어셈블리어로 구현하기

GuTTe 2019. 3. 1. 02:39
이진탐색으로 어셈블리어로 구현해보면 어떨까라는 생각에 

구현하던중 read 시스템콜은 입력받은 것을 문자열로 처리하는 것을 깨닫게 됨. 

그래서 고민끝에 atoi함수를 구현하기로 결심함. + gets함수도 조금 구현해서 어셈블리어 코드 내부에서 메모리할당 + 정수변환까지 계획을 세우고 모듈화 해봄. 

함수 프로토타입 : int atoi_asm(void)
반환값 : 입력한 문자열에 해당한 정수 

단) 10진수를 기준으로 계산되어짐. 
16진수의 경우 나중에 ㅎ 

궁금한 점은 main에서 이 함수를 호출하면 스택정리가 잘 안된건지 다음 printf를 호출할 때 segmentation fault가 떴는데 func()이라는 함수를 만들고 거기서 호출하니 별 문제 X ... 

main함수의 호출규약 문제인가 나중에 따로 알아봐야지 





Comments