Trouver un fichier de code source :
   

Version Française - English Version
Accueil > 

Assembleur

 > 

LECTURE DE CPUID

 > 

CPUID3.Asm


LECTURE DE CPUID

CPUID3.Asm


Informations sur ce code source

Cliquez pour voir la capture en taille normale
Code Source LECTURE DE CPUID
Auteur parki
Fichier CPUID3.Asm en Assembleur
Publié le 28/10/2012

utilisation de l'instruction CPUID pour connaitre les caractéristiques du processeurs (constructeur,extensions supportées,...)
 

Fichier : CPUID3.Asm

Nombre de lignes : 131 lignes


Afficher ce fichier en plein écran
  • .686
  • .model flat, stdcall ;32 bit memory model
  • option casemap :none ;case sensitive
  • include CPUID3.inc
  • .code
  • start:
  • invoke GetModuleHandle,NULL
  • mov hInstance,eax
  • invoke InitCommonControls
  • invoke DialogBoxParam,hInstance,IDD_DIALOG1,NULL,addr DlgProc,NULL
  • invoke ExitProcess,0
  • DlgProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  • LOCAL compteur:DWORD
  • mov eax,uMsg
  • .if eax==WM_INITDIALOG
  • lea eax,constructeur
  • mov edi,eax
  • xor eax,eax
  • cpuid
  • mov [edi+16],ebx
  • mov [edi+20],edx
  • mov [edi+24],ecx
  • invoke lstrcat,offset buff,offset constructeur
  • invoke lstrcat,offset buff,offset RL
  • ;contenu de ECX
  • mov compteur,16
  • lea eax,TAB
  • mov edi,eax
  • @@:
  • invoke CPUID_TEST,1,[edi],[edi+4],[edi+8],1
  • add edi,12
  • dec compteur
  • jnz @b
  • ;contenu de EDX
  • mov compteur,8
  • lea eax,TAB1
  • mov edi,eax
  • @@:
  • invoke CPUID_TEST,1,[edi],[edi+4],[edi+8],2
  • add edi,12
  • dec compteur
  • jnz @b
  • invoke SetDlgItemText,hWin,IDC_EDT1,addr buff
  • .elseif eax==WM_COMMAND
  • mov eax,wParam
  • .IF lParam==0
  • .if ax==IDM_EXIT
  • invoke EndDialog, hWin,NULL
  • .endif
  • .ELSE
  • mov edx,wParam
  • shr edx,16
  • .if dx==BN_CLICKED
  • .if ax==IDC_BTN3
  • invoke SendMessage,hWin,WM_COMMAND,IDM_EXIT,0
  • .endif
  • .ENDIF
  • .ENDIF
  • .elseif eax==WM_CLOSE
  • invoke SendMessage,hWin,WM_COMMAND,IDM_EXIT,0
  • .else
  • mov eax,FALSE
  • ret
  • .endif
  • mov eax,TRUE
  • ret
  • DlgProc endp
  • CPUID_TEST proc uses eax ecx num:dword,bit:dword,msgTRUE:dword,msgFALSE:dword,REG:dword
  • ;num: n° de la fonction passée à CPUID
  • ;bit: bit à tester par un AND
  • ;msgTRUE: pointeur sur le message TRUE
  • ;msgFALSE: pointeur sur le message FALSE
  • ;REG: registre à étudier 1=ECX 2=EDX
  • mov eax,num
  • cpuid
  • .if REG==1
  • push ecx
  • and ecx,bit
  • .elseif REG==2
  • push edx
  • and edx,bit
  • .endif
  • jz bit_desarme
  • invoke lstrcat,offset buff,msgTRUE
  • jmp @f
  • bit_desarme:
  • invoke lstrcat,offset buff,msgFALSE
  • @@:
  • invoke lstrcat,offset buff,offset RL
  • .IF REG==1
  • pop ecx
  • .ELSEIF REG==2
  • pop edx
  • .endif
  • ret
  • CPUID_TEST endp
  • end start


Liste des fichiers du ZIP

FichierTaille
CPUID3.Asm2,35 Ko
CPUID3.dlg1,6 Ko
CPUID3.Inc4,66 Ko
CPUID3.rap2,18 Ko
CPUID3.Rc29 o
CPUID3.RES276 o
CPUID3.undo37,47 Ko
Res/CPUID3Dlg.Rc428 o

Pour télécharger le zip au complet, veuillez vous rendre sur cette page :
Télécharger LECTURE DE CPUID


Sources du même auteur ayant un ZIP


  • Assembleur Pile 32 bits/64 bits
    Deux petits exemples de code pour montrer aux débutants (dont je fais parti) le principe de la pile en asm 32 bits et en asm 64 bits. ...
    Langage : Assembleur, publié le 27/02/2013 par parki

  • Assembleur Utiliser visual c++ comme ide pour masm
    le but est de pouvoir se servir du debogueur de visual C++ express 2008 pour les programme masm. Le plus simple est de créer une règle d...
    Langage : Assembleur, publié le 17/01/2013 par parki

  • Assembleur Collision open gl
    utilisation du mode de rendu GL_SELECT OPENGL pour rechercher une collision entre deux objets. Permet de déterminer sans aucun calcul une c...
    Langage : Assembleur, publié le 09/11/2012 par parki

  • Assembleur Views opengl
    Views est un simple exemple de multiples vues en open Gl (grâce à différents cadrages avec glViewport)
    Langage : Assembleur, publié le 02/10/2012 par parki

  • Assembleur Fmodex lib
    Un autre exemple d'utilisation de FMOD; le premier son est un .wav chargé en memoire puis lu,le second est un .mp3 lu en streaming(flux) ...
    Langage : Assembleur, publié le 23/09/2012 par parki

Voir la suite...


Sources du même langage comportant un zip


Voir la suite...





Derniers codes sources...

Softwares to download (FR)...

  • Devis-Factures PHMSD (2.1.0.1)
    Devis-Factures PHMSD (2.1.0.1)
    Configuration minimale Nécessite Windows™ 2000, XP, Windows 7, 8, Vista (Service Pack à jour) - Processeur 500 Mhz (700 Mhz conseillé) - 256 Mo de Ram - 100 Mo d'espace disque disponible po...
  • Ludoprêt (3.2) [Gratuit / Freeware]
    Ludoprêt (3.2) [Gratuit / Freeware]
    Logiciel gratuit de gestion de ludothèque. Gestion des jeux et des adhérents. Gestion des forfaits et des cotisations. Gestion des prêts et retours. Gestion des retards et édition des relances. ...
  • Revealer Keylogger Free (2.05) [Gratuit / Freeware]
    Revealer Keylogger Free (2.05) [Gratuit / Freeware]
    Keylogger invisible et gratuit pour Windows 8, 7, Vista ou XP. Revealer Keylogger Free vous permet de surveiller l'activité des utilisateurs de votre ordinateur et d'enregistrer toutes les touches du ...

Sondage...

Le top des photos

Photo ??Photo ???????????????
Photo ????????Photo ????????
 

Développement réalisé par Nicolas SOREL (Nix) et Emmanuel (EBArtSoft) avec l'aide de Cyril DURAND, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,75 sec