扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
运算符用于在程序运行时执行数学或逻辑运算。
在成都网站建设、网站建设中从网站色彩、结构布局、栏目设置、关键词群组等细微处着手,突出企业的产品/服务/品牌,帮助企业锁定精准用户,提高在线咨询和转化,使成都网站营销成为有效果、有回报的无锡营销推广。创新互联建站专业成都网站建设十年了,客户满意度97.8%,欢迎成都创新互联客户联系。
1.算术运算符
Go 语言的算术运算符如图,假设A值为10,B值为20。
2.关系运算符
Go 语言的关系运算符如图,假设A值为10,B值为20。
3.逻辑运算符
Go 语言的逻辑运算符如图。假定A值为True,B值为False。
4.位运算符
位运算符对整数在内存中的二进制位进行操作。
位运算符比一般的算术运算符速度要快,而且可以实现一些算术运算符不能实现的功能。如果要开发高效率程序,位运算符是必不可少的。
Go 语言的位运算符如图。假定 A = 60,B = 13,其二进制数转换如下。
A = 0011 1100
B = 0000 1101
5.赋值运算符
Go 语言的赋值运算符如图。
6.其他运算符
Go 语言的其他运算符如图。
运算符的优先级
所谓优先级,就是当多个运算符出现在同一个表达式中时,先执行哪个运算符。
//二进制转十六进制
func btox(b string) string {
base, _ := strconv.ParseInt(b, 2, 10)
return strconv.FormatInt(base, 16)
}
//十六进制转二进制
func xtob(x string) string {
base, _ := strconv.ParseInt(x, 16, 10)
return strconv.FormatInt(base, 2)
}
func ByteToBinaryString(data byte) (str string) {
var a byte
for i:=0; i 8; i++ {
a = data
data = 1
data = 1
switch (a) {
case data: str += "0"
default: str += "1"
}
data = 1
}
return str
}
//该代码片段来自于:
使用方法package main
import . "fmt"
func main() {
Printf("[%s][%s][%s][%s]\n",
ByteToBinaryString(byte(0)),ByteToBinaryString(byte(231)),
ByteToBinaryString(byte(168)), ByteToBinaryString(byte(162)))
}
-1的二进制是1111 1111,不是1000 0001喔,负数的二进制表示为其原码的反码再加1,
正数的反码跟原码不变,而负数的反码除符号位外其他位取反
-1的原码是1000 0001,所以反码为1111 1110,最后在加1即1111 1111
如果二进制1000 0001是一个有符号位的8位数据,那么最高位为符号位,1为负数0为正数
那反过来二进制1000 0001表示成十进制就是减1在取反,
1000 0001 - 1=1000 0000
除符号位取反后为1111 1111即-127
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流