Comment puis-je mettre Arithmétique fixe points à l'Assemblée?

voix
0

Je fais un projet universitaire qui nécessite l'utilisation non-entiers. Nous codez à l'Assemblée et le microprocesseur que nous utilisons ne supporte pas les flotteurs. Je voudrais savoir s'il y a des solutions de contournement pour cette limitation. Rappelez-vous, je ne suis pas à la recherche de code (le microprocesseur a été conçu spécifiquement à des fins d'apprentissage + ce serait tricher), mais je trouve l'article de Wikipedia à propos Arithmétique à virgule fixe un peu vague. J'ai eu l'impression que je dois représenter le nombre comme un entier, mais je ne suis pas sûr si cela signifie multiplier le nombre par une puissance de 2/10 ou en utilisant le jeu de déplacement d'instructions (ou même une autre solution). Toute aide serait appréciée.

Créé 20/10/2018 à 03:12
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
3

Les nombres à virgule fixe sont tout simplement les numéros qui ont été multipliés par un facteur d'échelle. Le facteur d'échelle peut être tout ce que vous choisissez, mais bien sûr , il doit rester constant tout au long de votre calcul.

Si vous faites des calculs financiers que vous pouvez choisir un facteur d'échelle de 100, de sorte que tout est calculé en cents, ou vous pourriez même aller pour 1000 afin que vous obtenez au dixième de cent si vous avez besoin pour repousser les erreurs d'arrondi découlant des calculs d'intérêt.

Il n'y a rien à dire que votre facteur d'échelle doit être une puissance de 10 - il pourrait être une puissance de 2, ou il pourrait être tout autre numéro qui est logique dans votre application (l'article de Wikipedia donne l'exemple d'utiliser 3,600 pour calculer Les intervalles de temps en heures avec résolution de 1 seconde).

En ce qui concerne votre code - vous utilisez simplement l'arithmétique entière régulière, et rappelez-vous juste qu'il ya un facteur d'échelle impliqué. Le facteur d'échelle ne compte vraiment lors de l'entrée et la sortie. Par exemple, si vous faites des calculs financiers avec un facteur d'échelle de 100, et la question est « ce qui est un cinquième de 4,20 $? », Vous prendriez l'entrée 4.20, il faut multiplier par votre facteur d'échelle pour obtenir 420, faire un entier division par 5 pour obtenir 84, puis diviser par votre facteur d'échelle pour obtenir la réponse de « 0,84 $ ».

Créé 20/10/2018 à 04:00
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more