.code Main proc xor rax, rax ;wyzerowanie rejestru RAX mov rcx, 13 ;ustawienie rejestru licznika RCX na wartość trzynaście @@: ;rozkazy umieszczone tutaj wykonają się trzynaście razy inc rax ;zwiększenie wartości rejestru RAX o jeden loop @b ;zmniejszenie rejestru RCX o jeden i dopóki ma wartość większą od zera następuje skok wstecz do etykiety @@ mov rax, 1 ;wczytanie do rejestru RAX wartości natychmiastowej jeden mov rcx, 2 ;wczytanie do rejestru RCX wartości natychmiastowej dwa add rax, rcx ;dodanie wartości z rejestru RCX do wartości w rejestrze RAX (rezultat w RAX) cmp rax, 3 ;porównanie czy wartość rejestru RAX to trzy je _seven ;jeśli tak, to skok do etykiety _seven jmp _eight ;jeśli nie, to skok do etykiety _eight _seven: mov rax, 7 ;wczytanie do rejestru RAX wartości natychmiastowej siedem ret ;powrót do systemu Windows _eight: mov rax, 8 ;wczytanie do rejestru RAX wartości natychmiastowej osiem ret ;powrót do systemu Windows Main endp end