1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

科技 谁说10根手指表示10个数?教你正确的用手指数数的方法

本帖由 漂亮的石头2012-03-07 发布。版面名称:新闻聚焦

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    486,020
    赞:
    46
    小朋友们大家好!今天,小吴老师教大家如何用手指头数数。
    十根手指只能表示10个数? 从一年级我就知道这是扯淡。因为如果从0开始数,数到10,一共11个数。然而仅仅教你们从0数到10仍然不是一个好老师。今天小吴老师要教给大家的是用每根手指的蜷、伸分别表示0、1来数数的方法。首先,小朋友们给我回家自学二进制数的相关姿势以及原码、反码、补码、移码、定点数、浮点数的姿势。
    恩。相信大家已经掌握了这些姿势。
    那么我们现在就开始拿出手指头开始数数。
    0、十根手指可以表示的无符号整数的范围是[0,1023],全给我数一遍!
    1、用左手大指做符号位,其余九根手指用原码表示定点小数的话,取值范围是[-1+2^-9, 1-2^-9]
    2、用左手大指做符号位,其余九根手指用补码表示定点小数的话,取值范围是[-1,1-2^-9]
    3、用左手大指做符号位,其余九根手指用原码表示定点整数的话,取值范围是[-2^9,2^9-1]
    4、用左手大指做符号位,其余九根手指用补码表示定点整数的话,取值范围是[-2^9+1,2^9-1]
    5、如果用十个手指头表示浮点数,规定阶码j根手指(包含一根手指表示阶符),尾数s根手指(包含一根手指表示数符),那么:
    a.当采用阶原尾原非规格化数时,正数的表示范围为[2^-(s-1)*2^(2^-(2^(j-1))),2^(2^(j-1))*(1-2^-(s-1))]
    负数的表示范围为[-2^(2^(j-1))*(1-2^-(s-1)),2^(-2^(j-1))*(-2^-(s-1))]
    b.当采用阶移尾原非规格化数时,正数的表示范围为[2^-(s-1)*2^(2^-(2^j)),2^(2^(j-1))*(1-2^-(s-1))]
    负数的表示范围为[-2^(2^j)*(1-2^-(s-1)),2^(-2^(j-1))*(-2^-(s-1))]
    6、如果用十个手指头表示浮点数,规定阶码j根手指(包含一根手指表示阶符),尾数s根手指(包含一根手指表示数符),那么采用补码规格化形式表示数时,正数的表示范围为[2^-1*2^(2^-(2^j)),2^(2^(j-1))*(1-2^-(s-1))]
    负数的表示范围为[2^(2^(j-1))*(-1),-2^(-2^j)*(2^-1+2^-(s-1))]
    今天小吴老师给大家留的课堂作业是:请问综合上述7种表示方法,10根手指一共可以表示多少个数?
    回家作业:请小朋友们回家自学IEEE 754标准,下课后4个小朋友分为一组,用手指头数至C6801600H。
    下节课我们要讲如何用手指头进行定点、浮点加减乘除运算。请小朋友们预习《计算机组成原理》第三篇中央处理器第六章计算机的运行方法。
    (喂!不许一直练4和128和132啊魂淡!!数到这些数的小朋友都给我面壁去!)

    来源:人人网 作者:吴桐
     
正在加载...