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、补码的正零与负零表示方法相同。
  • 相关阅读:
    12864多级菜单实现,可方便实现无限级菜单(转)
    一起来学习PID
    STM32探秘 之FSMC
    RAD Studio (Delphi) Firemonkey 教程
    POS终端MAC算法-C语言实现
    STM32的PWM输入模式设置并用DMA接收数据
    AVR web server
    Linux 查看服务状态(服务与进程)
    linux设置开机自启动
    科目三靠边停车难度升级,超过50cm不合格怎么破?
  • 原文地址:https://www.cnblogs.com/shnm/p/9752726.html
Copyright © 2011-2022 走看看