Parallax Propeller P8X32A Manual Del Usuario página 161

Tabla de contenido
2: Referencia de Lenguaje Spin – Operators
Y := ~X + 25
X
El operador Sign-Extend 7 en este ejemplo extiende el signo del valor,
en este caso, del bit
7 hasta el bit 31. Un entero con signo de 32-bit se almacena en forma de complementos de
dos y el bit mas significativo (31) indica el signo del valor (positivo o negativo). Quizá hay
veces donde los cálculos resultaran valores en tamaño byte que debe tratarse como enteros
con signo en el rango de -128 to +127. Cuando necesita desarrollar cálculos con esos valores
de tamaño byte use el operador Sign-Extend 7 para convertir el numero en la forma apropiada
X
32-bit entero con signo. En el ejemplo de arriba se asume que
representa el valor -20, el
cual en complementos de dos de 8-bit es actualmente el valor 236 (%11101100). La porción
~X
de la expresión extiende el bit de signo del bit 7 hasta el bit 31, convirtiendo el numero en
la forma de complemento de dos de 32 bit de -20 (%11111111 11111111 11111111
11101100). Sumando ese valor extendido signado a 25 resulta en 5, el resultado pretendido,
mientras podría haber resultado en 261 sin la apropiada extensión de signo.
El siguiente es un ejemplo de la forma del operador Post-Clear.
Y := X~ + 2
El operador Post-Clear en este ejemplo limpia la variable a 0 (todos los bits bajos) después de
X
proporcionar su valor actual para la siguiente operación. En este ejemplo si
comenzó en 5,
X~
proporcionara el valor actual para la expresión (5 + 2) para poder evaluar despues, luego
X
Y
almacenara 0 en
. La expresión 5 + 2 se evalúa y el resultado, 7, se almacena en
. Después
X
Y
de esta instrucción
se iguala a 0 y
se iguala a 7.
Como Sign-Extend 7 ay Post-Clear son siempre operadores de asignación, las reglas de
Asignación Intermedia aplican a ambos (ver Pág. 151).
Signo-Extendido 15 o Post-Set '
'
~~
Este operador es inmediato especial y tiene doble propósito dependiendo de en que lado de la
variable aparece. Solo puede usarse en expresiones variables en tiempo de ejecución. La
forma Signo-Extendido 15 del operador aparece a la izquierda de la variable y la forma Post-
Set aparece a la derecha de la variable.
El siguiente ejemplo es la forma del operador Sign-Extend 15:
Y := ~~X + 50
X
El operador Sign-Extend 15 en este ejemplo extiende el signo del valor,
en este caso, del bit
15 hasta el bit 31. Un entero de 32-bit con signo se almacena en complementos de dos y el bit
mas significativo (31) indica el signo del valor (positivo o negativo). Algunas veces donde los
Tabla de contenido
loading

Productos relacionados para Parallax Propeller P8X32A

Este manual también es adecuado para:

Propeller p8x32a-d40Propeller p8x32a-q44Propeller p8x32a-m44

Tabla de contenido