FIFO |
Top |
En un FIFO (First In First Out, o primero en entrar y primero en salir) el valor del acumulador es puesto en un registro de desplazamiento al mismo tiempo que el acumulador recibe el dato más antiguo del mismo:
FIFO ini, fin
o también
ini: 1º variable del registro de desplazamiento.
fin: Última variable (más antigua) o constante (cnt) con la cantidad de variables del registro de desplazamiento.
Al ejecutar el Acc es introducido al registro de desplazamiento empujando todo su contenido. Entonces, el mas antiguo (fin) sale del registro y entra en Acc.
Solo para variables tipo entero (16bit).
Ejemplo de uso aquí.
Con tres argumentos
A partir del CP121 2.70, CP122 2.20, CP123 2.30, CP125 1.10, CP127 1.00, CP128 1.00, CP220 1.00 varias instrucciones de dos argumentos son reemplazadas por tres argumentos. El comportamiento de cada uno resulta en la siguiente forma:
FIFO arg1, arg2, arg3 equivale a arg1 = dato a arg2 y dato de arg3
Los argumentos (arg 1, 2 y 3) pueden ser de 16bit o 32bit (Ver
tipo de dato), sin mezclarse.
arg1:
variable con el dato a ingresar al FIFO y que recibe la salida de éste.
arg2: primer variable del registro de desplazamiento
arg3: última variable del
registro de desplazamiento o cantidad de variables contiguas que conformas el
registro de desplazamiento.
Si arg3 es una variable debe ser
posterior a arg2.
La ejecución es condicional.
Al ejecutar el arg1 es introducido al registro de desplazamiento empujando todo su contenido. Entonces, el mas antiguo (arg3) sale del registro y entra en arg1.