delphi4arab منتديات دلفي للعرب

نسخة كاملة : استفسار عن بعض الاكواد الخاصه بدلفي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته

نرجوا توضيح بعض المعلومات حول هذه الاكواد حيث اني وجدتها في الموضوع
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}
ولكم جزيل الشكر

لتلقى اجابة شافية اسال سؤال محدد
-
الكود الاول فهي اكواد تجميع Assembly للقراءة من منفذ Port هي قديمة ولا تعمل بالانظمة الحديثة

الكود الثاني نفس الشيئ تجميع لاستعمال CPUID لمعرفة معالج الجهاز CPU