asm_nejv.pas
Petr "Zweistein" Prokop
{ zwei.stein@worldonline.cz, zweistein.kgb.cz }
program asm1;
{
(c) Petr "Zweistein" Prokop
Program asm nejvŘtçˇ :
assembler dled nejvŘtçˇ źˇslo v array
}
type Ar = array[1..20] OF integer;
var pole: Ar;
leng: integer;
nejv: integer;
i:integer;
begin
write('delka pole');
readln(leng);
for i:=1 to leng do
begin
write('prvek ',i,': ');
readln(pole[i]);
end;
asm
mov si,offset pole
mov ax,leng
mov bx,[si]
@lopstart: cmp ax,1
jz @endi
dec ax
inc si
inc si
cmp bx,[si]
jc @mve
jmp @lopstart
@mve: mov bx,[si]
jmp @lopstart
@endi:
mov nejv,bx
end;
writeln('output:',nejv);
readln;
end.