按位取反怎么运算_按位取反在线计算器

按位取反怎么运算_按位取反在线计算器一、首先二进制在计算机的内存中是以补码的形式存储二、正数的补码=原码=反码,负数的反码=原码的取反(二进制数的符号位除外,一般来说在二进制的左边的最高位)补码=反码+1三、按位取反怎么算按位取反:二进制的每一位都取反(符号位+数据位)公式法:~x=-(x+1)举两个例子:~11=-(11+1)=-12~(-11)=10公式法的内部是如何计算的呢:以~11为例:~11的计算步骤:计算11的补码转二进制:01011计算补码:01011按位取反:10100(按位取反

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、首先二进制在计算机的内存中是以补码的形式存储
二、正数的补码=原码=反码,
负数的反码=原码的取反(二进制数的符号位除外,一般来说在二进制的左边的最高位) 补码=反码+1

三、按位取反怎么算
按位取反:二进制的每一位都取反(符号位+数据位)
公式法:
~x=-(x+1)
举两个例子:~11=-(11+1)=-12
~(-11)=10

公式法的内部是如何计算的呢:
以~11为例:
~11的计算步骤:

  1. 计算11的补码
    转二进制:0 1011
    计算补码:0 1011
  2. 按位取反:1 0100 (按位取反是在这进行的,即补码的形式进行按位取反) 注意:这里是补码
  3. 将转为原码:
    取其反码(因为补码是负数):1 1011
    末位加一:1 1100
  4. 符号位为1是负数,即-12

以~(-11)为例:
~(-11)的计算步骤:

  1. 计算-11的补码
    转二进制:1 1011
    计算补码:1 0101
  2. 按位取反:0 1010 (按位取反是在这进行的,即补码的形式进行按位取反) 注意:这里是补码
  3. 将转为原码:
    正数补码就是原码:0 1010
  4. 符号位为0是正数,即10
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170468.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • nginx启动成功_centos重启服务器命令

    nginx启动成功_centos重启服务器命令文章目录启动Nginx停止nginxservice服务脚本Nginx开机自启启动Nginxnginx安装完成后,切换到nginx安装目录中的sbin目录(如果在执行./configure没有指定额外的参数,则sbin目录为默认目录,否则切换到自定义目录),通过执行该目录下nginx编译后的二进制文件即可启动程序。cd/usr/local/nginx/sbin/nginx./nginx执行上面的操作后,成功启动nginx,程序是没有任何提示的。我们可以使用ps命令查看nginx的运行状态

    2022年8月13日
    7
  • 从零开始学WEB前端——HTML理论讲解

    从零开始学WEB前端——HTML理论讲解????项目介绍先做个自我介绍,本人是一个没人写前端所以就自学前端的后端程序员????。在此项目中我会和大家一起从零基础开始学习前端,从后端程序员的视角来看前端,受限于作者的水平本项目暂时只会更新到前端框架VUE,不会涉及node.js。该项目适合零基础的小白或者和我一样开发网站没人写前端所以自学前端的后端程序员????。该项目的学习顺序是按照我自己学习时总结出来的,其中的每个知识点都是我认真去理解的,同时也查了很多的资料,所有的参考资料我都放在了文章末尾。尊重开源,尊重知识产权。每一个案例我都亲手写过

    2022年5月3日
    43
  • Qt高并发

    Qt高并发QThread是一个低级(low-level)类,适合用于显式地构建长期运行的线程。     QtConcurrent是一个命名空间,提供了用于编写并发软件的更高层次的类和算法。该命名空间中有一个重要的类,QThreadPool,这是一个管理线程池的类。每个Qt应用程序都有一个QThreadPool::globalInstance()函数,它带有一个推荐的最大线程数,在大多数系统上,处理核的数…

    2022年5月28日
    118
  • 远程服务器虚拟显示器(Ubuntu 20.04 LTS)[通俗易懂]

    远程服务器虚拟显示器(Ubuntu 20.04 LTS)[通俗易懂]远程服务器虚拟显示器(Ubuntu20.04LTS)1.准备工作2.安装软件包3.修改配置文件4.卸载虚拟显示器1.准备工作安装sshsever并开启,确保虚拟显示器配置失败后,无法正常显示,仍可以通过ssh连接至服务器sudoapt-getinstallopenssh-server查看ssh服务已经开启,并可以远程ssh连接至服务器ps-e|grepssh测试远程连接2.安装软件包sudoapt-getinstall

    2022年8月21日
    6
  • recvfrom设置超时

    recvfrom设置超时structtimevaltv;intret;tv.tv_sec=10;tv.tv_usec=0;if(setsockopt(s,SOL_SOCKET,SO_RCVTIMEO,&tv,sizeof(tv))<0){ printf("socketoptionSO_RCVTIMEOnotsupport\n"); return;}if((ret

    2022年7月23日
    16
  • string和stringbuffer的区别面试题_stringbuffer转为string

    string和stringbuffer的区别面试题_stringbuffer转为stringString和StringBuffer的区别String:是对象不是原始类型。为不可变对象,一旦被创建,就不能修改它的值。对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。String是final类,即不能被继承。StringBuffer:是一个可变对象,当对它进行修改的时候不会像String那样重新建立对象。它只…

    2022年4月19日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号