Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3795 connectés 

  FORUM HardWare.fr
  Programmation
  ASM

  quelqu'un connait une calculatrice pour l'assembleur ? (pour les rol)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

quelqu'un connait une calculatrice pour l'assembleur ? (pour les rol)

n°805457
gigi12345
Posté le 24-07-2004 à 20:34:38  profilanswer
 

est ce que quelqu'un sait ou est-ce que je pourrait trouver une calculatrice pour traduire les rol et ror en assembleur?
 
exemple pour traduire :
ROL 41458624,9
 
Merci.
 
Ps: Ou si quelqu'un voudraitprogrammer un pti logiciel on ne sé jamais :pt1cable:  
Du style veuillez entrer un nombre (en héxa): le nombre
Nombre de chiffre pour la rotation : le nombre
votre chiffre est : le chiffre(en héxa)
 
voilà on ne sais jamais jen connais qui adore programmer...

mood
Publicité
Posté le 24-07-2004 à 20:34:38  profilanswer
 

n°805489
mum
Posté le 24-07-2004 à 21:57:15  profilanswer
 

gigi12345 a écrit :

est ce que quelqu'un sait ou est-ce que je pourrait trouver une calculatrice pour traduire les rol et ror en assembleur?
 
exemple pour traduire :
ROL 41458624,9
 
Merci.
 
Ps: Ou si quelqu'un voudraitprogrammer un pti logiciel on ne sé jamais :pt1cable:  
Du style veuillez entrer un nombre (en héxa): le nombre
Nombre de chiffre pour la rotation : le nombre
votre chiffre est : le chiffre(en héxa)

 
voilà on ne sais jamais jen connais qui adore programmer...


ban :o


---------------
last | ps3camp | f:mid
n°805527
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-07-2004 à 23:57:49  profilanswer
 

tu veux faire quoi exactement, et dans quel but ?


---------------
J'ai un string dans l'array (Paris Hilton)
n°805559
printf
Baston !
Posté le 25-07-2004 à 01:08:07  profilanswer
 

calc.exe [:mr yvele]


---------------
Un matin je me lèverai et il fera beau.
n°805567
gigi12345
Posté le 25-07-2004 à 01:21:18  profilanswer
 

non calc exe ne permet pas de calculer les rol et ror...
Ben en fait jsuis en train d'apprendre l'assembleur et je mamuse à passer les niveaux de cracking sur le site http://bigcontest.securityhack.net et je bloque au niveau 4 a cause des ror et rol voici le lien du crackme :http://bigcontest.securityhack.net/files/si.zip

n°805666
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 25-07-2004 à 12:10:00  profilanswer
 

tiens, la voilà ta calculatrice !

Code :
  1. #include <iostream>
  2. using namespace std;
  3. class calc
  4. {
  5. public:
  6. calc()
  7. {
  8. }
  9. int rol(int source, int bits)
  10. {
  11.  int res;
  12.  __asm
  13.  {
  14.   mov edx, source
  15.   mov ecx, bits
  16.   rol edx, cl
  17.   mov res, edx
  18.  }
  19.  return res;
  20. }
  21. int ror(int source, int bits)
  22. {
  23.  int res;
  24.  __asm
  25.  {
  26.   mov edx, source
  27.   mov ecx, bits
  28.   ror edx, cl
  29.   mov res, edx
  30.  }
  31.  return res;
  32. }
  33. };
  34. int main (int argc, char **argv)
  35. {
  36. calc c;
  37. int source, bits, res;
  38. char op;
  39. cout << "entrez l'operation à effectuer (0=ror, 1=rol)" << endl;
  40. cin >> op;
  41. cin.setf(ios::hex, ios::basefield);
  42. cin.ignore();
  43. cout << "entrez un nombre a convertir (hexa)" << endl;
  44. cin >> source;
  45. cout << "entrez le nombre de bits a decaler" << endl;
  46. cin.setf(ios::dec, ios::basefield);
  47. cin.ignore();
  48. cin >> bits;
  49. switch (op)
  50. {
  51. case '0':
  52.  res = c.ror(source, bits);
  53.  break;
  54. case '1':
  55.  res = c.rol(source, bits);
  56.  break;
  57. }
  58. cout.setf(ios::hex, ios::basefield);
  59. cout << "valeur apres rotation (hexa) :" << res << endl;
  60. cin.ignore();
  61. }


à compiler avec Visual C++


Message édité par Harkonnen le 25-07-2004 à 12:11:27

---------------
J'ai un string dans l'array (Paris Hilton)
n°805670
chrisbk
-
Posté le 25-07-2004 à 12:25:24  profilanswer
 

