ccROR
ccROL

Syntax

Uint64 = ccROR(Target:Uint64,OPT CandC = 1:Word/Or Word ByRef)
Uint64 = ccROL(Target:Uint64,OPT CandC = 1:Word/Or Word ByRef)

Description

Performs rotate Right or
Rotate Left on 64 bits Variable.

      .------------------.             .--.
.-->|63 ----------> 0 |----.--->|C|
|     '------------------'      |      '--'
'----------------------------'
      .------------------.             .--.
.--<|63 ----------> 0 |<--.--->|C|
|     '------------------'      |      '--'
'----------------------------'

CandC = CandC|Carry << 9

Parameters

Target - Variable, which bits will be rotated.
CandC - Counter for the bits being rotated.(Max. 255)

Return value

A Uint64 roteted.
'CandC' will contain 'CandC' and in it's 8-th bit the value of the last bit rotated out

Remarks

To get the Carry use Carry = CandC >> 8
And you have to give the 'CandC' Byref!!!
Like :
R = ccROR(R,&CandC)

Example usage

R = ccROR(R,S)
R = ccROL(R,4)

See
Logics_Demo.eba