format binary use32 org $1000000 jmp __global_0 ; DECL i -> integer, 0 __global_0: ; LET i <- 0 mov eax, 0 push eax pop eax mov [i], eax ; WHILE i 10 < __global_1: mov eax, [i] push eax mov eax, 10 push eax pop ebx pop eax cmp eax, ebx jb __global_5 mov eax, 0 jmp __global_6 __global_5: mov eax, 1 __global_6: push eax pop eax mov ebx, 0 cmp eax, ebx je __global_3 jmp __global_4 __global_3: jmp __global_2 __global_4: ; LET i <- i 1 + mov eax, [i] push eax mov eax, 1 push eax pop ebx pop eax add eax, ebx push eax pop eax mov [i], eax jmp __global_1 __global_2: hlt i: dd $00000000