package _case
import "fmt"
// 关系运算
func RelationCase() {
var a = 21
var b = 10
fmt.Println("a == b", a == b)
fmt.Println("a != b", a != b)
fmt.Println("a > b", a > b)
fmt.Println("a < b", a < b)
fmt.Println("a >= b", a >= b)
fmt.Println("a <= b", a <= b)
}
// 逻辑运算
func LogicCase() {
var a = true
var b = false
fmt.Println("a && b", a && b)
fmt.Println("a || b", a || b)
fmt.Println("!a", !a)
fmt.Println("!b", !b)
}
func BitCase() {
var a uint8 = 60
var b uint8 = 13
var c uint8 = 10
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 相同位数 1 则为1
c = a & b
fmt.Println("a & b")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 存在一个为1 则为1
c = a | b
fmt.Println("a | b")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 非运算 1^1=0 1^0 = 1 0^0 = 0
c = a ^ b // 三目运算符
fmt.Println("a ^ b")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 位移运算 a 向左移动 2 位
c = a << 2
fmt.Println("a << 2")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 位移运算 a 向右移动 2 位
c = a >> 2
fmt.Println(" a >> 2")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
// 取反
c = ^a
fmt.Println(" ^a : ")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
c = a &^ b
fmt.Println(" a &^ b : ")
fmt.Printf("a = %08b\n", a)
fmt.Printf("b = %08b\n", b)
fmt.Printf("c = %08b\n", c)
}