Info zu CPUID
Info zu CPUID
- Die CPUID kann über Assembler-Befehle abgefragt werden.
- Dazu muss aber der erweiterte Modus eingeschaltet werden (.586)
- Das bedeutet eine separate Datei !
- Bitte NUR den unteren Teil in eine neue Assemblerdatei eintragen
- Weitere Informationen:
- www.sandpile.org/ia32/cpuid.htm
- Ausgabe des CPU-Namens
- Funktionnumer für eax: 00h
- Schreibt automatisch in den ersten 16 Byte des Datensegmentes
- eax: Pointer auf den vierten Teil
- ebx: Pointer auf den ersten Teil
- ecx: Pointer auf den dritten Teil
- edx: Pointer auf den zweiten Teil
- alle Teile haben eine Länge von 4 Byte
- Ausgabe der Prozessorleistung
- Ausgabe:
- GenuineIntel Intel processor
- UMC UMC UMC UMC processor
- AuthenticAMD AMD processor
- CyrixInstead Cyrix processor
- NexGenDriven NexGen processor
- CentaurHauls Centaur processor
- RiseRiseRise Rise Technology processor
- SiS SiS SiS SiS processor
- GenuineTMx86 Transmeta processor
- Geode by NSC National Semiconductor processor
- Funktionnumer für eax: 8000 0004h
- Schreibt automatisch in den ersten 16 Byte des Datensegmentes
- eax: Pointer auf den vierten Teil
- ebx: Pointer auf den ersten Teil
- ecx: Pointer auf den dritten Teil
- edx: Pointer auf den zweiten Teil
- alle Teile haben eine Länge von 4 Byte
Beispielbild CPUID
Struktur der ASM-Datei
;*****************************************************
; CPUID.asm *
;----------------------------------------------------*
.model small
.stack 100h
.data
memo DW 30 DUP (?)
.code
.586
start: mov ax,@data
mov ds,ax
mov eax, ?????H
CPUID
mov dword ptr memo, ??x
mov dword ptr memo+4, ??x
mov dword ptr memo+8, ??x
mov dword ptr memo+12, ??x
mov dx, offset memo
mov cx, 12
mov bx, 02
mov ah, 40H
INT 21H
mov ah,??h
int ??h
end start
;