Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

soustraction 16 bits,deux registres 8 bits, assembleur



  1. #1
    indiannajones

    soustraction 16 bits,deux registres 8 bits, assembleur


    ------

    Bonjour,
    Je programme un PIC en assembleur, et j'aurais besoin d'effectuer une soustraction de deux registres qui forment un nombre 16 bits par deux autres registres qui forment également un nombre 16 bits.

    C'est en fait la valeur du timer1 qui est un compteur 16 bits placé dans deux registres différents 8 bits.

    Mon problème est surtout pour traiter les cas où on a des nombres négatifs... je ne saisis pas trop comment procéder.

    Quelqu'un peut m'aider?

    Merci!

    -----

  2. Publicité
  3. #2
    DAUDET78

    Re : soustraction 16 bits,deux registres 8 bits, assembleur

    Que le nombre soit positif ou négatif, sur 8 , 16 ou 128 Bits, quelque soit le µC, l’algorithme de calcul de la soustraction est le même .
    J'aime pas le Grec

  4. #3
    PA5CAL

    Re : soustraction 16 bits,deux registres 8 bits, assembleur

    Bonjour

    Si tu sais poser une soustraction (normale, en base 10), alors tu sais comment procéder. On fait pareil.

    Quant au signe des valeurs, ça ne pose absolument aucun problème avec la représentation "complément à deux" : le traitement des nombres signés et non signés est identique (à ceci près que dans le second cas le signe doit être propagé vers la droite quand on augmente la taille des registres, mais tu n'as pas à le faire dans le cas présent).

    Un exemple ?
    Code:
                  MSB      LSB
    Valeur 1 = 00101010 10010000 (10896)
    Valeur 2 = 01101110 11010001 (28369)
    
    10010000 - 11010001 = 10111111 ; retenue = 1
    01101110 + retenue = 01101111
    00101010 - 01101111 = 10111011 ; retenue = 1
    
    Résultat = 10111011 10111111 (-17473)
    EDIT: grillé par DAUDET78
    Dernière modification par PA5CAL ; 28/03/2011 à 17h27.

  5. #4
    invite39886733

    Re : soustraction 16 bits,deux registres 8 bits, assembleur

    [troll]
    en c:

    Resultat = Valeur1 - Valeur2;

    [/troll]

  6. A voir en vidéo sur Futura
  7. Comparatifs

    Gagnez du temps et de l'argent grâce à nos comparatifs de produits. Parmi nos sujets :
  8. #5
    ftorama

    Re : soustraction 16 bits,deux registres 8 bits, assembleur

    Citation Envoyé par hulk69 Voir le message
    [troll]
    en c:

    Resultat = Valeur1 - Valeur2;

    [/troll]
    non pas troll....lucidité

  9. #6
    indiannajones

    Re : soustraction 16 bits,deux registres 8 bits, assembleur

    Merci beaucoup pour vos réponses!

  10. Publicité

Discussions similaires

  1. PIC assembleur et gestion de mots de 16 bits
    Par Nico8583 dans le forum Électronique
    Réponses: 10
    Dernier message: 07/10/2009, 05h53
  2. [C] - Passage de mots de n bits en mode de 8 bits
    Par jorg1n dans le forum Électronique
    Réponses: 17
    Dernier message: 30/07/2009, 10h02
  3. récupération du mot de 8 bits sur 4 bits
    Par grd666 dans le forum Électronique
    Réponses: 3
    Dernier message: 09/07/2008, 10h16
  4. algorithme pour decoder 4 bits en 16 flags en assembleur
    Par drache dans le forum TPE / TIPE et autres travaux
    Réponses: 1
    Dernier message: 16/05/2006, 18h06
  5. Convertir 12 bits série en 7 bits paralléle avec un HC11 ?
    Par djsat dans le forum Électronique
    Réponses: 2
    Dernier message: 03/03/2005, 08h39
Découvrez nos comparatifs produits sur l'informatique et les technologies.