转换 11111000 到 -8 怎么做 感谢。
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
补码-1再转反转 // 1,1,1,1,1,0,0,0 补码 // 1,1,1,1,0,1,1,1 // 补码 - 1 = 反码 // 1,0,0,0,1,0,0,0 // 反码反转 = 原码 // -8
完美出结果:-8
package main import ( "fmt" ) func main() { a := uint8(0b11111000) fmt.Println(int8(a)) }
const x = ^int8(^uint8(0b11111000))
`单行代码`
补码-1再转反转 // 1,1,1,1,1,0,0,0 补码 // 1,1,1,1,0,1,1,1 // 补码 - 1 = 反码 // 1,0,0,0,1,0,0,0 // 反码反转 = 原码 // -8
完美出结果:-8