最近在学计算机组成原理,又遇到了原码、反码、补码的运算。
就整理了运算规则,方便以后复看,减少时间浪费。

简介

原码:符号位 + 数值位
反码:反码是原码和补码之间转化的工具,是个桥梁作用。
补码:补码的意义是为了将减法转换成加法

运算规则

(原码、反码、补码之间相互转化,记住符号位不要动)

重要的事情再说一遍,符号位不要动!!!

正数,原码 = 补码 = 反码
负数,原码求反码

  • 原码除了符号位以外,全部求反就是反码

负数,原码求补码

  • 求出来的反码加+1,就是补码。

如果你只是临时应付考试和作业,下面内容可以不看。

补充

计算机将减法转换成加法的原理就是利用了补码。
例如我们现在有个时钟,时针指着3。

如果我们要让时针指向6,(假设顺时针运动为加法,逆时针运动是减法)

  1. 逆时针运动 9个小时
  2. 顺时针运动 3 个小时

这两种方法是等效的。
也就是说
3-9 = 6(模12)
3+3 = 6

这样就将减法转换成加法了。

参考文章

https://www.cnblogs.com/chenhaodong123/p/10527075.html

原码、反码、补码的运算 【2分钟掌握】相关推荐

  1. 关于 原码 反码 补码 位运算

    二进制 原码:最高位为符号位,0为正  1为负 正数的原码 反码 补码 都是相同的 反码:负数的反码为原码符号位不变 其它对应变化(1变0 0变1) 补码:等于 反码+1 3^-3 =? 运算过程 - ...

  2. 原码反码补码之间运算转换

    1. 正数的原码=反码=补码 2. 负数的反码=在其原码的基础上, 符号位不变,其余各个位取反 负数的补码=在反码的基础上+1 负数的补码=在原码的基础上, 符号位不变, 其余各位取反, 最后末位+ ...

  3. 数字电子技术基础 原码 反码 补码及运算

    原码:就是原来的数值转变为计算机中储存的二进制格式.比如10的原码为0 0001010(此时以8位机为例) 反码:正数的二进制反码与原码一样,负数的二进制反码除了符号位其他位都取反(即1取0,0取1) ...

  4. day017:Java进制转换、原码反码补码、位运算、位移运算符

    一.进制介绍: 1.进制:指进位制,表示某一位置上的数,运算时是逢X进一. 十进制就是逢十进一,二进制就是逢二进一,八进制就是逢八进一. 2.Java中默认的数值都是十进制,如果要输入其他进制,在数值 ...

  5. 由Python位运算到原码反码补码

    采用书籍Python核心编程(第二版),人民邮电出版社,2008年7月第1版.本书以Python2.5为主,但笔记主要以Python3.6为主. 一.Python位运算操作符 Python支持标准位运 ...

  6. 关于计算机中 原码, 反码, 补码 详解

    本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...

  7. 原码, 反码, 补码, 移码 详解

    本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...

  8. java进制原码_Java 一一 进制、原码 反码 补码、移位操作

    进制 二进制 和 十进制 相互转换 十进制 和 十六进制 相互转换 原码,反码,补码 原码.反码.补码: 在计算机内, 有符号数有三种表示法: 原码, 反码, 补码. 所有的数据的运算都是采用 补码 ...

  9. 原码 反码 补码 详解

    一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1.机器数 一个数在计算机中的二进制表示形式,  叫做这个数的机器数.机器数是带符号的,在计算机用一个数的最高位存放 ...

  10. python二进制反码例题_python中的进制转换和原码,反码,补码

    python中的进制转换和原码,反码,补码 计算机文件大小单位 b = bit 位(比特) B = Byte 字节 1Byte = 8 bit #一个字节等于8位 可以简写成 1B = 8b 1KB ...

最新文章

  1. 皮一皮:真正的情侣服...一家人轮流穿...
  2. 1.18.Table API SQL(概念、依赖图、Table程序依赖、扩展依赖)
  3. 杭电oj java printf_杭电oj1042题大数,java,百思不得其解为何WA,求指教
  4. 如何使用字节序列化双精度数组(二进制增量编码,用于低差单调浮点数据集)...
  5. mitmproxy抓包 | Python疑难测试场景mock实战(四)
  6. linux重装lnmp,基于CentOS 6.5的LNMP安装过程
  7. MySQL中处理Null时要注意两大陷阱
  8. Javascript--Folder对象
  9. python代码翻译器-Python一键转Java?quot;谷歌翻译”你别闹(附链接)
  10. ny17 单调递增最长子序列
  11. 计算机网络 - mbed TLS
  12. css3技巧——实现一个正方体
  13. 另辟蹊径,挑战网络战争
  14. 班级网页制作 HTML个人网页设计 我的班级网站设计与实现 大学生简单班级静态HTML网页设计作品 DIV布局班级网页模板代码 DW学生校园网站制作成品下载
  15. Socks代理是什么?PC端怎么使用Socks5代理?
  16. 封装:el-upload上传图片组件(解决图片闪动、多选问题)
  17. 7 centos 配置sudo权限_CentOS7 配置sudo并使用
  18. 苹果IOS模拟器电脑版用哪个好 逍遥模拟器玩部分苹果账号互通
  19. CodeForces - 1139C Edgy Trees (快速幂+dfs)
  20. 深入理解java虚拟机(五)GC垃圾回收-经典垃圾收集器

热门文章

  1. ST_Curve --- 一个专业的曲线绘制控件
  2. 把char*转换为wchar_t*
  3. SQLite学习手册(C/C++接口简介)
  4. 4gl 上传文件_文件管理密码相册工具app下载-文件管理密码相册工具app安卓版下载v1.8...
  5. lux系统服务器安装后多大,服务器环境搭建
  6. PyQt5 参考文档
  7. 上海女博士“择偶条件”惹争议,相亲像是在许愿,网友:别做梦了 !
  8. 【机器学习】从一个风控案例讲起-古老而经典的朴素贝叶斯
  9. 【数据竞赛】基于LSTM模型实现共享自行车需求预测
  10. 【深度学习】使用transformer进行图像分类