ADDABS
– Referencia del Lenguaje Ensamblador
ADDABS
instrucción: Suma un valor absoluto a otro valor.
ADDABS
Value,
SValue
#
Resultado: La suma de Value y valor absoluto no signado de SValue se almacena en Value.
Value
(campo-d) es el registro que contiene el valor a sumar con el valor absoluto de
SValue y es el destino dond se escribe el resultado.
SValue
(campo-s) es un registro o literal de 9-bit cuyo valor absoluto se suma en
Value. Literales SValues son cero extendidos (siempre valores positivos) así
es mejor usado con registros SValues.
Tabla Opcode:
–INSTR– ZCRI –CON–
–DEST–
100010 001i 1111 ddddddddd sssssssss
If S is negative, C Result is the inverse of unsigned borrow (for D - S).
1
Tabla de verdad:
Destino
1
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
$FFFF_FFFD; 4,294,967,293
Destino se trata como valor no signado.
1
Explicación
ADDABS
suma Value junto con el valor absoluto de SValue y almacena el resultado en el
registro Value.
Si se especifica el efecto
WC
el efecto
se especifica, la bandera C se activa (1) si la suma resultante es un acarreo no
signado (sobre flujo 32-bit). El resultado se escribe a Value a menos que se especifique
Pagina 266 · Manual Propeller v1.1
–SRC–
Resultado Z
D + |S| = 0
Entrada
Fuente
1
$0000_0004; 4
$0000_0003; 3
$0000_0002; 2
$FFFF_FFFF; -1
$FFFF_FFFE; -2
$FFFF_FFFD; -3
$FFFF_FFFC; -4
WZ
, la bandera Z se activa (1) si Value + |SValue| es igual a cero. Si
Resultado C
no signado Carry
1
Z C Efectos
Destino
wz wc
- -
$0000_0001; 1
wz wc
- -
$0000_0000; 0
wz wc
- -
$FFFF_FFFF; 4,294,967,295 0
wz wc
- -
$FFFF_FFFE; 4,294,967,294 0
wz wc
- -
$FFFF_FFFF; 4,294,967,295 0
wz wc
- -
$0000_0000; 0
wz wc
- -
$0000_0001; 1
ADDABS
Resultado
Ciclos
Written
4
Salida
Z C
0
1
1
1
0
1
1
1
0
0
0
NR
.