• 首页
  • 教育理念
  • 文章专题
  • 编程教程
    • – Scratch编程教程
    • – AppInventor编程
    • – Python编程教程
    • – NOIP信息学奥赛
    • – C/C++编程教程
    • – JS编程教程
  • 少儿编程学院
    • – 在线课程
    • – 学院名师
    • – 动态资讯
  • 少儿编程社区
    • – 在线编程
    • – 编程作品
    • – 专题创作
  • 更多
    • – APP客户端
    • – 关于我们
    • – 寻求合作
    • – 少儿编程联盟
投稿 登录 注册
  • 首页
  • 文章专题
  • 教育理念
  • 编程教程
  • 少儿编程学院
  • 微信公众号
  • APP客户端
少儿编程学院
少儿编程教育-微信公众号
首页 › 编程教程 › NOIP信息学奥赛 › 正文
NOIP信息学奥赛信息竞赛编程竞赛

评论 NOIP初赛复习(八)原码、补码、反码

主编主编 NOIP信息学奥赛 2017-08-26 10,556 46

数在机器中的表示有以下几种:原码、反码、补码。

原码、反码、补码的基本概念

字节:8个位。

字长:若干个字节。到底是几个字节?具体看是哪种CPU。比如2010普及组第11题就假设一个字长只有一个字节8个位。

原码、反码、补码都是建立在机器数在一个字长上的表示。为了方便理解,我们假设字长为一个字节。要注意事实上为32位CPU字长为4个字节,64位CPU字长为8个字节。

原码:首位为符号位,其余为真值。比如:

评论 NOIP初赛复习(八)原码、补码、反码-少儿编程教育网

特点:简单。

范围:比如字长为8位,则范围为 11111111(-255)至 01111111(+255)。

缺点:0有两个表示,分别为正零(00000000)和负零(10000000),给计算机计算带来不便。

反码:首位为符号位,其它位分正数和负数两种情况。

反码正数:所有位和原码一样;

反码负数:除了符号位和原码一样,其他位相反。

比如:77的反码表示为01001101;-77的反码表示为10110010。

补码:分正数和负数两种情况。

补码正数:所有位和反码一样,当然也和原码一样。

补码负数:等于反码加1。简单的一句话,其实很麻烦。

比如:77的补码表示为01001101(和原码、反码一致);-77的补码表示为10110011。

加1之后会有进位,因为补码没有符号位,所以负零的补码表示也是00000000。

特点:表示比补码更麻烦。但是解决了一个问题:0只有一种表示。

评论 NOIP初赛复习(八)原码、补码、反码-少儿编程教育网

补码加法:在计算机中,凡是带符号数一律用补码表示,运算结果自然也是补码。其运算特点是:符号位和数值位一起参加运算,并且自动获得结果(包括符号位与数值位)。

补码加法的运算规则为:

评论 NOIP初赛复习(八)原码、补码、反码-少儿编程教育网

即:两数补码的和等于两数和的补码。

【例】已知 [+51]补=0011 0011,[+66]补=0100 0010,[-51]补=1100 1101;

求:[+66]补+[+51]补=?,[+66]补+[-51]补=?

【解】:

(1)由于 [+51]补=0011 0011,[+66]补=0100 0010,

评论 NOIP初赛复习(八)原码、补码、反码-少儿编程教育网

故  [+66]补+[+51]补=[(+66)+(+55)]补=01110101

结果为正,因此

[(+66)+(+55)]原=[(+66)+(+55)]补=01110101

其真值为+117,计算结果正确。

(2)由于 [+66]补=0100 0010,[-51]补=1100 1101,

评论 NOIP初赛复习(八)原码、补码、反码-少儿编程教育网

每日练习

1、无符号二进制数11001000所表示的十进制数为___________ 。

A .104  B. 148  C. 172 D . 200

2、有符号二进制数11001000所表示的十进制数为___________ 。

A . -200   B. -72  C. 72  D . 200

3、用16位和8位机器码分别写出十进制数+58和—58的原码、反码和补码。

4、若用8位机器码表示十进制数—101,则原码表示的形式为  (1)    ;

补码表示的形式为(2)  。

(1)A.11100101    B.10011011    C.11010101  D.11100111

(2)A.11100101    B.10011011    C.11010101  D.11100111

5、已知一个字长为8的整数的原码是10011010,求它的补码。

6、已知一个字长为8的整数的补码是10011000,求它的原码。


历年真题

