zoukankan      html  css  js  c++  java
  • 二进制数的原码反码与补码

       众所周知,二进制是我们计算机语法的基本组成,他以0和1为基础,构建了我们多样神奇的信息世界。因此说,二进制对于我们是十分重要的。

    对于二进制来说,他在计算机中有三中表示方法:原码、反码和补码。这三种码的区别,就是对于正负表示不同的区别。

    对于原码来说,他对于正负的表示方法是在整个二进制数前加0或1。0用来表示正号,1用来表示负号。比如,一个正二进制数+1101表示为01101,负二进制数-1011表示为11011。因为这是一种最基本的表示方法,故称之为原码。

    对于反码来说,他相对于原码有了一定的改变。在表示正数时,与原码方法相同,但是在表示负二进制数时,负号仍用1表示,但是后面的每一个数都要变成相反的数,即0变1,1变0。比如,负二进制数-1101的反码就是10010。

    最后的是补码。对于补码来说,他的正二进制数表示方法与原码相同,负二进制数就是在最后加上1,可以理解为在反码后加1。比如,负二进制数-10010补码表示为1011011。

    之所以有原码、反码、补码的区别,当然是因为他们有着各自的优点。

    1、原码作为最原始的二进制码,理论上可以在任何运算中使用,但是最多的还是用在乘除法上。

    2、补码是在原码上的补充,他相对于原码节省了时间,一般用于减法。

    3、反码作为一种中间代码,他的主要任务就是给补码做一个过渡,一般没有什么具体的作用。

    大体就是这样,以后再做详细的了解。

  • 相关阅读:
    P7473 [NOI Online 2021 入门组] 重力球
    CF896D Nephren Runs a Cinema
    [持续更新]一些有趣的数学问题
    [微积分与无穷级数]AMM Problems笔记
    [补题]SWERC-2018
    [补题]Asia Regional Contest, Tokyo, 2014

    [NOI2005]瑰丽华尔兹-单调队列优化DP
    [补题]2017多校D-BD-区间筛/二分+线段树
    [补题]2017多校5A/HDU6085-Rikka with Candies-bitset优化
  • 原文地址:https://www.cnblogs.com/yandashan666/p/9753563.html
Copyright © 2011-2022 走看看