sniper83
Messages postés2Date d'inscriptionmardi 26 avril 2005StatutMembreDernière intervention17 janvier 2008
-
17 janv. 2008 à 21:44
_dune2_
Messages postés141Date d'inscriptionmercredi 19 juillet 2006StatutMembreDernière intervention20 avril 2011
-
6 févr. 2008 à 16:58
Bonjour a tous
La fonction suivante fait un décalage de n bit dans un mot de 64 bits
:
<ol id="code1" class="olcode"><li>typedeflong long Word64;</li><li>
</li><li>staticinline Word64 sar64(Word64 valeur, int nb)</li><li>{ int temoin,b;</li><li> Word64 provisoir;</li><li> unsignedint poidfort,poidfaible;</li><li>
</li><li> provisoir=valeur;</li><li> provisoir>>=32;</li><li> poidfort=(int)provisoir;</li><li> </li><li> provisoir=valeur;</li><li> poidfaible=(int)provisoir;</li><li> </li><li> </li><li> </li><li> nb &= 0x3F; // prudence : pas plus de 63 décalages
</li><li></li><li>for(b 0; b < nb; b++)</li><li> {</li><li> temoin poidfort & 0x00000001;</li><li> poidfort >>= nb;</li><li> poidfaible >>= nb;</li><li> poidfaible |= temoin;</li><li> </li><li> }</li><li> </li><li> </li><li> provisoir=0;</li><li> provisoir=poidfort;</li><li> provisoir<<=32; </li><li> provisoir+=poidfaible;</li><li> </li><li> return provisoir;</li><li>}</li></ol>
Pouvez vous m'aider a traduire cette fonction en assembleur ARM9
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 20142 23 janv. 2008 à 23:16
salut,
hummm, on est le 23, j'crois qu'c'est clair, ... tu t'démerde !!!
faut dire qu'en ARM9 lui et tout...
t'aurais pu fournir un lien vers la doc du processeur avec la question, j'ai la flemme de chercher.
c'est du risc ou c'est du cisc le arm parce que si le processeur travaille en 64 bits, 1 instruction pourrait suffire a traduire cette fastidueuse fonction.
_dune2_
Messages postés141Date d'inscriptionmercredi 19 juillet 2006StatutMembreDernière intervention20 avril 2011 6 févr. 2008 à 16:58
Salut,
patatalo: t'inquiètes, au moment où tu écrivais ces mots, sniper83 avait quasiment sa réponse sur hardware.fr , n'est-ce pas doomtn ?? ;)
sniper83: c'est sympa de partager ses connaissances au cas où quelqu'un d'autre a le même problème ;)
Ou alors, si ce n'est pas la même personne, c'est que ce sujet devait être un devoir de classe et que tu n'as pas été le seul à venir demander du travail tout fait ;)