quelle manque d'economie..
 
 

Code :
  1. int rol(int source, int bits)
  2. {
  3. __asm
  4. {
  5. mov eax, source
  6. mov ecx, bits
  7. rol eax, cl
  8. }
  9. }


 
[:icon7]

n°805671
gigi12345
Posté le 25-07-2004 à 12:30:45  profilanswer
 

merci v essayer ca de suite

n°805677
gigi12345
Posté le 25-07-2004 à 13:09:37  profilanswer
 

#include <iostream>  
   
  using namespace std;  
   
  class calc  
  {  
     
    public:  
     calc()  
     {  
     }  
     int rol(int source, int bits)  
     {  
        int res;  
        __asm  
        {  
           mov edx, source  
           mov ecx, bits  
           rol edx, cl  
           mov res, edx  
        }  
        return res;  
     }  
     int ror(int source, int bits)  
     {  
        int res;  
        __asm  
        {  
           mov edx, source  
           mov ecx, bits  
           ror edx, cl  
           mov res, edx  
        }  
        return res;  
     }  
  };  
   
   
  int main (int argc, char **argv)  
  {  
     calc c;  
     int source, bits, res;  
     char op;  
     cout << "entrez l'operation à effectuer (0=ror, 1=rol)" << endl;  
     cin >> op;  
     cin.setf(ios::hex, ios::basefield);  
     cin.ignore();  
     cout << "entrez un nombre a convertir (hexa)" << endl;  
     cin >> source;  
     cout << "entrez le nombre de bits a decaler" << endl;  
     cin.setf(ios::Dec, ios::basefield);  
     cin.ignore();  
     cin >> bits;  
     
     switch (op)  
     {  
       case '0':  
        res = c.ror(source, bits);  
        break;  
       case '1':  
        res = c.rol(source, bits);  
        break;  
     }  
     
     cout.setf(ios::hex, ios::basefield);  
     cout << "valeur apres rotation (hexa) :" << res << endl;  
     cin.ignore();  
  }  
 
 
Avec dev C++ v5.5 il me dit kil y a 5 erreurs :'(
 
Pas possible de créer un lien sur votre .exe a partir du .exe ?

n°805678
gigi12345
Posté le 25-07-2004 à 13:10:32  profilanswer
 

je voulais dire : Pas possible de créer un lien sur votre .exe à partir d'un ftp ?

mood
Publicité
Posté le 25-07-2004 à 13:10:32  profilanswer
 

n°805693
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 25-07-2004 à 14:50:06  profilanswer
 

je t'ai dit de le compiler avec Visual C++ :o
 
http://www.microsoft.com/downloads [...] laylang=en


---------------
J'ai un string dans l'array (Paris Hilton)
n°805861
jagstang
Pa Capona ಠ_ಠ
Posté le 25-07-2004 à 21:01:09  profilanswer
 

vous êtes trop cool les mecs.  
 
mais gigi il a pas appris grand chose...


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°805958
gigi12345
Posté le 26-07-2004 à 00:07:13  profilanswer
 

