c语言位运算取反_c语言取反程序

c语言位运算取反_c语言取反程序先说结论假设x为signedint,也就是说它的补码表示中第一位表示符号(1:负;0:正),那么~x=-(x+1)证明计算机内部使用补码表示,则问题相当于求证:当x为signedint时,(~x)补=[-(x+1)]补(0)证明:因为补码有个规律:(x+y)补=(x)补+(y)补,所以:[-(x+1)]补=[(-x)+(-1)]补=(-x)补+(-1)补要证(~x)补=[-(x+1)…

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

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

先说结论

假设x为signed int,也就是说它的补码表示中第一位表示符号(1:负;0:正),那么~x=-(x+1)

证明

计算机内部使用补码表示,则问题相当于求证:当x为signed int时,(~x)补=[-(x+1)]补 (0)

证明:

因为补码有个规律:(x+y)补=(x)补+(y)补,所以:

[-(x+1)]补

= [(-x)+(-1)]补

= (-x)补 + (-1)补

要证(~x)补=[-(x+1)]补,只需要证(~x)补-(-x)补=(-1)补 (1)

考虑到:

(~x)补-(-x)补

=(~x)补+(-(-x)补) (2)

(-x)补+(-(-x))补

= [(-x) + (-(-x))]补

= [(-x) + x ]补

= 0

也就是说-(-x)补=(-(-x))补 (3)

把(3)带入(2),得到:

(~x)补-(-x)补

= (~x)补+(-(-x))补

= [(~x) + x ]补

= [1111…11]补 (所有位都为1)

= [1111…10]反 (最后一位为0,其它位都为1)

= [1000…01]原 (第一位和最后一位为1,其它位都为0)

= (-1)补

也即(1)得证,因而(0)成立。证毕。

原文:https://www.cnblogs.com/zjutzz/p/10646760.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • 主流量化交易的几种策略模型

    主流量化交易的几种策略模型量化策略可以简单分为三类,分别是Alpha策略、CTA策略以及高频交易策略1.Alpha策略Alpha策略包含不同类别:按照研究内容来分,可分为基本面Alpha(或者叫财务Alpha)和量价Alpha。业内普遍不会将这两种Alpha完全隔离开。但是不同团队会按照其能力、擅长方向以及信仰,在做因子上有所偏向。有的团队喜欢用数据挖掘的方式做量价因子,而有的团队喜欢从基本面财务逻辑的角度出发,精细地筛选财务因子。。按照是否对冲可以分为两类。全对冲的叫做Alpha策略,不对冲的在市面上常被称作指

    2022年6月26日
    41
  • mysql数据库批量插百万数据_sql数据库怎样批量添加数据

    mysql数据库批量插百万数据_sql数据库怎样批量添加数据DELIMITER$DROPPROCEDUREifEXISTSpro_batch_insert$CREATEPROCEDUREpro_batch_insert(INinsert_numINT)BEGINDECLAREiINTDEFAULT1;WHILEi<=insert_numDOINSERTINTOadmin(username,`password`)VALUES(CONCAT(‘Rose’,i),’666′);.

    2022年9月26日
    3
  • Spring Boot – Mybatis 缓存

    Spring Boot – Mybatis 缓存mybatis提供查询缓存,用于减轻数据压力,提高数据库性能。mybaits提供一级缓存和二级缓存。一级缓存一级缓存是sqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。一级缓存的作用域是同一个SqlSession,在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存

    2022年5月21日
    59
  • pytest+allure实战

    pytest+allure实战pytest+allure实战pytest+allure实战基本架构Login.pytest.pyrun_all_case.py测试报告pytest+allure实战写之前,说一下自己的感受,大家之前调试出来的框架什么的一定要做好记录,或者归纳整理好,pytest+allure很久之前就用过了,但是当时出报告以后就扔一边了,当我想整理写一篇关于这个的时候完全找不到在哪,但是脑子里还记的这个框架之前100%用过,就是不知道放哪里了,重新调试也不想调,就一直翻电脑,越翻越燥,大半天也没找见,其实就在我眼皮底

    2022年7月26日
    8
  • 模电总结(一)「建议收藏」

    模电总结(一)「建议收藏」本总结用于个人复习、考研需要,也可供其他小伙伴学习、借鉴。基于GAY电期末引导,先粗略基于gay电期末写五篇。所以只为建立系统,对细节并没有深挖。第一章半导体及其器件个人概述——这一章我们学什么呢?学半导体的基本知识,pn结是什么,二极管的构造与特性,如何分析二极管的基本电路。(具体如下)但是,因为这里是现初步建立体系,我们在这讨论的是一些枝干,对部分知识忽略。gay电在此考的是半导体的基本知识和pn结和二极管基本电路。这一章我们就讲这个。首先,我们要了解半导体器件是什么?..

    2022年6月20日
    32
  • 层次分析法(AHP)详细步骤

    层次分析法(AHP)详细步骤1.算法简介

    2022年6月27日
    42

发表回复

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

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