Code : Tout sélectionner
;********************************************************************
; Addition sur entiers 16bits F6FCO
; Il faut préalablement déclarer des variables sur 16 bits
; valeur1:2 , valeur2:2 et report16
;
; Premier nombre:
; poids faible dans valeur1
; poids fort dans valeur1+1
;
; Deuxième nombre:
; poids faible dans valeur2
; poids fort dans valeur2+1
;
; Appeler la procédure addition16 et le résultat de
; valeur1+valeur2 sur 16bits sera dans les 2 octets de valeur2
; Si dépassement des 16 bits, le carry sera dans report16
;********************************************************************
addition16
movf valeur1,w
addwf valeur2
movf valeur1+1,w
addwfc valeur2+1
; s'il y a carry il sera stocké dans report16
movf STATUS,w
andlw 0x1
movwf report16
return
