zoukankan      html  css  js  c++  java
  • 课后作业反码、补码、源码

    问题:阅读相应教材,或者使用互联网搜索引擎,弄清楚反码、补码跟原码这几个概念。

    原码:

    原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

    ①小数原码的定义
    [X] =
    X( 0≤X <1 )
    1- X (-1 < X ≤ 0)
    例如: X=+0.1011 , [X]原= 0.1011
    X=-0.1011 [X]原= 1.1011
    ②整数原码的定义
    [X]原 =
    X (0≤X <2(n-1))
    2(n-1)-X (- 2(n-1) < X ≤ 0)
    x为正整数时,[X]原=x;
    x为负整数时,[X]原=2的n次方-x;
    x为负小数时,[X]原=1-x;
    反码:
    反码是数值存储的一种,多应用于系统环境设置,如linux平台的目录和文件的默认权限的设置umask,就是使用反码原理。在计算机内,定点数有3种表示法:原码、反码和补码。
    反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
    对于二进制:
    原码10010= 反码11101 (10010,1为符号码,故为负)
    (11101) 二进制= -2 十进制
    对于八进制:
    举例 某linux平台设置了默认的目录权限为755(rwxr-xr-x),八进制表示为0755,那么,umask是权限位755的反码,计算得到umask为0022的过程如下:
    原码0755= 反码 0022 (逐位解释:0为符号位,0为7-7,2为7-5,2为7-5)
    补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。
    补码:
    在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。
    1、一个负整数(或原码)与其补数(或补码)相加,和为模。
    2、对一个整数的补码再求补码,等于该整数自身。
    3、补码的正零与负零表示方法相同。
  • 相关阅读:
    JavaScript 为字符串添加样式 【每日一段代码80】
    JavaScript replace()方法 【每日一段代码83】
    JavaScript for in 遍历数组 【每日一段代码89】
    JavaScript 创建用于对象的模板【每日一段代码78】
    html5 css3 新元素简单页面布局
    JavaScript Array() 数组 【每日一段代码88】
    JavaScript toUTCString() 方法 【每日一段代码86】
    位运算
    POJ 3259 Wormholes
    POJ 3169 Layout
  • 原文地址:https://www.cnblogs.com/shnm/p/9752726.html
Copyright © 2011-2022 走看看