.686
.model flat
public _szukaj_max
public _plus_jeden
.code
_szukaj_max PROC
push ebp ; zapisanie zawartosci EBP na stosie
mov ebp, esp ; kopiowanie zawartosci esp do ebp
mov eax, [ebp+8] ; liczba x
cmp eax, [ebp+12] ; x ?= y
jge x_wieksza ; skok gdy x >= y
; przypadek x < y
mov eax, [ebp+12] ; liczba y
cmp eax, [ebp+16] ; porownanie liczb y i z
jge y_wieksza ; szkok gdy y>= z
; przypadek y < z
; zatem z jest liczba najwieksza
wpisz_z:
mov eax, [ebp + 16] ; liczba z
porownaj_max_z_d:
cmp eax, [ebp+20]
jge zakoncz
mov eax, [ebp+20]
zakoncz:
pop ebp
ret
x_wieksza:
cmp eax, [ebp+16] ; porowanie x i z
jge porownaj_max_z_d ; skok, gdy x >= z
jmp wpisz_z
y_wieksza:
mov eax, [ebp+12] ; liczba y
jmp porownaj_max_z_d
_szukaj_max ENDP
_plus_jeden PROC
push ebp ; zapisanie zawartosci ebp na stosie
mov ebp, esp ; kopiowanie zawartosci esp do ebp
push ebx ;przechowanie zawartosci rejestru ebx
push edx
; wpisanie do rejestru ebx adresu zmiennej zdefiniowanej
; w kodzie w jezyku c
mov ebx, [ebp+8]
mov eax, [ebx] ; odczytanie wartosci zmiennej
mov edx, eax
sub eax, edx
sub eax, edx
mov [ebx], eax
pop edx
pop ebx
pop ebp
ret
_plus_jeden ENDP
_odejmij_jeden PROC
push ebp
mov ebp, esp
push ecx
mov eax, [ebp+8] ; wpisz do eax wartosc adresu wskazujacego na pamiec ktora zawiera wartosc zmiennej :)
mov ecx, [eax] ; wpisz do ecx wartosc adresu wskazujacego na pamiec ktora zawiera wartosc
mov eax, [ecx] ; wpisz do eax wartosc
dec eax
mov [ecx], eax
pop ecx
pop ebp
ret
_odejmij_jeden ENDP
END
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}