das weis ich ja aber es geht dies zu dekodieren.. also z.b.
auf dem bild die 1024 L2 Cache... würde gerne nur die werte auslesen also jeweils die Level Cache größe
Delphi-Quellcode:
const
ID_BIT = $200000;
// EFLAGS ID bit
type
TL2CacheSize =
array[1..4]
of Longint;
function L2CacheSize : TL2CacheSize;
assembler;
register;
asm
PUSH EBX
{Save affected register}
PUSH EDI
MOV EDI,EAX
{@Resukt}
MOV EAX,$80000006
DW $A20F
{CPUID Command}
STOSD
{CPUID[1]}
MOV EAX,EBX
STOSD
{CPUID[2]}
MOV EAX,ECX
STOSD
{CPUID[3]}
MOV EAX,EDX
STOSD
{CPUID[4]}
POP EDI
{Restore registers}
POP EBX
end;
procedure TDemoForm.GetButtonClick(Sender: TObject);
var
CPUID : TL2CacheSize;
begin
Label1.Caption := IntToStr(CPUID[3]
shr 16
and $FFFF);
end;
end.
also das gilt als beispiel ob es richtig ist keine ahnung aber vielleicht weis du jetzt was ich damit meine!!!!