CMPSUB
– Referencia del Lenguaje Ensamblador
CMPSUB
instrucción: Compara dos valores no signados y resta el segundo si es menor o igual.
CMPSUB
Value1,
Value2
#
Resultado: Opcionalmente, Value1 = Value1–Value2, y Z y C = resultado comparación.
Value1
(campo-d) es el registro que contiene el valor a comparar con Value2 y es el
destino en el cual se escribe el resultado si se desarrolla una resta.
Value2
(campo-s) es un registro o literal de 9-bit cuyo valor se compara y
posiblemente se resta de Value1.
Tabla Opcode:
–INSTR– ZCRI –CON–
–DEST–
111000 001i 1111 ddddddddd sssssssss
Tabla de verdad:
Destino
1
$0000_0003; 3
$0000_0003; 3
$0000_0003; 3
Fuente y destino se tratan como valores no signados
1
Explicación
CMPSUB
compara los valores no signados de Value1 y Value2, y si Value2 es igual o menor
que Value1 entonces se resta de Value1.
WZ
Si se activo el efecto
WC
efecto
, la bandera C se activa (1) si una resta es posible (Value1 es igual o menor que
Value2). El resultado, si existe, se escribe a Value1 a menos que se especifique
Pagina 282 · Manual Propeller v1.1
–SRC–
Entrada
Fuente
1
$0000_0002; 2
$0000_0003; 3
$0000_0004; 4
, la bandera Z se activa (1) si Value1 es igual a Value2. Si se activo el
Resultado Z
Resultado C
D = S
no signado (D => S)
Z C Efectos
wz wc
- -
$0000_0001; 1
- -
wz wc
$0000_0000; 0
wz wc
- -
$0000_0003; 3
Resultado
Ciclos
Written
4
Salida
Destino
Z C
0
1
1
1
0
0
NR
.