SW/C

13-2 함수의 데이터 공유 방법

seungH 2025. 3. 30. 21:21

값을 복사하여 전달하는 방법

main:
    mov r0, #10    ; x 값을 r0에 저장
    mov r1, #20    ; y 값을 r1에 저장
    bl func        ; 함수 호출 (r0, r1에 값 전달)
    bx lr          ; 리턴

func:
    add r0, r0, #1 ; a = a + 1 (r0 값을 변경)
    bx lr          ; 리턴 (원래 함수로 복귀)

메모리에 저장되어있는 값을 레지스터에 복사하고 이거를 인자로 보내는 것이므로 값을 복사하여 전달하는 방식인것이다.

주소를 전달하는 방식

void add_ten(int *pa);

'SW > C' 카테고리의 다른 글

17-1 구조체  (0) 2025.03.30
12-1 문자열과 포인터  (0) 2025.03.30
11-2 버퍼를 사용하는 입력함수  (0) 2025.03.30
10-1 배열과 포인터  (0) 2025.03.30
9-2 포인터 완전정복  (0) 2025.03.30