MIPS: Instrucciones de bifurcación condicional

MIPS cuenta con dos instrucciones de salto condicional:

  • beq r1, r2, etiqueta (“branch if equal”): Compara los valores contenidos en ambos registros. 
    • Si son iguales, el flujo de programa salta a la instrucción que corresponde a la
      etiqueta.
    • Si no lo son, se ejecuta la siguiente instrucción. 
  • bne r1, r2, etiqueta (“branch if not equal”): Compara los valores contenidos en ambos registros. 
    • Si no son iguales, el flujo de programa salta a la instrucción que corresponde a la etiqueta.
    • Si lo son, se ejecuta la siguiente instrucción. 

      Pero, además, dispone de varias pseudoinstrucciones de salto condicional (las pseudoinstrucciones son traducidas a varias instrucciones reales antes de ser ensambladas):

      • bge r1, r2, etiqueta (“branch if greater or equal”): Compara los valores contenidos en ambos registros. 
        • Si el valor del registro r1 es mayor o igual que el valor del registro r2, el flujo de programa salta a la instrucción que corresponde a la etiqueta.
        • En caso contrario, se ejecuta la siguiente instrucción. 
      • bgt r1, r2, etiqueta (“branch if greater”): Compara los valores contenidos en ambos registros. 
        • Si el valor del registro r1 es mayor que el valor del registro r2, el flujo de programa salta a la instrucción que corresponde a la etiqueta.
        • En caso contrario, se ejecuta la siguiente instrucción. 
      • ble r1, r2, etiqueta (“branch if lesser or qual”): Compara los valores contenidos en ambos registros. 
        • Si el valor del registro r1 es menor o igual que el valor del registro r2, el flujo de programa salta a la instrucción que corresponde a la etiqueta.
        • En caso contrario, se ejecuta la siguiente instrucción. 
      • blt r1, r2, etiqueta (“branch if lesser”): Compara los valores contenidos en ambos registros. 
        • Si el valor del registro r1 es menor que el valor del registro r2, el flujo de programa salta a la instrucción que corresponde a la etiqueta.
        • En caso contrario, se ejecuta la siguiente instrucción. 
      Be the first to comment

      Por favor acceder para comentar.