Vous allez dire que je suis vraiment nul maius je suis un newbie et je comprend rien ce que tu m'a dit Harkonnen ! :'(
Jai télécharger ce que tu m'a demandé et je lance vcvars32.bat ou Visual C++ Toolkit 2003 Command Prompt (ce qui est la meme chose mais aprés je fait quoi?) il ny a qu'une fenetre dos qui souvre!!!
Jai changé les repertoire dans dev c++ il me dit kil ny a plus derreur mais je ne peut toujours pas executer le programme...
Jaimerais vraiment que quelqu'un me vienne en aide car ca fait + de deux heures que je cherchent...

n°806010
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 26-07-2004 à 09:23:21  profilanswer
 

tain, je t'ai dis de lacher Dev C++ ! il ne te permettra pas de compiler le programme que je t'ai filé.
après install de Visual C++, tu as dans le menu démarrer une entrée qui s'appelle "Visual C++ Toolkit 2003 Command Prompt". lance le, puis positionne toi dans le rép dans lequel ton source est sauvegardé, et tape cette commande :
 
cl /EHsc calc.cpp
 
ça te génèrera un fichier calc.exe, que t'auras plus qu'à lancer !
 
JagStang >> il aura au moins vu le source d'une calculatrice et appris à compiler un programme C++, c'est toujours mieux que rien vu qu'au départ il demandait juste si il existait une calculatrice ;)


---------------
J'ai un string dans l'array (Paris Hilton)
n°806015
jagstang
Pa Capona ಠ_ಠ
Posté le 26-07-2004 à 09:27:44  profilanswer
 

ouais je suis d'accord. Mais en principe c'est pas trop dans les habitudes dans la maison de pondre du code pour les autres. (c'est pas à moi de te le rappeler...)
 
Alors trouve ça étrange vu comment certains se font bouler pour moins que ça. [:spamafote]


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°806023
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 26-07-2004 à 09:32:49  profilanswer
 

bah, là je lui ai juste fait un code minable d'une calculatrice des plus basiques (j'aimerais que Taz le voie d'ailleurs, je suis sur que je me ferais flammer :D), c'est pas comme si il demandait un code tout fait pour une application précise ou pire, pour un TP ;)


---------------
J'ai un string dans l'array (Paris Hilton)
n°806025
jagstang
Pa Capona ಠ_ಠ
Posté le 26-07-2004 à 09:34:54  profilanswer
 

ouais c'est quand même un challenge de hacking... c'est comme un TP pour moi


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°806035
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 26-07-2004 à 09:45:00  profilanswer
 

vu le niveau du challenge, à mon avis ma calc ne lui servira pas à grand chose de toute façon, ça a l'air assez coton ce truc :D


---------------
J'ai un string dans l'array (Paris Hilton)
n°806242
gigi12345
Posté le 26-07-2004 à 12:30:33  profilanswer
 

Il y avait une erreur de programmation dans ton code : ios::Dec => dec n'a pas de majuscule et c'est donc ios::Dec.
Et il manquait aussi une pause à la fin du programme pour voir le résultat #include <conio.h> et un getch(); à la fin...
Je tiens à remercier tous ceux qui m'ont aider.. (en particulier Harkonnen)
Non le niveau n'est pas super élevé j'ai appris l'assembleur il y a 4 jours alors que je n'y connaissais rien et je suis au 4éme niveau et maintenant que j'ai la calculette ca va etre assez facile...

n°806250
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 26-07-2004 à 12:36:09  profilanswer
 

c'est pas une erreur, c'est le parseur de code du forum qui a mis un "D" majuscule pour éviter que la chaine ne soit interprétée comme un smiley, j'avais bien mis un "d" minuscule dans mon programme.
pour ce qui est de la pause à la fin du programme, ta solution est crade car tu utilises du C dans un programme C++. il aurait mieux fallu faire :

Code :
  1. cin.get();


---------------
J'ai un string dans l'array (Paris Hilton)
n°806282
TBone
Pouet.
Posté le 26-07-2004 à 13:04:54  profilanswer
 

et puis il a demandé une calculette, j'vois pas de GUI [:ddr555]


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
n°806410
gigi12345
Posté le 26-07-2004 à 14:48:02  profilanswer
 

Ca ye grace a la calculette Harkonnen j'ai touvé le password :D DU NIVEAU 4!
password = SILICIUM
Niveau 4 : http://bigcontest.securityhack.net/files/si.zip

n°806561
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 26-07-2004 à 16:01:42  profilanswer
 

"la calculette Harkonnen"... j'ai bien envie de faire breveter cette appellation tiens, ça pourrait servir... [:figti]


---------------
J'ai un string dans l'array (Paris Hilton)
n°806592
skeye
Posté le 26-07-2004 à 16:16:49  profilanswer
 

Harkonnen a écrit :

"la calculette Harkonnen"... j'ai bien envie de faire breveter cette appellation tiens, ça pourrait servir... [:figti]


j'avais pas remarqué que tu étais si boutonneux sur tes photos...:o


---------------
Can't buy what I want because it's free -
n°1287816
bugmenot
Posté le 19-01-2006 à 18:51:55  profilanswer
 

Bonjour à vous tous,
 
N'étant pas inscrit sur le forum je me permets de poster avec un compte générique BugMeNot.
 
Je suis dijiko, co-webmaster du site qui organise et héberge le BigContest (la responsable du contest en lui-même est Bigbang) et je voulais juste demander à gigi12345 s'il pouvait éditer son message où il donne la solution du contest.
Ce n'est pas méchant en soi mais la plupart des compétiteurs n'aiment pas connaître la réponse et préfèrent la chercher par eux-mêmes, si par mégarde ils lisent ton message tout s'écroule et je trouve ça pas super sympa pour eux. Tu me comprends ?
 
Pour faire des ROR/ROL (ou tout autre calcul asm) simplement :

Citation :

juste un chti conseil : l'inverse de ROL est ROR et vice-versa
ensuite pour faire un ROL/ROR vite fait dans olly, tu ouvres ton .exe que tu fais breaker quelque part, tu mets la valeur que tu veux ROLer/RORer dans eax (double clic sur eax) et dans le dump hexa tu rajoutes (double clic sur la ligne) l'instruction ROL/ROR ... et tu fais exécuter juste cette ligne (F8 ) et tu as ton résultat dans EAX


dixit : moi sur le forum officiel du BigContest http://forums.securityhack.net/viewforum.php?f=16 (tu pourras y trouver de l'aide)
 
 
Voilà c'est tout et je te souhaite bonne continuation dans le BigContest ;)

n°1287903
Arjuna
Aircraft Ident.: F-MBSD
Posté le 19-01-2006 à 20:49:01  profilanswer
 

Euh... Pas bien compris là...
 
ROL, c'est bien nb*2^nbBits et ROR nb/2^nbBits non ?
Pkoi avoir besoin d'un prog ou d'une calculatrice spéciale pour ça ???

n°1288025
bjone
Insert booze to continue
Posté le 20-01-2006 à 01:10:45  profilanswer
 

heu non ça c'est les shifts, avec les ror & rol, y'a rebouclage (et passage par la carry si je ne m'abuses)

n°1288114
Arjuna
Aircraft Ident.: F-MBSD
Posté le 20-01-2006 à 10:27:52  profilanswer
 

ah, ok...
 
mouais, c'est un peu moins facile à faire. m'enfin c'est pas bien compliqué non plus...
 
[nb*2^n % 2^32 + nb/2^(32-n)] si je ne m'abuse, pour un registre 32 bits


Message édité par Arjuna le 20-01-2006 à 10:28:17
n°1288115
Arjuna
Aircraft Ident.: F-MBSD
Posté le 20-01-2006 à 10:28:33  profilanswer
 

Et l'inverse pour le ROR évidement :)

n°1288254
db__
spécialiste de l'à peu près
Posté le 20-01-2006 à 12:41:41  profilanswer
 

Bonjour
Il me semble que c'est rcl et rcr si on veut faire une rotation à travers la retenu. rol et ror ne font qu'une rotation sur la destination avec copie du dernier bit dans la retenu.
Question au modérateur :
quel est l'avantage d'utiliser edx plutôt que eax pour charger la valeur ?
Question à tout le monde :
lors de la construction d'une fonction C en assembleur, la valeur de retour est-elle systèmatiquement dans eax et ce que ce soit du DOS, windows ou linux ?
une remarque au passage : Tout le monde ne dispose pas du compilateur visual C++. Tout le monde ne programme pas forcément sous windows.

n°1288267
bjone
Insert booze to continue
Posté le 20-01-2006 à 12:56:03  profilanswer
 

mmm pour le retour ça devrait être en principe dans un registre, sinon ça reviens a passer par la pile avec un paramètre caché.
 
par contre certains compilos comme le watcom expose un jeu de paramètres complets pour déclarer le passage de paramètre et le retour.

n°1288268
Arjuna
Aircraft Ident.: F-MBSD
Posté le 20-01-2006 à 12:58:19  profilanswer
 

bjone a écrit :

mmm pour le retour ça devrait être en principe dans un registre, sinon ça reviens a passer par la pile avec un paramètre caché.
 
par contre certains compilos comme le watcom expose un jeu de paramètres complets pour déclarer le passage de paramètre et le retour.


ça aurait aussi pu être une adresse mémoire réservée à ça.
 
genre avant de faire mon truc en ASM, j'appelle une fonction qui prends en paramètre un pointeur, et à la fin de mon ASM, je recopie le résultat à l'adresse de ce pointeur. tout est possible en fait.
 
et à mon avis, ça doit dépendre du compilo qu'on utilise

n°1289975
db__
spécialiste de l'à peu près
Posté le 23-01-2006 à 12:57:45  profilanswer
 

Bonjour
j'ai écrit une version de la calculette en version totalement asm pour linux.
Est-ce possible de publier un source de 480 lignes sur ce forum ?

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASM

  quelqu'un connait une calculatrice pour l'assembleur ? (pour les rol)

 

Sujets relatifs
Le C ça suxxxe ! L'assembleur ça roske des mamans orignales !! [:dawa]Qui donc connait CCAD ?
quelqu'un s'y connait-il en perl?Assembleur avec watcom c++
Quelqu'un connait le Cobol???Fonction de génération aléatoire en Assembleur VAX
[JAVA ] Qui connait JAL (Librairie baser sur JXTA)assembleur vax
assembleur VAXExcel/VBA Somme d'une colonne dont on ne connait pas la longueur
Plus de sujets relatifs à : quelqu'un connait une calculatrice pour l'assembleur ? (pour les rol)


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)