取反!和按位取反~的区别
http://blog.csdn.net/pipisorry/article/details/36517411
按位取反“~”:按位取反1变0,0变1
逻辑非“!”:逻辑取反, false变true,true变false,在C中,只要不是0就是真
------------------------------------------------------------------------------------------------------------------------------
所以
!5值是0
~按位取反
5二进制00000101,取反11111010,代表-6
所以~5值-6
~是按位取反,例如整数3,二进制形式是
00000000000000000000000000000011,按位取反后就是
11111111111111111111111111111100
!是逻辑否,一个非0数取否之后就是0,上面的3,用!之后就是0
所有的不是0的数用!操作后都是0
只有当操作数等于0xFFFFFFFF的,用!和~的结果值才是一样的
所有正整数的按位取反是其本身+1的负数
所有负整数的按位取反是其本身+1的绝对值
零的按位取反是 -1
ref:
http://blog.csdn.net/pipisorry/article/details/36517411
http://blog.csdn.net/xiexievv/article/details/8124108
取反!和按位取反~的区别相关推荐
- 单片机逻辑取反和按位取反差异
单片机C语言开发逻辑取反和按位取反差异 新手入门容易犯的小错误. 在不同条件语句中,注意使用场合. 示例程序 /*------------------------------------------- ...
- Verilog逻辑取反与按位取反
Verilog中逻辑取反(取非)用 !,按位取反用~. 取非 ! 表示运算结果只有0(假)与1(真)两种情况: 取反~表示二进制数按位取反. 例如对in=1101分别进行逻辑取反与按位取反: assi ...
- !和~的区别(逻辑取反和按位取反)
在c语言中,!和~均表示取反,这两个的区别在于: ! :代表逻辑取反,即:把非0的数值变为0,0变为1; ~ :表示按位取反,即在数值的二进制表示方式上,将0变为1,将1变为0: 上述其实可以从jav ...
- java实现js取反_特定位取反(js实现)
去华为面试的时候,没有做好准备工作:面试的流程没有问清也没有查,结果一过去就让上机做题,着实有点措手不及.笔者是擅长前端的Java Web工程师啊,基本的底层编程知识早已生疏了.机试题碰到了这道位运算 ...
- c# 整数取反_按位取反运算符的使用
按位取反运算符的使用 按位取反运算符是按照二进制的每一位取反,比如byte类型,~0的结果就是255. 该功能可以在mask中做一些反转操作 如下代码,a存放了2,4,8三个值.用按位取反'~'运算符 ...
- 数字的原码,补码,反码,~和‘-’的区别。取反与负号的区别。
一.原码,反码,补码的基础概念和计算方法. 原码,反码,补码只是计算机存储数字的一种方式. 1,原码 原码就是用第一位表示符号位,其余位表示值,比如8位的二进制数 [+1]原 = 0000 0001 ...
- 什么叫取反_取反位什么意思_c语言按位取反什么意思
PHP中使用按位取反(~)函数创建后门 - 微信公 580x300 - 60KB - PNG PHP中使用按位取反(~)函数创建后门 - 微信公 310x145 - 26KB - JPEG [东方新闻 ...
- java 取反 值_java编程 按位取反的问题 java中取反操作是正数
这个问题涉及到计算机内部的编码. 对于整数,计算机内部用最高位表示符号位,0表示为正,1表示为负. 对于负数,为了便于计算,计算机用补码来表示其值. 已经一个数的补码,要知道其值分两种情况: 1:符号 ...
- 复习一个知识点——原、反、补码以及取反操作
一.相关概念 1.1 机器数与真值 ·机器数 计算机中存储的数据都是带符号的二进制数,例如:5 → 0000 0101 , -5 → 1000 0101 此类数值称之为机器数. ·真值 为区别 ...
最新文章
- Datawhale第四期组队学习团队成员
- 宋仲基宋慧乔没能找到对的人,算法能帮我们找到么?
- procexp.exe中文版---Process Explorer 进程监视V11.21中文版
- Golang Context包的使用
- 简单实现AJAX: ASP.NET2.0 中回调的实现及常见问题的解决
- 再不学习我们就out了
- rem、px、em之间的区别以及网页响应式设计写法
- 简单的循环以及从接口获取数组对象的一个字段集合
- centos7安装kibana5.x
- Android 常用的adb命令
- Hicharts实现世界地图思路及踩过的坑(含中文GeoJSON数据集及详细代码)
- 日本家用电器技术标准及IEC对照介绍
- win10虚拟显示器开发
- Javascript实现用户注册验证
- 汇编语言编译器 masm.exe and link.exe
- 【sketchup 2021】草图大师的场景优化工具2【草图大师动态组件的详细使用说明和各个函数说明】【重要】
- oracle sequence nextval,SOS!!! Sequence.nextval 的问题
- 前缀列表ip prefix-list
- word中将一种颜色的突出显示批量替换为另一种
- eclipse的使用简介