프로그래밍/C++

#11. 함수 기초

코딩하는상후니 2022. 7. 15. 22:07

 
*함수  (  프로시저 procedure 서브루틴 subroutine )
 
ex)
PRINT_MSG:
    PRINT_STRING msg
    NEWLINE
    ret
 

 
*두 값 중 더 큰 값을 반환하는 max
=> 값은 어떻게 넘겨받을까 ?? 반환은 어떻게 할까 ??
=> 인자가 10개라면 어떻게 할까 ??
=> eax, ebx 에 이미 중요한 값이 있다면 어떻게 할까??
=> .data  .bss  사용하면 ??
=> 그러면 인자를 도대체 몇개를 할당해야 하지 ??
 
결과적으로, '스택 ( Stack )' 이라는 메모리 영역 사용을 사용하게 됨.
=> 매개변수 전달
=> 돌아갈 주소 관리
 
=> 다른 메모리 구조가 필요했다.
=> 유효 범위의 개념이 있다.  -> (함수 호출)
=> 정리의 개념이 있다. -> (함수 종료)
=> 유동적으로 유효 범위가 확장 가능해야함. -> (함수 안에 함수 호출)
 

본 내용은 인프런의 루키스님 강의를 듣고 정리한 내용입니다.

'프로그래밍 > C++' 카테고리의 다른 글

#13. 정수  (0) 2022.07.16
#12. 스택 메모리 & 스택 프레임 ( Stack Frame )  (0) 2022.07.15
#10. 배열과 주소  (0) 2022.07.15
#9. 어셈블리 반복문  (0) 2022.07.15
#8. 어셈블리 분기문  (0) 2022.07.15