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

Clique aqui para baixar a tabela de variáveis

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