`

软考笔记——原码、反码、补码和移码其实很简单

 
阅读更多

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

 

 原码:

反码:

 

 

 

补码:

 


移码:

 

 

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


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


原码:

如果机器字长为n,那么一个数的原码就是用一个n位的二进制数,其中最高位为符号位:正数为1,负数为0。剩下的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

 

以上内容只适合初学者参考,高手勿喷,有说的不对的地方欢迎指出,感激不尽!

 

转自:http://www.cnblogs.com/liushuijinger/archive/2012/04/05/2433718.html

分享到:
评论

相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    超棒的软考-数据库系统工程师学习笔记

    这篇学习笔记针对软考数据库系统工程师考试,涉及了计算机系统基础知识、数据表示、数制转换、原码、反码、补码和移码的定义及其在计算机中的应用、定点数和浮点数的区别、以及编码体系、编码效率、码距和误码的概念...

    软考-数据库系统工程师(学习笔记)

    - **原码、反码、补码、移码**: - **原码**:用最高位表示符号,其余位表示数值的二进制表示法。 - **反码**:正数的反码与其原码相同,负数的反码是对数值部分逐位取反。 - **补码**:正数的补码与其原码相同,...

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

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

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

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

    计算机组成原理之移码(小白来)

    在表格中,我们可以看到8比特机器数的各种表示方式,包括无符号数、原码、反码、补码和移码,它们的对应真值也清晰列出。这有助于理解各种编码方式的差异和转换关系。 移码的另一个重要应用是在浮点数表示中,它在...

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

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

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

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

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

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

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

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

Global site tag (gtag.js) - Google Analytics