码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ~按位取反


    ~取反的步骤应该是:
    一、先由一个数的原码推出它的补码(原码与反码相互转化时符号位不用取反)
    二、对补码进行按位取反(包括符号位也取反),取反后的数就是新补码
    三、这个新补码是计算机存储用的,所以用这个新补码反推出原码才是我们能读懂的二进制数字。

    ------------------------------------------------------------

    例如:

    ~5 = -6 的计算步骤:

    一、先由一个数的原码推出它的补码

    5的原码 = 反码 = 补码:0000...0101    正数的原反补码相同

    二、对补码进行按位取反,取反后的数就是新补码

    取反操作:1111...1010    按位取反的操作对象是补码,且符号位也会取反,取反后会变成新补码

    三、补码是内存存储用的,所以用这个新补码反推出其原码才是我们能读懂的二进制数字。

    补码:1111...1010

    反码:1111...1001

    原码:1000...0110      -----> -6

    ------------------------------------------------------------

    再例如:

    ~(-3) = 2 的计算步骤:

    -3的原码:1000...0011

    -3的反码:1111...1100    原码转化为反码时,符号位不用取反

    -3的补码:1111...1101   内存中存的是补码

    取反操作:0000...0010    ------>    对3的补码取反得到新补码

    由新补码的符号位可以看出,该数字是个正数,故其原反补码相同

    所以,新补码 = 反码 = 原码:0000...0010      -----> 2

    ------------------------------------------------------------

    快速求按位取反~:

    原数字(正数)加一后再加负号
    ~1 = -2  
    ~2 = -3
    ~3 = -4
    ~6 = -7
    ~9 = -10

    原数字(负数)加一后再加负号
    ~(-1) = 0
    ~(-2) = 1
    ~(-3) = 2
    ~(-6) = 5
    ~(-9) = 8

  • 相关阅读:
    基于JavaWeb的汽车在线租赁管理系统
    JOSEF约瑟 可调漏电继电器RT-LB230KS+Q-FL-100 导轨安装 配套零序互感器
    win10如何实现电脑上文件共享访问
    【CodeTON Round 2 (Div. 1 + Div. 2, Rated, Prizes!)(A~D)】
    gulp打包vue3+jsx+less插件
    【PTHREAD】线程状态
    【开源】基于Vue.js的生活废品回收系统的设计和实现
    不同设备的请求头信息UserAgent,Headers
    集合深度学习02—List
    【系统学习】WRF-DA资料同化
  • 原文地址:https://blog.csdn.net/qq_56847032/article/details/134017286
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号