29-03-2011, 04:00 PM
السلام عليكم ورحمة الله وبركاته
نرجوا توضيح بعض المعلومات حول هذه الاكواد حيث اني وجدتها في الموضوع
http://www.delphi4arab.net/forum/showthread.php?tid=800
الاكواد المراد الاستفسار عنها
ولكم جزيل الشكر
نرجوا توضيح بعض المعلومات حول هذه الاكواد حيث اني وجدتها في الموضوع
http://www.delphi4arab.net/forum/showthread.php?tid=800
الاكواد المراد الاستفسار عنها
كود :
{
In Borland Pascal and Delphi 1, there is a predefined pseudo variable Port.
In the 32bit versions of Delphi you need 2 lines of assembler code..
}
function InPort(PortAddr:word): byte;
{$IFDEF WIN32}
assembler; stdcall;
asm
mov dx,PortAddr
in al,dx
end;
{$else}
begin
Result := Port[PortAddr];
end;
{$ENDIF}كود :
{$ifndef ver80} // Because of 32 bit register use
function GetVendorString: string;
var
aVendor: array[0..2] of DWord;
iI, iJ : Integer;
begin
asm
push ebx
xor eax, eax
dw $A20F // CPUID instruction
mov DWord ptr aVendor, ebx
mov DWord ptr aVendor[+4], edx
mov DWord ptr aVendor[+8], ecx
pop ebx
end;
for iI := 0 to 2 do
for iJ := 0 to 3 do
Result := Result + Chr((aVendor[iI] and ($000000FF shl (iJ * 8))) shr (iJ * 8));
end;
{$endif}
