Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,870 questions

51,793 answers

573 users

How to get the bitwise right-rotation of X by N positions (right circular shift) using bitset in C++

1 Answer

0 votes
#include <bitset>
#include <cstdint>
#include <iostream>

// C++ 20 (and above)
 
int main()
{
    // constexpr T rotr( T x, int s ) noexcept;

    const std::uint8_t i = 0b10011101;
    std::cout << "i          = " << std::bitset<8>(i) << '\n';
    std::cout << "rotr(i, 0) = " << std::bitset<8>(std::rotr(i, 0)) << '\n';
    std::cout << "rotr(i, 1) = " << std::bitset<8>(std::rotr(i, 1)) << '\n';
    std::cout << "rotr(i, 2) = " << std::bitset<8>(std::rotr(i, 2)) << '\n';
    std::cout << "rotr(i, 4) = " << std::bitset<8>(std::rotr(i, 4)) << '\n';
}


/*
run:

i          = 10011101
rotr(i, 0) = 10011101
rotr(i, 1) = 11001110
rotr(i, 2) = 01100111
rotr(i, 4) = 11011001

*/

 



answered Oct 13, 2024 by avibootz

Related questions

1 answer 36 views
1 answer 46 views
1 answer 97 views
97 views asked May 6, 2025 by avibootz
1 answer 162 views
1 answer 113 views
...