Assembleur

Bonjour;

mov ax,100
   mov bx,10
   mov cx,0
boucle:
   sub ax,bx
   add cx,1
   cmp ax,bx
   jae boucle


on me dit :"Le CPI des instructions utilisant uniquement les registres est de 1 cycle, et celui de l'instruction de branchement conditionnel est de 3 cycles."

Est ce que la boucle durera 3 cycles ?

merci

3 réponses

  1. non c'est pas tout a fait ça

    c'est chaque type d'instruction = 1 nombre de cycle

    exemple
    xor ax,ax (ax= 0) en deux cycles 2µsecondes à 1Mégahertz
    alors que
    mov ax,0 (ax=0) en trois cycles 3µsecondes à 1Mégahertz

    etc
    etc
    etc

    pour chaque instruction il y a un nombre de cycle qui n'est pas forcement le même pour toutes les instructions voir la doc constructeur du fabriquant du processeur que tu utilises pour les connaitre...

    si c'est pour de l'assembleur PC vas sur le site d'intel...
    0
    1. c un exo que je fait
      "Soit le programme présenté ci-dessous. Le CPI des instructions utilisant uniquement les registres est de 1 cycle, et celui de l'instruction de branchement conditionnel est de 3 cycles."
      dc je pense que je dois suivre ce que les consigles

      on parle d'instruction de branchement conditionnel c'est ca
      boucle:
         sub ax,bx
         add cx,1
         cmp ax,bx
         jae boucle


      deuxième question

      c'est quoi une instruction ual ?
      merci
      0
      1. sub est une soustraction, add une addition, ce sont des opérations arythmétiques(tout com MUL, DIV etc.)
        et logiquement c'est l' Unité Arythmétique Logique qui s'en charge,
        (on dit aussi ULA ou ALU) sur les 386 et au delà, ce type d'opération ne demande qu'un cycle d'horloge.

        ¤
        0
        1. 'instruction de branchement conditionnel est de 3 cycles

          ca veut dire quoi cela , exactement?
          0