Comment faire un sleep en assembleur MIPS ?

Yakurena Messages postés 47 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 1 juillet 2007 - 29 mars 2006 à 00:54
nightlord666 Messages postés 746 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 23 mai 2007 - 5 avril 2006 à 21:33
Bonsoir,
J'aimerais faire un programme en assembleur MIPS permettant de synchroniser la saisie de caractères au clavier par l'utilisateur et leur affichage à l'écran. Le problème est que le processeur est tellement rapide qu'il affiche toujours instantanément les caractères à l'écran, dès qu'ils sont saisis au clavier.
J'ai donc pensé que le seul moyen de permettre à l'utilisateur de "prendre de l'avance" est d'endormir le processeur pendant un temps donné. Le problème pour cela est que je n'arrive pas à trouver l'instruction en assembleur pour faire cela (l'équivalent de "sleep" dans les langages de programmation). J'ai essayé de generer un programme en assembleur à partir de la compilation d'un programme en C contenant juste l'instruction "sleep", mais ça me donne un code avec des instruction très bizarres et qui ne marchent pas à l'execution.
J'aimerais donc savoir si quelqu'un connaîtrait un code en assembleur permettant de le faire.
Merci d'avance.

2 réponses

cs_patatalo Messages postés 1466 Date d'inscription vendredi 2 janvier 2004 Statut Modérateur Dernière intervention 14 février 2014 2
31 mars 2006 à 19:37
salut,




sleep n'est pas une fonction du processeur mais de l'API du systeme d'exploitation.

@++
0
nightlord666 Messages postés 746 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 23 mai 2007 10
5 avril 2006 à 21:33
En MASM :

invoke Sleep, nb_of_milliseconds

où number_of_milliseconds est déclaré comme DWORD, ou dw.

C'est une fonction uniquement compatible windows.
0
Rejoignez-nous