大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
C语言中常见 ~Number ,怎么计算?
计算一个数字的 ~number
- 比如说现在有 A=60
- 所谓~,就是我们要找到那个负数的补码值等于这个数字的取反。
- 那么A 的8位二进制数 就是 0011 1100
- 那首先要计算 ~A 即 ~60 , 那么先取反
- 即 1100 0011 。
- 因为 负数的补码是 取反+1。
- 所以此处逆向操作需要 -1 取反
- 即 1100 0011 -1 == 1100 0010 (第一步逆向操作)
- 1100 0010 =>取反=> 00111101 => 十进制的 61
- 最后结果 A == 60 , ~A = -61
- C 语言中 ~60 == -61
计算~0
- 0 的补码
- 0000 0000
- 取反 1111 1111
- 逆操作 -1 => 1111 1110
- 取反 => 0000 0001
- 即 1
- 又因此处 是取反 负数 即 ~0 == -1
任意数
- B=x
- ~B= x二进制 =>取反 => 减1 => 再取反 => 转化为 10 进制的负数
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/191386.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...