1、在字长为16位的系统环境下,一个16位带符号整数的二进制补码为1111111111101101。其对应的十进制整数应该是( )。

A.19     B.-19     C.18     D.-18

2、一个字长为8位的整数的补码是11111001,则它的原码是( )。

A.00000111     B.01111001     C.11111001    D.10000111

3、在整数的补码表示法中,以下说法正确的是( )。

A.只有负整数的编码最高位为1

B.在编码的位数确定后,所能表示的最小整数和最大整数的绝对值相同

C.整数0只有一个唯一的编码

D.两个用补码表示的数相加时,如果在最高位产生进位,则表示运算溢出


原码反码补码每日练习参考答案:

1.D  2.B

3.+58,16位原码:0000 0000 0011 1010

反码:0000 0000 0011 1010

补码:0000 0000 0011 1010

+58,8位原码:0011 1010    反码:0011 1010    补码:0011 1010

-58,16位原码:1000 0000 0011 1010

反码:1111 1111 1100 0101

补码:1111 1111 1100 0110

-58,8位原码:1011 1010    反码:1100 0101   补码:1100 0110

4.(1) A  (2) B

5.1110 0110     6.1110 1000

原码反码补码历年真题参考答案:1.B  2.A  3.AC

喜欢 (46)
打赏
  • 打赏支付宝扫一扫
  • 打赏微信扫一扫
微博 微信 QQ

微信扫一扫,分享到朋友圈

微信公众号
编程少年Scratch实物积木
少儿编程教育-微信公众号
上一篇

NOIP初赛复习(七)排序与算法复杂度

下一篇

NOIP初赛复习(九)数据结构基础

猜你喜欢

  • 第二届全国中学生网络安全竞赛即将在西安电子科大举办!

    第二届全国中学生网络安全竞赛即将在西安电子科大举办!

  • 严查违规竞赛,29项全国中小学生竞赛活动名单公布!

    严查违规竞赛,29项全国中小学生竞赛活动名单公布!

  • 教育部:2019年度中小学生全国性竞赛活动名单公示

    教育部:2019年度中小学生全国性竞赛活动名单公示

  • 第二十届全国中小学电脑制作活动通知

    第二十届全国中小学电脑制作活动通知

  • 2018年全国青少年创意编程大赛,终评活动即将开启!

    2018年全国青少年创意编程大赛,终评活动即将开启!

  • STEAM教育专题 | 源自硅谷的机器人教育机构萝卜太辣

    STEAM教育专题 | 源自硅谷的机器人教育机构萝卜太辣

主编
主编官方

我真的不是自黑!

中国STEAM教育2018年度风云榜

微信公众号

推荐专题

  • 有趣的少儿编程游戏推荐

    查看专题
  • 国外优秀的少儿编程教育

    查看专题
  • S科学-T技术-E工程-M数学

    查看专题

猜你喜欢

  • 啊哈C!前言:思考快你一步,用编程轻松提升逻辑力
    2017-09-28

    啊哈C!前言:思考快你一步,用编程轻松提升逻辑力

  • NOIP初赛复习(五)哈夫曼树和哈夫曼编码

    NOIP初赛复习(五)哈夫曼树和哈夫曼编码

    2017-08-25
  • 教孩子学Java少儿编程-第1课-Java编程语言介绍

    教孩子学Java少儿编程-第1课-Java编程语言介绍

    2018-10-03
  • STEAM教育专题 | 乐博乐博机器人教育解决中国素质教育痛点

    STEAM教育专题 | 乐博乐博机器人教育解决中国素质教育痛点

    2018-10-05
  • 2018谷歌I/O开发者大会,AI人工智能是主角!

    2018谷歌I/O开发者大会,AI人工智能是主角!

    2018-05-09

热门文章

    暂无文章

热门标签

鲨鱼公园高考改革高考加分青橙创客青少儿防疫阿部和广错误观念逻辑思维费米科学贝尔科教谷歌教育计算机科学计算机思维解决方案西瓜创客

微信公众号

热门文章 热门标签 年度归档 少儿编程教育联盟

Copyright © 2021 少儿编程教育网 粤ICP备17057575号 · Designed by shaoerbc.org

大家都在搜

  • Scratch教程
  • scratch2下载
  • Scratch编程
  • 编程思维
  • 信息学奥赛
  • STEM教育
  • 编程一小时
  • 自主招生
  • 少儿编程竞赛

关注我们的公众号

微信公众号