`
backsnow
  • 浏览: 130987 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

原码补码概念知识补全

 
阅读更多

因为计算机内表示数值使用的是补码,而不是原码,所以你才有这样的疑问。下面我简单解释一下你就明白了。 
原码就是这个数本身的二进制形式。 以8位二进制为例 
0000001 就是+1 
1000001 就是-1 
补码分为两种情况:1、正数的补码与原码一样;2、负数的补码是符号位保持不变,其余各位取反,再加1。 
反码就是负数符号位不变,其余各位取反,正数反码与原码相同。 
以四位二进制为例,其原码、反码、补码为: 
真值 原码 反码 补码 
7 0111 0111 0111 
6 0110 0110 0110 
5 0101 0101 0101 
4 0100 0100 0100 
3 0011 0011 0011 
2 0010 0010 0010 
1 0001 0001 0001 
0 0000 0000 0000 
-0 1000 1111 0000 
-1 1001 1110 1111 
-2 1010 1101 1110 
-3 1011 1100 1101 
-4 1100 1011 1100 
-5 1101 1010 1011 
-6 1110 1001 1010 
-7 1111 1000 1001 
为什么要设立补码呢? 
第一是为了能让计算机执行减法:[a-b]补=a补+(-b)补 
第二个原因是为了统一正0和负0 
正零:00000000 
负零:10000000 
这两个数其实都是0,但他们的原码却有不同的表示。 
但是他们的补码是一样的,都是00000000 

16位二进制原码表示的负数是 -0~-32767,包括-0加起来是32768个数;因为补码加了1,所以补码的表示范围是 -1~-32768,也是32768个数。 

n位补码能表示的范围的公式是 
-2^(n-1)到2^(n-1)-1 
比n位原码能表示的数多一个 

分享到:
评论

相关推荐

    计算机基础知识:原码反码补码练习(含答案)

    计算机基础知识在IT领域至关重要,尤其是对于理解计算机内部...了解这些基础知识对于进行计算机编程、内存管理、硬件设计等IT工作都非常重要,特别是在处理数值运算时,理解和应用原码、反码和补码的概念是至关重要的。

    原码补码转换的matlab程序

    将原码转换成补码,再将补码转成原码的matlab程序

    vb做得原码补码转换器及补码加减法运算器

    用vb做得小程序,也是课堂上的作业,可能有些小bug

    原码转补码(逻辑门实现)

    通过这样的实验,学生不仅能理解原码和补码的概念,还能掌握逻辑门的运用以及FPGA的基本操作,这对于深入学习数字逻辑、计算机体系结构以及嵌入式系统等课程至关重要。此外,这也为未来在硬件设计和嵌入式系统开发等...

    原码 补码 反码 按位运算

    原码、补码和反码是三种常见的二进制表示法,主要用于表示有符号整数,而按位运算则是对二进制数进行操作的基础手段。下面将详细阐述这些概念。 一、原码(正码) 原码是最直观的二进制表示方法,直接反映了数字的...

    原码反码补码图解.

    原码反码补码图解.原码反码补码图解.原码反码补码图解.

    原码反码补码讲课.pptx

    在对计算机中的整数进行探讨时,我们不得不提及带符号整数的三种不同编码方式:原码、反码以及补码。这些编码方式在计算机内部用于表示正数和负数,并决定了计算机如何处理整数的加减运算。 首先,我们来定义带符号...

    补码源码反码转换工具,补码反码原码的转换工具,C/C++

    在计算机科学中,二进制表示的数字有三种主要形式:原码、反码和补码,主要用于表示有符号整数。本项目是基于C++的MFC(Microsoft Foundation Classes)框架实现的一个实用工具,旨在帮助用户理解并进行原码、反码和...

    原码和补码 基础教程

    本文将详细介绍原码、反码与补码的概念及其在计算机中的应用。 #### 二、基础知识 **1. 数字分类** - **无符号数**:用于表示非负整数。在计算机中通常采用二进制形式存储。 - **有符号数**:可以表示正数和负数。...

    原码补码及反码的区别

    原码、反码和补码是三种不同的二进制编码方式,主要用于表示有符号整数。理解这些概念对于深入理解计算机硬件和软件操作至关重要。 **原码(Original Code)** 原码是最直观的二进制表示形式,它直接将符号位(最高...

    二进制原码反码补码.docx

    二进制原码反码补码知识点总结 计算机内部采用的是二进制,只有两个数字用于表示数据,即 0 和 1,所以它的进制原则是满 2 进 1。十进制用的是 0、1、2、3……9 十个数字来表示数据,它的原则是满 10 进 1。 二...

    二进制原码补码反码.pptx

    二进制原码补码反码.pptx

    二进制原码补码反码.docx

    二进制原码补码反码 二进制原码补码反码是计算机中数字表示的三种方式,它们之间的关系非常重要,深入了解它们可以帮助我们更好地理解计算机的工作原理。 原码 原码是将最高位作为符号位(0表示正,1表示负),...

    原码反码补码PPT学习教案.pptx

    原码反码补码是计算机系统中最基本的概念之一,了解原码反码补码的原理和应用对于计算机科学和技术的学习非常重要。本资源摘要信息将对原码反码补码的概念、特点和应用进行详细的介绍。 一、机器数与真值 机器数是...

    原码补码反码PPT学习教案.pptx

    本资源摘要信息是基于原码补码反码PPT学习教案.pptx文件内容生成的知识点概述。 一、进制数转换 1. R 进制数转换成十进制数 在将 R 进制数转换成十进制数时,只需要“按权展开”即可。例如,二进制数转换成十进制...

    原码补码反码练习题PPT课件.pptx

    原码、补码、反码是计算机科学中最基础的概念,它们是计算机进行数值表示和运算的基础。下面是对原码、补码、反码的详细知识点总结。 1. 原码(Original Code) 原码是指计算机中最原始的二进制代码。它是数字信号...

    计算机组成原理原码补码运算

    这些基础知识是计算机组成原理中的核心概念,理解和掌握它们对于深入学习计算机硬件设计和编程至关重要。在实际应用中,这些运算规则被硬件电路实现,使得计算机能够高效地执行各种复杂的计算任务。

    补充知识点 原码补码PPT学习教案.pptx

    本教程主要涵盖了这些进制间的转换以及原码、反码和补码的概念。 首先,让我们讨论进制转换。从二进制、八进制或十六进制转换到十进制,可以采用按权相加的方法。例如,二进制数1001转换为十进制就是1×2^3 + 0×2^...

    原码、反码、补码三码转换(C#)

    在计算机科学中,原码、反码和...在实际应用中,理解原码、反码和补码的概念对于理解计算机底层数据存储和处理非常重要,尤其是在进行位运算和溢出检查时。通过C#等编程语言进行实践,能更好地帮助我们掌握这些概念。

    计算机组成原理原码补码运算.pdf

    计算机组成原理中的原码补码运算在数字计算中扮演着至关重要的角色,特别是在处理二进制整数的乘法操作时。原码是数字的一种表示方式,其中最高位用于表示正负符号,其余位代表数值的大小。补码则是另一种表示负数的...

Global site tag (gtag.js) - Google Analytics