Open In App

bits.RotateLeft() Function in Golang with Examples

Go language provides inbuilt support for bits to implement bit counting and manipulation functions for the predeclared unsigned integer types with the help of bits package. This package provides RotateLeft() function which is used to rotate a left by (k mod UintSize) bits and to rotate a right by k bits you need to call RotateLeft(a, -k). To access RotateLeft() function you need to add a math/bits package in your program with the help of the import keyword.

Syntax:



func RotateLeft(a uint, k int) uint

Parameters: This function takes two parameter i.e., a of uint type and k of int type.

Return Value: This function return the rotated(either left or right) value of uint type.



Example 1:




// Golang program to illustrate bits.RotateLeft() Function
package main
  
import (
    "fmt"
    "math/bits"
)
  
// Main function
func main() {
  
    // Using RotateLeft() function
    var a uint = 5
    b := bits.RotateLeft(a, 1)
    fmt.Printf("Original: %b", a)
    fmt.Printf("\nAfter Rotation(Left): %b", b)
  
}

Output:

Original: 101
After Rotation(Left): 1010

Example 2:




// Golang program to illustrate bits.RotateLeft() Function
package main
  
import (
    "fmt"
    "math/bits"
)
  
// Main function
func main() {
  
    // Using RotateLeft() function
    var a uint = 5
    b := bits.RotateLeft(a, -1)
    fmt.Printf("Original: %b", a)
    fmt.Printf("\nAfter Rotation(Right): %b", b)
  
}

Output:

Original: 101
After Rotation(Right): 1000000000000000000000000000000000000000000000000000000000000010


Article Tags :