zoukankan      html  css  js  c++  java
  • 计算机中的数及其编码

    1,真值和机器数

      真值可以用二进制表示,也可以用十进制表示。例如

      N1 = +1101001B = +105 , N2 = -1101001B = -105

      一个数在计算机中的表示形式就是机器数。为了表示正数与负数,用最高位作为符号位,符号位‘0’表示正数,符号位‘1’表示负数。

      N1和N2对应的机器数为

      N1:01101001 , N2:11101001

    2,带符号数、无符号数

      最高位为符号位的数就是带符号数。

      全部有效位都表示数的大小的就是无符号数。

    3,原码、反码、补码

      原码反码补码就是把符号位与数值位一起进行编码的各种方法。

      反码与补码的求法:

      正数的 原码 =反码=补码

      负数的反码就是它的原码除符号位外各位取反。负数的补码就是它的反码加1。

      如果已知【x】补,那么【x】补包括符号位在内的每一位按位求反,然后加1得到【-x】补。有【x】补求【-x】补称为变补。

      

      数0的原码有两种不同形式:

      [+0] 原= 00000000B ,[-0] 原= 10000000B

      数0的反码也有两种形式:

      [+0] 反= 00000000B ,[-0]反 = 10000000B

      0的补码仅有一种形式:[+0]补=[-0]补 = 00000000B

      原码反码补码的实质是用来解决负数在计算机中表示的三种不同编码的方法。

    4,对于无符号数,8位二进制表示范围0~255,n位二进制数表示范围0~2^n -1

      对于符号数,8位二进制数的原码反码表示范围都是-127~+127,补码表示范围-128~+127,

      n位二进制带符号数,原码反码表示范围-2^(n-1)+1 ~ 2^(n-1)-1,补码表示范围-2^(n-1)~ 2^(n-1)-1

      

      

      

  • 相关阅读:
    面向对象
    面向对象
    面向对象
    面向对象
    面向对象
    面向对象
    面向对象
    面向对象
    3.1
    面向对象
  • 原文地址:https://www.cnblogs.com/nanqiang/p/9975794.html
Copyright © 2011-2022 走看看