原码、补码和反码

原 码 、 补 码 和 反 码
 
1 ) 原 码 表 示 法

    原 码 表 示 法 是 机 器 数 的 一 种 简 单 的 表 示 法 。 其 符 号 位 用 0 表 示 正 号 , 用 : 表 示 负 号 , 数 值 一 般 用 二 进 制 形 式 表 示 。 设 有 一 数 为 x , 则 原 码 表 示 可 记 作 [ x

    例 如 , X 1 = 1 0 1 0 1 1 0

          X2 = 1 0 0 1 0 1 0

    其 原 码 记 作 :

            X 1 = [ 1 0 1 0 1 1 0 ] = 0 1 0 1 0 1 1 0

            X 2 = [ 1 0 0 1 0 1 0 ] = 1 1 0 0 1 0 1 0

    原 码 表 示 数 的 范 围 与 二 进 制 位 数 有 关 。 当 用 8 位 二 进 制 来 表 示 小 数 原 码 时 , 其 表 示 范 围 :

      最 大 值 为 0 . 1 1 1 1 1 1 1 , 其 真 值 约 为 ( 0 . 9 9 1 0

      最 小 值 为 1 . 1 1 1 1 1 1 1 , 其 真 值 约 为 ( 一 0 . 9 9 1 0

当 用 8 位 二 进 制 来 表 示 整 数 原 码 时 , 其 表 示 范 围 :

      最 大 值 为 0 1 1 1 1 1 1 1 , 其 真 值 为 ( 1 2 7 1 0

      最 小 值 为 1 1 1 1 1 1 1 1 , 其 真 值 为 ( - 1 2 7 1 0

      在 原 码 表 示 法 中 , 对 0 有 两 种 表 示 形 式 :

          + 0 = 0 0 0 0 0 0 0 0

           [0 ] = 1 0 0 0 0 0 0 0

 

2 ) 补 码 表 示 法

    机 器 数 的 补 码 可 由 原 码 得 到 。 如 果 机 器 数 是 正 数 , 则 该 机 器 数 的 补 码 与 原 码 一 样 ; 如 果 机 器 数 是 负 数 , 则 该 机 器 数 的 补 码 是 对 它 的 原 码 ( 除 符 号 位 外 ) 各 位 取 反 , 并 在 未 位 加 1 而 得 到 的 。 设 有 一 数 X , 则 X 的 补 码 表 示 记 作 [ X

      例 如 , [ X 1 ] = 1 0 1 0 1 1 0

            [X2 ] = 1 0 0 1 0 1 0

            [X1 ] = 0 1 0 1 0 1 1 0

            [X1 ] = 0 1 0 1 0 1 1 0

          [X1 ] = [ X 1 ] = 0 1 0 1 0 1 1 0

            [X2 ] = 11001010

            [X2 ] = 1 0 1 1 0 1 0 1 1 1 0 1 1 0 1 1 0

    补 码 表 示 数 的 范 围 与 二 进 制 位 数 有 关 。 当 采 用 8 位 二 进 制 表 示 时 , 小 数 补 码 的 表 示 范 围 :

      最 大 为 0 . 1 1 1 1 1 1 1 , 其 真 值 为 ( 0 . 9 9 1 0

      最 小 为 1 . 0 0 0 0 0 0 0 , 其 真 值 为 ( 一 1 1 0

采 用 8 位 二 进 制 表 示 时 , 整 数 补 码 的 表 示 范 围 :

      最 大 为 0 1 1 1 1 1 1 1 , 其 真 值 为 ( 1 2 7 1 0

      最 小 为 1 0 0 0 0 0 0 0 , 其 真 值 为 ( 一 1 2 8 1 0

      在 补 码 表 示 法 中 , 0 只 有 一 种 表 示 形 式 :

        [0 ] = 0 0 0 0 0 0 0 0

        [0 ] = 1 1 1 1 1 1 1 1 1 = 0 0 0 0 0 0 0 0 ( 由 于 受 设 备 字 长 的 限 制 , 最 后 的 进 位 丢 失 )

所 以 有 [ 0 ] = [ 0 ] = 0 0 0 0 0 0 0 0

 

 

3 ) 反 码 表 示 法

    机 器 数 的 反 码 可 由 原 码 得 到 。 如 果 机 器 数 是 正 数 , 则 该 机 器 数 的 反 码 与 原 码 一 样 ; 如 果 机 器 数 是 负 数 , 则 该 机 器 数 的 反 码 是 对 它 的 原 码 ( 符 号 位 除 外 ) 各 位 取 反 而 得 到 的 。 设 有 一 数 X , 则 X 的 反 码 表 示 记 作 [ X

    例 如 : X 1 = 1 0 1 0 1 1 0

          X2 = 1 0 0 1 0 1 0

        X 1 = 0 1 0 1 0 1 1 0

         [X1 ] = X 1 = 0 1 0 1 0 1 1 0

         [X2 ] = 1 1 0 0 1 0 1 0

         [X2 ] = 1 0 1 1 0 1 0 1

    反 码 通 常 作 为 求 补 过 程 的 中 间 形 式 , 即 在 一 个 负 数 的 反 码 的 未 位 上 加 1 , 就 得 到 了 该 负 数 的 补 码 。

1 . 已 知 [ X ] = 1 0 0 1 1 0 1 0 , 求 [ X ]

分 析 如 下 :

[ X ] [ X ] 的 原 则 是 : 若 机 器 数 为 正 数 , 则 [ X ] = [ X ] ; 若 机 器 数 为 负 数 , 则 该 机 器 数 的 补 码 可 对 它 的 原 码 ( 符 号 位 除 外 ) 所 有 位 求 反 , 再 在 未 位 加 1 而 得 到 。 现 给 定 的 机 器 数 为 负 数 , 故 有 [ X ] = [ X ] 1 , 即

          [X] = 1 0 0 1 1 0 1 0

          [X] = 1 1 1 0 0 1 0 1

      十 )          1     

 

          [X] = 1 1 1 0 0 1 1 0

 

 

2 . 已 知 [ X ] = 1 1 1 0 0 1 1 0 , 求 [ X

         分 析 如 下 :

     对 于 机 器 数 为 正 数 , 则 [ X = X

     对 于 机 器 数 为 负 数 , 则 有 [ X = [ [ X

现 给 定 的 为 负 数 , 故 有 :

            X = 1 1 1 0 0 1 1 0

        [ [ X = 1 0 0 1 1 0 0 1

               十 )          1   

 

        [ [ X = 1 0 0 1 1 0 1 0 = X

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值