Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Bout de code posé là !

Modérateur : Jérémy

ASM: Soustraction sous 64 bits
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 2846
Âge : 99
Enregistré en : décembre 2017
Localisation : Banlieue sud de Klyntar
Contact :

#1 Message par F6FCO » mar. 14 mai 2024 20:14

Soustraction sous 64 bits.

Code : Tout sélectionner

;********************************************************************
;            
Soustraction sur entiers 64bits                         
;     Il faut prélablement déclarer les variables sur 64bits            
;             valeur1:8valeur2:8                                     
;                                                                    
Placer le poids faible de la première valeur dans valeur1            
et les poids plus forts dans valeur1+1valeur+2valeur+3 à 7
;                                                                    
Placer le poids faible de la valeur à soustraire dans valeur2        
et les poids forts dans valeur2+1valeur2+2valeur2+3etc.         
;                                                                    
Appeler la procédure soustraction64 et le résultat de             
valeur1-valeur2 sur 64bits sera dans les 8 octets de valeur1         
;
;********************************************************************
soustraction64
            movf    valeur2
,w
            subwf    valeur1
            movf    valeur2
+1,w
            subwfb    valeur1
+1
            movf    valeur2
+2,w
            subwfb    valeur1
+2
            movf    valeur2
+3,w
            subwfb    valeur1
+3
            movf    valeur2
+4,w
            subwfb    valeur1
+4
            movf    valeur2
+5,w
            subwfb    valeur1
+5
            movf    valeur2
+6,w
            subwfb    valeur1
+6
            movf    valeur2
+7,w
            subwfb    valeur1
+7
            
return


 
Une porte nand prend 2 bits en entrée... :eek:

Retourner vers « Recueil de mini programmes »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité