티스토리 뷰

728x90
반응형

[Reversing] 전역 변수 지역 변수_어셈블리어


전역 변수는 모든 함수가 접근하고 사용할 수 있다.

지역 변수는 정의된 함수에서만 접근이 가능하다.


어셈블리어로는 어떻게 다르게 보이는지 확인해 본다.

전역 변수는 메모리 주소에 의해 참조되며,

지역 변수는 스택 주소에 의해 참조 된다.

즉, 전역 변수는 아래와 같으며

mov eax, dword_[주소]

mov dword_[주소], eax

mov ecx, dword_[주소]

push ecx

ds : [주소] > 전역변수


지역변수는 다음과 같다.([ebp-4]는 지역 변수 int x 가정)

mov dword ptr [ebp-4], 0

mov eax, [ebp-4]

mov [ebp-4], eax

mov ecx, [ebp-4]

push ecx

ss : [주소] > 지역변수

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
250x250