0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

计算机的原码和反码及补码到底是什么

Wildesbeast 来源:今日头条 作者:算法集市 2020-02-12 16:31 次阅读

数据在计算机里面都是以0和1存储和运算的,这是冯诺依曼体系的基础。

比如一个数在计算机中若有正负之分,则用一个数的最高位(符号位)用来表示它的正负,其中0表示正数,1表示负数。

原码就是整数绝对值的二进制形式,为了解决计算机中有负数的运算,提出了反码、补码。

1、原码

原码就是符号位加上真值的绝对值,第一位表示符号,其余位表示值。对于4位的二进制,其取值范围就是[1000,0111],即[-8,7]。

+5的原码:0101

-5的原码:1101

2、反码

正数的反码是其本身。

负数的反码是在其原码的基础上,符号位不变,其余位取反。

+5的反码:0101

-5的反码:1010

可见如果一个反码表示的是负数,是无法直观地看出来它的数值,通常要将其先转换成原码再计算。

3、补码

正数的补码还是其本身。

负数的补码是在其原码的基础上,符号位保持不变,其余位取反,最后+1。即反码加1。

+5的补码:0101

-5的补码:1011

综上,计算机有三种编码方式来表示同一个数。

对于+5和-5,

[+5] = [0101]原 = [0101]反 = [0101]补

[-5] = [1101]原 = [1010]反 = [1011]补

计算机采用补码的形式来表示负数。欲知为何如此,请阅读计算机为何采用补码的形式来表示负数

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    705

    浏览量

    41248
  • 计算机
    +关注

    关注

    19

    文章

    6649

    浏览量

    84505
收藏 人收藏

    评论

    相关推荐

    大学计算机:2 原码反码补码(2)#大学计算机

    计算机
    学习硬声知识
    发布于 :2023年07月05日 18:21:15

    原码补码反码、有符号数、无符号数概念.pdf

    原码补码反码、有符号数、无符号数概念.pdf
    发表于 11-15 08:44

    C语言 关于原码补码问题

    我想通过补码得到原码,但现在这个程序做不到,只能得到补码,求大神指点。
    发表于 02-14 10:46

    计算机中原码反码补码之间的关系

    首先提几个概念: 原码反码补码     原码是什么?      原码就是早期用来表示数字的一种方式: 一个正数,转换为二进制位就是这个正
    发表于 09-17 10:00

    原码反码补码的详细理解

    `一. 机器数和真值在学习原码, 反码补码之前, 需要先了解机器数和真值的概念.1、机器数一个数在计算机中的二进制表示形式,叫做这个数的机器数。机器数是带符号的,在
    发表于 11-16 15:32

    补码是什么 补码原码的转化

    计算机中的有符号数有三种表示方法,即原码反码补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。在
    发表于 12-11 17:45

    单片机的重要功能/组成

    1. 数制为更好描述和记忆微型计算机的地址,代码一般采用十六进制.原码,反码补码正数的反码补码
    发表于 11-18 08:49

    什么是原码反码补码

    文章目录1 前言2 什么是原码反码补码2.1 原码表示法2.2 反码表示法2.3 补码表示法
    发表于 12-15 07:00

    计算机原码反码及其补码是干啥的?

      很多人都只知道计算机使用的是二进制,但很少有了解到计算机是以补码的方式进行存储数据的。  不过补码是通过原码
    发表于 04-13 17:04

    微型计算机原理与应用

      Ø1.掌握常用进位计数制及其相互转换; Ø2.掌握数的原码反码补码表示法,并熟练掌握补码加减运算; Ø3.掌握BCD码、AS
    发表于 11-06 15:36 35次下载

    计算机为什么使用补码的形式来表示负数

    计算机有三种编码方式来表示同一个数: 原码:符号位加上真值的绝对值,第一位表示符号,其余位表示值。 反码:正数的反码是其本身;负数的反码
    的头像 发表于 02-12 15:28 8495次阅读

    深入探求反码补码

    本篇文章讲解了计算机原码反码补码。 并且进行了深入探求了为何要使用反码补码, 以及更进
    的头像 发表于 09-15 15:23 1124次阅读

    计算机为什么要使用补码

    ,增加了计算的时间,能不能用加法器实现减法器的功能?这个实现的过程就用到了补码计算机为什么使用补码?采用补码可以简化
    的头像 发表于 09-12 16:06 6922次阅读

    计算机原码反码补码的概念

    计算机内部数值是以补码的方式进行存储的,采用补码进行数据存储当然有其优点,下面会一一介绍相关内容,让各位彻底弄懂原码反码
    的头像 发表于 01-09 12:25 1977次阅读
    <b class='flag-5'>计算机</b><b class='flag-5'>原码</b>、<b class='flag-5'>反码</b>、<b class='flag-5'>补码</b>的概念

    计算机为什么利用反码来实现减法?

    计算机为什么利用反码来实现减法? 计算机在实现减法运算时利用反码的原因可以从历史背景、计算机设计优势和运算规则等方面来分析。 1. 历史背景
    的头像 发表于 02-19 15:10 225次阅读