2013. 8. 27. 01:00

어셈블리어 - MOV,LEA 명령어

MOV , LEA 명령어란?

자 이제 본격적인 함수 명령어 공부에 들어갈텐데요.

공부하기 전에 이 명령어들은 컴퓨터가 우리 명령을 알아 들을 수 있도록 해주는 것이라는건

명심해야합니다. 간혹 내가왜 이런걸 공부하고 있지? 라시는분들도 계시기때문에..

 

MOV

└MOVE 의 줌말

예제 : mov 인자1,인자2

인자2를 인자1으로 을 넣는 일을 하는 명령어입니다.

레지스터 EAX로 예를 들어본다면

mov eax,100

은 100을 eax 저장공간에 값을 넣는다는 뜻이 됩니다.

그럼 eax엔 100의 값이 저장되있습니다.

주의할 점은 인자하나만으론 이 함수 사용이 안된다는것이고

인자1,2 가 모두 숫자로 이루어 져있으면 안됩니다.

대신 인자1,2에 모두 레지스터로 이루어 져있다면 괜찮습니다. 

LEA

예제 : lea 인자1,인자2

인자2를 인자1으로 주소를 넣는 일을 하는 명령어입니다.

레지스터 EAX,ESI로 예를 들어본다면

lea eax, dword ptr ds:[esi]

은 esi를 eax 저장공간에 주소를 넣는것입니다.

그럼 eax엔 esi의 주소가 저장되있습니다.

 

 

둘의 차이점을 확실히 아셔야합니다.

많이들 해깔려하시더라구요.