어셈블리

인라인 어셈블리 sub

파아랑새 2017. 5. 1. 22:19

# include <stdio.h>


int main(void)

{

int v1 = 10;

int v2 = 5;

int re = 0;


__asm

{

mov eax, v1;

mov ebx, v2;

sub eax, ebx;

mov re, eax;

}

printf("%d \n", re);

return 0;

}




(*visual studio deburging mode)


       int v2 = 10;

 mov         dword ptr [v2],0Ah

// OAh => h는 hex 즉, 16진수

  

int v1 = 30;

 mov         dword ptr [v1],1Eh  


int re = 0;

 mov         dword ptr [re],0  

re = (v2 - v1);

 mov         eax,dword ptr [v2]  

 sub         eax,dword ptr [v1]  

 mov         dword ptr [re],eax