`
seaizon
  • 浏览: 145105 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

原码、反码、补码和移码其实很简单

 
阅读更多

最近在备战软考,复习到计算机组成原理的时候,看到书中关于原码、反码、补码和移码的定义如下(n是机器字长):

 

 原码:

 

 

 

 

 

 

反码:

 

 

 

 

 

补码:

 

 

 

 

 

移码:

 

 

 

看完这些定义以后,我的脑袋瞬间膨胀到原来的二倍!这样变态的公式不管你记不记得住,反正我是记不住!还好以前对它们有所了解,否则看到这一堆公式恐怕我早就放弃参加软考的念头喽。

 

其实没必要弄得这么麻烦,它们完全可以用一两句话就描述的很清楚。

 

原码:

 

 
如果机器字长为n,那么一个数的原码就是用一个n位的二进制数,其中最高位为符号位:正数为0,负数为1。剩下的n-1位表示概数的绝对值。
 
例如: X=+101011 , [X]原= 00101011    X=-101011 , [X]原= 10101011 
位数不够的用0补全。
 
PS:正数的原、反、补码都一样。
 
反码:

 

 

知道了什么是原码,那反码就更是张飞吃豆芽——小菜一碟了。知道了原码,那么你只需要具备区分0跟1的能力就可以轻松求出反码,为什么呢?因为反码就是在原码的基础上,符号位不变其他位按位取反(就是0变1,1变0)就可以了。

 

例如:X=-101011 , [X]原= 10101011 ,[X]反=11010100

 

补码:

 

补码也非常的简单就是在反码的基础上按照正常的加法运算加1。

 

例如:X=-101011 , [X]原= 10101011 ,[X]反=11010100,[X]补=11010101

 

移码:

 

移码最简单了,不管正负数,只要将其补码的符号位取反即可。

 

例如:X=-101011 , [X]原= 10101011 ,[X]反=11010100,[X]补=11010101,[X]移=01010101

分享到:
评论

相关推荐

    原码、反码、补码、移码与浮点.doc

    原码、反码、补码、移码与浮点数 原码、反码、补码、移码是计算机科学中用于...本文对原码、反码、补码、移码的定义和浮点数的表示方式进行了详细的介绍,并对补码加、减运算规则和原码一位乘、除的实现进行了讨论。

    记忆和转换原码、反码、补码和移码其实很简单

    原码、反码、补码和移码是四种常见的二进制表示方法,主要用于表示有符号整数。这些编码方式在计算机硬件和软件中有着广泛的应用,特别是在处理器内部进行算术运算时。 首先,我们来看**原码**。原码是最直观的二...

    定点数机器码转换器(原码、反码、补码、移码)

    定点数机器码转换器。十进制输入示例:12345、0.12345、-12345、-0.12345;二进制输入示例:10101、0.10101、-10101、-0.10101,将定点数转换成机器码

    原码、反码、补码、移码与浮点.pdf

    在计算机系统中,数字的表示和计算主要依赖于原码、反码、补码、移码以及浮点数的表示方法。理解这些概念对掌握计算机算术运算至关重要。 首先,我们来看原码、反码、补码和移码的定义: 1. 原码定义了一种直接的二...

    C语言基础 原码、反码、补码和移码详解

    本文将深入探讨四种不同的数值表示方式:原码、反码、补码和移码。 原码是最直观的数据表示方式,它直接将数值的符号位(最高位)作为正负的标识。对于正数,原码的符号位为0,其余位按照二进制表示数值。例如,...

    十进制转换二进制(原码)

    十进制转换二进制计算机是采用二进制存储的,计算机的二进制编码方式也分为原码,反码,补码方法。这是一个把十进制数字转换到它的二进制原码的算法,希望能给大家一些启发吧!这个算法我是用VB6写的,其中用到了...

    原码、反码、补码,计算机中负数的表示.pdf

    原码、反码和补码是计算机系统中表示和存储负数的基本概念。由于计算机采用二进制数表示数据,它必须能够准确表示正数和负数。在计算机系统中,整数通常按照补码形式存储,这能够简化加法和减法的硬件实现,并使得二...

    计算机基础知识点总结..pptx

    计算机基础知识点总结是一份详细的知识点总结,涵盖计算机基础知识的多个方面,包括进制表示和转换、原码、反码、补码、移码、定点数与浮点数、奇偶检验码、海明码、循环冗余校验码、与(AND)、或(OR)等逻辑运算...

    计算机组成原理第六章答案00098.doc

    本文档主要介绍计算机组成原理的相关知识点,包括计算机的运算方法、补码、原码、反码和移码的关系、机器数字长的影响、整数和小数的表示方法等。 1. 计算机的运算方法 计算机的运算方法可以分为整数运算和小数...

    2019软考软件设计师考点总结

    * 重要知识点:原码/反码/补码/移码的转换规则、表示范围和表示个数 * 备考点拨:掌握原码/反码/补码/移码的准换;掌握原码/反码/补码/移码的表示范围和能够表示数的个数;注意在补码和移码中-0 的特殊性和人为定义...

    计算机组成原理第2章例题及参考答案.pdf

    本章重点讨论了数码系统中的数值表示,特别是二进制下的原码、反码、补码和移码。 1. **数值的二进制表示** - 原码:直接表示数值的二进制形式,正数的最高位(符号位)为0,负数为1。 - 反码:除符号位外,其余...

    1 算术运算·数的表示及定点运算1

    本文主要探讨的是数的表示方式,包括原码、反码、补码和移码,以及如何在计算机中进行定点运算。 首先,原码是一种直接表示二进制数字的方法,其中最高位用作符号位,0通常代表正数,1代表负数。例如,二进制数`...

    计算机系统结构基础习题.doc

    计算机系统结构基础习题主要涉及了计算机中数值的表示方式,包括原码、补码、反码和移码的概念,以及它们在不同场景下的应用。此外,还涉及到定点数的表示范围和运算规则,以及补码加减法的原理。 1. 在计算机中,...

    南方电网面试--计算机组成与体系结构--知识点汇总.pdf

    "计算机组成与体系结构...本文对计算机组成与体系结构的知识点进行了汇总,涵盖计算机五大组成部件、数制表示、原码、反码、补码、移码、各种码之间的转换等内容,为计算机组成与体系结构的学习和研究提供了基础知识。

    计算机组成与设计试题\计算机组成原理自测与解答

    本章主要探讨了数据表示、定点数和浮点数的概念、原码、反码、补码和移码的使用,以及数据校验码的应用。 1. 数据表示:在计算机中,数据以二进制形式存在,包括字符编码(如ASCII或Unicode)、汉字编码(如GB2312...

    计算机的运算方法(“移码”文档)共8张.pptx

    6.16.1+0 设机器数字长为 8 位(其中一位为符号位)对于整数,当其分别代表无符号数、原码、补码和反码时,对应的真值范围各为多少? 已知 [y]补 求[ y]补 [y]补连同符号位在内,末位加 1 每位取反,即得[ y]补 ...

Global site tag (gtag.js) - Google Analytics