1 ubyte a = 0b11110000U; 2 ulong b = ~1UL; 3 4 assert(rol(a, 1) == 0b11100001); 5 assert(ror(a, 1) == 0b01111000); 6 assert(rol(a, 3) == 0b10000111); 7 assert(ror(a, 3) == 0b00011110); 8 9 assert(rol(a, 0) == a); 10 assert(ror(a, 0) == a); 11 12 assert(rol(b, 63) == ~(1UL << 63)); 13 assert(ror(b, 63) == ~2UL); 14 15 assert(rol!3(a) == 0b10000111); 16 assert(ror!3(a) == 0b00011110);
Bitwise rotate value left (rol) or right (ror) by count bit positions.