어셈블리
별찍기 어셈블 코드
파아랑새
2017. 10. 30. 21:09
# include <stdio.h>
int main(void) {
int num = 0;
char* prompt = "%d";
char* star = "*";
char* s = "\n";
__asm {
// scanf("%d", &num)
lea edi, num; // edi = &num
push edi;
push prompt;
call dword ptr[scanf];
pop ebx;
pop ebx;
/////////////////////////////////
mov ecx, num;
L1:
push ecx;
L2:
mov edx, ecx;
push edx;
push star;
call dword ptr[printf];
pop ebx;
pop ecx;
loop L2;
/////////////////////////////////
push s;
call dword ptr[printf];
pop ebx;
/////////////////////////////////
pop ecx;
loop L1;
}
return 0;
}