Pin
Si
es %10000000 00000000 00000000 00000000,
Pin
si
es %00000000 00010011 00010010 00100000,
alto activo.
Bitwise Shift Left '
<<
El operador Bitwise Shift Left mueve los bits del primer operando a la izquierda por la
cantidad de bits indicada en el segundo operando. Los originales MSBs (bits de la izquierda
extrema) se descargan y los nuevos LSBs (bits de la extrema derecha) se ponen a ceros. El
Bitwise Shift Left puede usarse en expresiones variables y constantes enteras pero no en
expresiones constantes de punto flotante. Ejemplo:
X := Y << 2
Y
Si
inicio como:
%10000000 01110000 11111111 00110101
...el operador Bitwise Shift Left moverá ese valor a la izquierda dos bits dejando
%00000001 11000011 11111100 11010100
Como la naturaleza del binario en la base es mover un valor a la izquierda es como
multiplicar ese valor por potencias de dos, 2
Bitwise Shift Left tiene una forma de asignación,
en el primer operando como en el resultado destino. Por ejemplo,
X <<= 4 'Forma corta de X := X << 4
X
Aquí el valor de
se mueve a la izquierda cuatro bits y se almacena de regreso en
de asignación de Bitwise Shift Left puede ser usada en expresiones de resultados intermedios;
ver Asignaciones Intermedias, Pág. 151.
Bitwise Shift Right '
El operador Bitwise Shift Right mueve los bits del primer operando a la derecha por el
numero de bits indicado en el segundo operando. Los originales LSBs (bits de la extrema
derecha) se descargan y los nuevos MSBs (bits de la extrema izquierda) se activan a cero. El
Bitwise Shift Right puede usarse en expresiones variables y constantes enteras pero no en
expresiones constantes de punto flotante. Ejemplo:
X := Y >> 3
Y
Si
inicio como:
2: Referencia de Lenguaje Spin – Operators
', '
'
<<=
b
, donde b es el numero de los bits que se mueve.
', '
'
>>
>>=
PinNum
es 32; el bit 31 es activo.
PinNum
es 21; el bit 20 es el bit mas
<<=
, que usa la variable a la izquierda tanto
X
a:
X
. La forma