1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | _asm { mov ebx, [ebp - 4h] mov dword ptr[ebp - 4h], 10 mov eax, [ebp - 4] mov ecx, ebp //lea 에서 [] 은 한번 더 거처가는게 아니고 그냥 그 안에 있는 것들의 연산 결과 값이며 + 연산등을 쓸 수가 있다 //lea eax, ecx //lea 는 [] 이 와야만 한다 , 그냥 쓰면 이건 없는 명령어 lea eax, [ecx + 4] //[]를 쓰면 이 안에 사칙 연산을 쓸 수가 있게 되고 연산된 결과를 복사한다 //mov edx, ecx + 4 //[] 없이 + 연산자 사용 하지 못함 mov edx, ecx mov edx, [ecx] //mov 일때 [] 는 배열 기호 [] 처럼 동작함, ecx 값을 주소로하여 ecx 주소번지에 대한 값을 가져온다 mov edx, [ecx+4] //mov 일때 [] 는 배열 기호 [] 처럼 동작함, ecx 값을 주소로하여 ecx 주소번지에 대한 값을 가져온다 lea eax, dword ptr[ebp - 4] mov edx, dword ptr[ebp - 4] } | cs |
반응형
'프로그래밍(Programming) > 어셈블리어(asm)' 카테고리의 다른 글
[ENTER numbytes, nestinglevel 의 메모리 단에서의 확인] 이전전... ebp 값들로 변수 값을 찾는다 (0) | 2017.03.03 |
---|---|
VisualStudio2015 어셈블러 하이라이트 설정 (0) | 2017.03.01 |
어셈블리어단에서의 스텍프레임과 함수 호출 call, ret, ebp, esp, eip (0) | 2017.02.26 |
loop 명령어 조건 정리 ECX (0) | 2017.02.25 |
상태 레지스터 플래그 (0) | 2017.02.24 |