Pues dos instrucciones independientes es facil, dos operaciones aritmeticas cuyos operandos no presenten dependencias. En general dos operaciones cuyos operandos no presenten dependencias pueden ser ejecutadas fuera de orden.
Por ejemplo los dos siguientes no presenten dependencia:
ADD A, B, B ;Esto es sumo a y b lo guardo en B
ADD A, C, C ; Sumo A y C y lo guardo en C.
Dos instrucciones que presenten dependencia como por ejemplo:
1. LD **, A ; Cargo desde la localidad de memoria a la que apunta B y lo guardo en A
2. ADD A, C, A; Sumo A con C y ,lo almaceno en A
Las instrucciones anteriores no se pueden ejecutar fuera de orden, pues la instruccion 2 debe esperar a que el valor de la instruccion 1 este listo y que ademas avanace en el pipeline lo suficiente como para que el valor sea escrito en en el registro A y no se presente un hazard, aunque el hardware es el que se encarga de evitar estos hazards en las CPUs actuales.**