Реферат: Обработка изображений с использованием расширения процессора
axmm:TSSERegLines;
xmm_0:TXMMArrByte;
nn,xn:byte;
np1,np2,np3:byte;
ncolor:tcolor;
xc:array[0..3] of byte;
timebefore:Cardinal;
begin
if (frm_optsimgcopy.ShowModal=mrYes) then begin
timebefore:=MilliSecondOfTheHour(Now);
if (img_src.Picture.Width > MAX_imageSize) or (img_src.Picture.Height > MAX_imageSize) then begin
MessageDlg(img_errmsg[0].Text,mtError,[mbok],0);
end else begin
nw:=img_src.Picture.Width;//n size
nh:=img_src.Picture.Height;
img_des.Picture.Bitmap.Width:=nw;//set n size
img_des.Picture.Bitmap.Height:=nh;
img_pbar.Max:=nh+1;//set progressbar
ncolor:=frm_optsimgcopy.Shape1.Brush.Color;
np1:=frm_optsimgcopy.ComboBox1.ItemIndex;
np2:=frm_optsimgcopy.ComboBox2.ItemIndex;
np3:=frm_optsimgcopy.ComboBox3.ItemIndex;
for xn:=0 to 4 do begin
xmm_0[xn*3+0]:=GetBValue(ncolor);//blue
xmm_0[xn*3+1]:=GetGValue(ncolor);//green
xmm_0[xn*3+2]:=GetRValue(ncolor);//red
end;
asm
push eax