RDV+DIAL chat illimit� dans ta r�g!
no save
Assistance
Achat
News

Forum | programmation
assembleur : comparer 2 nbres
gabriel_g, le sam. 16 mai 2009 à 10:21:22
Bonjour,

Dans le cadre d'une application utilisant un pic 16f876, j'aimerais ecrire un programme capable de comparer 2 nombres binaire (codés sur 8 bits). L'un des 2 est une valeur référence : il est fixe et enregistré dans un variable du programme. L'autre est acquise par le pic, numérisée par le CAN intégré, et doit justement être comparée a la 1ère.

Si la valeur a comparer est inférieure a la valeur référence, on fait certaines actions, si non (elle ne peut pas etre supérieure, elle est soit inférieure, ou égale), on ne fait rien. Bref, ce qui m'intéresse c'est l'algorithme de comparaison des 2 nombres.

Je ne sais pas trop comment m'y prendre. Peut on dabord convertir les codes binaires des 2 nombres en décimal, et effectuer la comparaison sur les valeurs décimales? ou doit on obligatoirement travailler sur les 8 bits de chaque nombre?

Jai pensé a une certaine manière pr comparer les 2 nombres, exemple:

reference : 0001 0100
mesure : 0000 1001

on se sert du fait qu'en se décalant d'un bit vers la gauche, on multiplie un nombre par 2:
les 2 bits les plus significatifs (bits 7) sont égaux, donc on continue l'analyse, les bits 6 aussi, on continue.
Le bit 4 de la reference vaut 1, celui de la mesure 0, donc la mesure EST inférieure, on peut arreter l'analyse.

Voila, je pensais a cette manière d'attaquer la chose, mais il y'en a peut être d'autres plus optimisées ou plus faciles.
Pourriez vous m'aider et proposer un code si vous maitrisez le langage assembleur?

MerciConfiguration: Windows Vista
Firefox 3.0.10


le père
16 mai
Suivant
REPONSES
le père
16 mai
gabriel_g
16 mai
le père
16 mai
Version Web
Réalisé par RedShift
no save