int i = 2; int k = i; for (int j = 1; j < n; ++j) k *= i; if (eax > ebx) { cmp eax, ebx prgIgaz jng hamisAg1 } else { (igaz ag kodja) prgHamis jmp elagVege1 } hamisAg1: (hamis ag kodja) elagVege1: a bove eax > ebx elojel nelkul b elow ebx < ebx elojel nelkul g reater eax > ebx elojelesen l ess ebx < ebx elojelesen e qual eax = ebx n ja=jnbe, jb=jnae, jg=jnle, jl je jna, jnb, jng, jnl jne jae, jbe, jge, jle jnae, jnbe, jnge, jnle .... mov eax, ebx cimke: mov eax, ebx jmp cimke ........... while (felt) { for ( ; felt; ) { kod kod } } for (ertekad; felt; lep) { ertekad kod while (felt) { } kod lep } while (eax > ebx) { ciklusEleje: kod cmp eax, ebx } jng ciklusVege (kod) jmp ciklusEleje ciklusVege: futási idejű verem push edi pop eax if (a*b+c*d+e*f > 0) { ... } ; {eax, ebx} := {ebx, eax} push eax ; verem=[a] push ebx ; verem=[b,a] pop eax ; eax=b,verem=[a] pop ebx ; ebx=a,verem=[] push eax ; verem=[a] mov eax, ebx ; eax=b pop ebx ; ebx=a,verem=[] xchg eax, ebx push dword 50 int osszeg = 0; for (int i = 1; i <= 100; ++i) osszeg += i; mov eax, dword 0 ; eax = osszeg = 0 mov ebx, dword 1 ; ebx = int i = 1 ciklusEleje: ; i <= 100 cmp ebx, dword 100 ; i <= 100 ? jnle ciklusVege add eax, ebx ; osszeg += i; inc ebx ; ++i jmp ciklusEleje ciklusVege: mov esi, 5050 int i = .......; while (i != 1) { if (i % 2 == 0) i = i / 2; else i = (3 * i + 1) / 2; } mul ebx ; edx:eax := eax * ebx div ebx ; eax := edx:eax / ebx ; edx := edx:eax % ebx