ROR
Rotaciona “N” bits de um operando “IN” à direita.
ANY_BIT pode ser tipo de dados: BOOL, BYTE, WORD, DWORD ou LWORD
ANY_INT pode ser tipo de dados: SINT, USINT, INT, UINT, DINT, UDINT, LINT, ULINT
Para mais informações consulte os Grupos de tipos de dados.
Bloco
ROR
+-------------+
ANY_BIT ----|IN |---- ANY_BIT
| |
ANY_INT ----|N |
+-------------+
Parâmetro
Nome |
Parâmetro |
Tipo Dado |
Descrição |
IN1 |
Entrada |
ANY_BIT |
Operando a ser rotacionado para a direita. |
N |
Entrada |
ANY_INT |
Número de bits a serem deslocados “IN1” para a direita. |
Retorno
Tipo Dado |
Descrição |
ANY_BIT |
Valor resultante da operação de rotacionamento. |
Exemplo
Declaração de Variáveis
Nome |
Tipo |
Descrição |
|---|---|---|
value_in |
WORD |
valor a ser deslocado |
value_n |
INT |
quantidade de bits para deslocamento |
value_out |
WORD |
valor resultante da função matemática |
Código ST
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
value_in := 16#8001; (* valor a ser rotacionado *)
value_n := 1; (* quantidade de bits a serem rotacionados *)
value_out := ROR(IN := value_in, N := value_n); (* executa o rotacionamento de bits *)
(* resultado value_out = 16#C000 *)
(* ... *)
value_out := ROR(IN := value_in, N := value_n); (* executa o rotacionamento de bits *)
(* resultado value_out = 16#8001 *)
(* ... *)