Hurra
Ich habe das ganze noch etwas erweitert...
Delphi-Quellcode:
begin
Akt:=0;
Cnt:=0;
while Akt<>5 do
begin
if Random(2)=1 then Inc(Akt);
Inc(Cnt);
end;
Memo1.Lines.Add(IntToStr(CNt));
end;
Delphi-Quellcode:
procedure Add(I: Integer);
begin
Form1.Memo1.Lines.Add(IntToStr(I));
end;
function Rand(N: Integer): Integer;
begin
Result:=Random(N);
end;
procedure Gen;
begin
asm
MOV EBX,0
MOV ECX,0
@start:
CMP EBX,5
JE @ende
ADD ECX,1
PUSH EBX
PUSH ECX
MOV EAX,2
CALL Rand
POP ECX
POP EBX
CMP EAX,1
JNE @start
ADD EBX,1
JMP @start
@ende:
MOV EAX,ECX
CALL Add
end;
end;
und es tut!
auf zum nächsten (mehr oder weniger sinnlosen)
asm-projekt