Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fn main() {
- let mut byte: u8 = 0b0000_0000;
- byte |= 0b0000_1000; // Set a bit
- println!("0b{:08b}", byte);
- byte &= 0b1111_0111; // Unset a bit
- println!("0b{:08b}", byte);
- byte ^= 0b0000_1000; // Toggle a bit
- println!("0b{:08b}", byte);
- }
- fn main() {
- let mut byte: u8 = 0b0000_0000;
- byte = !byte; // Flip all bits
- println!("0b{:08b}", byte);
- }
- fn main() {
- let mut byte: u8 = 0b0000_1000;
- byte <<= 1; // shift left one bit
- println!("0b{:08b}", byte);
- byte >>= 1; // shift right one bit
- println!("0b{:08b}", byte);
- }
- fn main() {
- let mut byte: u8 = 0b1000_0000;
- byte = byte.rotate_left(1); // rotate left one bit
- println!("0b{:08b}", byte);
- byte = byte.rotate_right(1); // rotate right one bit
- println!("0b{:08b}", byte);
- }
- fn bit_twiddling(original: u8, bit: u8) {
- let mask = 1 << bit;
- println!(
- "Original: {:b}, Set: {:b}, Cleared: {:b}, Toggled: {:b}",
- original,
- original | mask,
- original & !mask,
- original ^ mask
- );
- }
- fn main() {
- bit_twiddling(0, 3);
- bit_twiddling(8, 3);
- }
Add Comment
Please, Sign In to add comment