Programmer en hexadécimal

Résolu
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 - 14 févr. 2005 à 17:55
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 - 15 févr. 2005 à 11:35
Bonjour à tous, je me lance dans un interpréteur de formules ou plus exactement de fonctions.

On pourra définir une nouvelle fonction de "n" variables, puis évaluer
la fonction en définissant les valeurs des inconnues. Seulement, je
veux programmer deux méthodes, une simple mais lente (cad un
"organigramme"), une autre qui me semble ultra-rapide mais compliquée:



En fait, je veux pouvoir évaluer une fonction des milliers de fois par
seconde, sans que ca se ressent sur les performances. Je voudrais donc
que mon programme crée le code hexadécimal dans la RAM qui
évaluerait la fonction. Pour l'instant, je limite au cas de mon
pentium3, est-ce que quelqu'un saurait où je peux trouver les codes
hexadécimaux correspondant aux fonctions simples de l'arithmétique ?



En quelque sorte, mon programme doit prendre ma place et créer un code
machine correspondant à une fonction, mais est-ce que ca semble
faisable d'allouer un espace avec malloc puis d'écrire du code machine
dedans, puis exécuter ce code ?

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
14 févr. 2005 à 19:02
Alloue la mémoire avec VirtualAlloc, il faudra le flag PAGE_EXECUTE.
Les codes machines sont dans les manuels Intel ici:
http://brunews.free.fr/brunews/

ciao...
BruNews, MVP VC++
3
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
15 févr. 2005 à 11:35
Merci, c'est ce que je cherchais
0
Rejoignez-nous