Operator Shr= (Shift Right And Assign)

Shifts right and assigns a value to a variable

Syntax
   Declare Operator Shr= ( ByRef lhs As Integer, ByRef rhs As Integer )
   Declare Operator Shr= ( ByRef lhs As UInteger, ByRef rhs As UInteger )
   Declare Operator Shr= ( ByRef lhs As LongInt, ByRef rhs As LongInt )
   Declare Operator Shr= ( ByRef lhs As ULongInt, ByRef rhs As ULongInt )

Usage
   lhs shr= rhs

Parameters
   lhs
      The variable to assign to.
   rhs
      The value to shift lhs right by.

Description
   This operator shifts the bits in its left-hand side (lhs) parameter a 
   number of times specified by its right-hand side (rhs) parameter, and 
   assigns the result to lhs. It is functionally equivalent to:
      lhs = lhs Shr rhs

   This operator can be overloaded for user-defined types as a member 
   Operator using the appropriate syntax.

   Note: Similarly to the operator '=[>]' (assign), the alternative symbol 
   'Shr=>' can be also used.

Example
   Dim i As Integer
   i = &b00011000   '' = 24
   i Shr= 3         '' = i\2^3
   '' Result: 11          3            3
   Print Bin(i), i, 24\2^3
   Sleep

Dialect Differences
   * Not available in the -lang qb dialect unless referenced with the 
     alias __Shr=.

Differences from QB
   * New to FreeBASIC

See also
   * Operator Shr (Shift Right)
   * Operator Shl= (Shift Left And Assign)
   * Mathematical Functions

