PS D:\pro\rustworks\playground\demo_binop> cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.07s
Running `target\debug\demo_binop.exe`
a value is 00000010
b value is 00000011
(a & b) value is 00000010
(a | b) value is 00000011
(a ^ b) value is 00000001
(!b) value is 11111100
(a << b) value is 00010000
(a >> b) value is 00000000
(a << b) value is 00010000
修改示例数据类型为u8。原先的i32长度过长不便01二进制展示;且取反操作会一同反转符号位,或许会造成读者疑惑。 展示输出中使用
{:08b}
格式化并对齐,应该更加直观。修改后的运行效果如下