ROR

Rotaciona “N” bits de um operando “IN” à direita. É um bloco de função.

Biblioteca: IEC_STD · Namespace: IEC · Tipo: bloco de função

Bloco de função

                   ROR
             +-------------+
ANY_BIT  ----|IN           |---- ANY_BIT
             |             |
ANY_INT  ----|N            |
             +-------------+

Este bloco aceita como parâmetro IN qualquer tipo do grupo ANY_BIT (BOOL, BYTE, WORD, DWORD ou LWORD) e como parâmetro N qualquer tipo do grupo ANY_INT (SINT, USINT, INT, UINT, DINT, UDINT, LINT ou ULINT). Para mais informações consulte os Grupos de tipos de dados. O tipo de retorno é sempre o mesmo do tipo de entrada IN.

Parâmetros

Nome

Direção

Tipo

Faixa / Unidade

Descrição

IN

IN

ANY_BIT

—

Operando a ser rotacionado para a direita.

N

IN

ANY_INT

—

Número de bits a serem deslocados IN para a direita.

Retorno / Saídas

Tipo

Faixa / Unidade

Descrição

ANY_BIT

—

Valor resultante da operação de rotacionamento.

Observações

Exemplo

Clique aqui para baixar a tabela de variáveis

Código ST

 VAR
     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 *)
 END_VAR

 (* 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 *)
 (* ... *)