Un probleme assez ... problematique !

Un probleme assez ... problematique ! - ASM - Programmation

Marsh Posté le 01-06-2005 à 10:05:29    

Bonjour à tous...
Je suis en 1ere annee d'IUT info à Blagnac (31), et c'est en cette fin d'annee que l'on rend nos projets.
C'est celui d'ASM (forcement) qui me pose un petit probleme...
 
On doit realiser un programme permettant a un utilisateur de saisir un mot de passe (8 caracteres, chiffres et/ou lettres), et un autre utilisateur devra deviner ce pass en 10 tentatives (genre pendu, c'est un truc a la con...).
L'idee c'est qu'on nous demande entre autres d'afficher au type qui devine le nombre de combinaisons possibles du pass, qui dépendra de la proportion de chiffres et de lettres qui le composent.
Et la c'est le drame : 8 lettres = 208.827.064.576 combinaisons, soit bien plus que ce que l'on peut traiter dans un registre !!
 
Evidemment la subtilite c'est qu'on utilise TASM en 16 bits (8086)  :(  
J'ai plus ou moins reussi a recuperer la valeur en binaire, en testant sur CF et avec ADC on se demerde a "deborder" sur un registre dès que l'un d'eux est plein.
Mais je vois toujours pas comment je peux traduire cette valeur en un entier (binary to integer), sachant qu'elle est codée sur au plus 3 registres (on peut y mettre jusqu'a 281.474.976.710.656).
 
Voila donc, je sais bien au vu des regles du forum que c'est abuse de demander aux autres de faire le boulot, mais apres de longues recherches et heures de prise de tete  :pfff: j'ai pas le truc en visuel.... merci d'avance à qui saura me repondre  :jap:

Reply

Marsh Posté le 01-06-2005 à 10:05:29   

Reply

Marsh Posté le 01-06-2005 à 13:31:12    

Bonjour
Si j'ai bien compris le problème, il s'agit d'une conversion binaire vers un chiffre en représentation décimale ascii.
Si la performance n'est pas un problème, il suffit de coder ce grand nombre en décimal codé binaire (DCB) soit 6 octets occupés en compacté ou 12 en non compacté.
Bien entendu, dès le départ il faut que le nombre soit en DCB
Il existe tout un paquet d'instruction pour faire du DCB en assembleur.
Bon courage.

Reply

Marsh Posté le 01-06-2005 à 20:23:32    

Merci bien tu m'ouvres de nouveaux horizons ! je calcule mon nombre en DCB, ce qui tiendra au plus sur 3 registres, la traduction en decimal se faisant alors comme un doigt dans un ***.....
Je vais plancher la dessus, merci encore ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed