• 读者文摘
  • 美文摘抄
  • 短文摘抄
  • 日记大全
  • 散文精选
  • 感恩亲情
  • 人生感悟
  • 智慧人生
  • 感悟爱情
  • 心灵鸡汤
  • 实用文档
  • 名人名言
  • 伤感文章
  • 当前位置: 蜗牛文摘网 > 美文摘抄 > “数制及数据表示”以史为据教学法

    “数制及数据表示”以史为据教学法

    时间:2020-03-18 05:27:09 来源:千叶帆 本文已影响

    摘要:本文提出理论知识的教学可分为“以理为据”和“以史为据”两大类;展示了按照类似历史的发展方式来讲授数制及数据表示的教学方法。通过虚拟的历史发展来讲解权重,不需要使用复杂的数学推理,就能启发学生直观地理解数制转换方法。

    关键词:数制;数据表示;二进制;教学

    中图分类号:G642 文献标识码:A

    1引言

    “数制及数据表示”一直是计算机基础课或导论课的难点,很多相关课程都在重复讲授,但效果却并不见好。

    在笔者看来,对于一些理论性的知识,教学方法可分为两大类,一类是从理论体系的地位和作用以及结构框架来讲授(如中学的平面几何),不妨称之为“以理为据”的教学;另一类是从理论的历史发展过程或人类的认知过程来讲授,可称之为“以史为据”的教学。按照理论体系方式讲授有利于培养严格的演绎思维,帮助认清各种关系并节约教学时间;而按历史发展的过程或认知过程来讲授则容易理解和掌握,有助于培养归纳思维方法和把握知识发展趋势。

    “读史使人明智”,数制教学可以按照类似于历史发展的方式来讲授,这样比较容易使学生理解和掌握。

    2常规的二进制教学方法

    常规数制教学都是先用“时钟”等事例引入数制的概念,然后给出数的“位权表达式”,接着开始讲解数制的转换方法。这种可认为是以理为据的教学方法。至于“位权表达式是如何得来的,为什么数制间可以这样转换?”,笔者从未见到有关教材对其进行数学推导。这导致学生只会强记规则“整数要不断除,小数要不断乘……”。由于学生并不理解规则的缘由,于是错误频出。下面是学生中最常见的错误:

    常见错误1:在整数转换时,最后余数为1时会漏掉“1”,或将余数顺序排序错误。

    3各类改进教学方法

    为了提高数制的教学效果,大量教育界同行也费尽心思,设计出各种教学方法。有希望通过做游戏来提高教学趣味性的教学方法,如文献[1][2][3];但感觉深度不够,并且占用的课堂时间过多。也有教师为提高数制转换效率提出了新的转换技巧,如文献[4][5];可惜理论性过强,感觉比较枯燥。

    4以史为据教学法

    考虑到课时限制和避免枯燥的数学推导,笔者设计了一种以“虚拟历史”为线索的数制及数据表示的教学新方法。这里的历史并非真实的历史,仅仅代表着人类的认知过程。限于篇幅,只着重说明权重和主要内容的讲解,教学过程的设计简述如下:

    4.1简单数数

    在原始社会,当时或许还没有“数”的概念,为了知道胜利成果,先人打猎回来可能会对猎物进行计数的。设想一下可能采取什么方式来计数呢?回想到原始社会的山洞壁画,是将动物画下来以记录数量。如果猎获了一只羊,为了作记录就可以像图1那样画一只羊表示。

    图1一只羊表示数量1

    捕获了3只,就画3只羊;捕获了5只,就画5只羊。这对于单纯狩猎生活的计数是行得通的;但如何表示100只羊呢?没有人会愿意重复地画100只羊。

    4.2进制与权重

    现在到了奴隶社会,畜牧业得到充分发展,人们不需要再去打猎,猎人已经变成了牧羊人开始养羊。

    假如养了100只羊,为了简化画羊可以用使用不同大小的“羊图”来表示不同数量的羊。可以规定最小的“小羊”图表示1只羊,然后十只1堆用稍大一点的“中羊”表示,百只1群使用更大的“大羊”表示(如图2);如果需要,还可以用更大的羊图去表示千只、万只、亿只……

    图2大中小羊表示数量的百十一

    这就引入了“进制”与“权重”的概念。每10只小羊,可以改画成1只中羊;每10只中羊,又可以改画成1只大羊——这就是十进制,10被称为基数。使用十进制,是因为人们数羊时有10只手指,如果人类都是6只手指头的话,也许就会使用12进制了。

    “1只中羊相当于十只小羊,1只大羊相当于百只小羊”这里用图形的大中小隐喻了数量的百十一;这里隐喻的数量就是所谓的权重。

    这时,如果表示999只羊的话,只需要画9只小羊,9只中羊,和9只大羊。注意,现在还没有负数的概念,还不能表示负1只羊。如果在奴隶社会的人们足够聪明的话,也可以用倒着画的图形来表示负的权重。

    要真正理解数据表示和转换方法,关键就是要理解“权重”的概念。通过“简单数数”的局限性来引入“权重”的概念,学生就很容易理解了。

    4.3数符

    画羊太麻烦?可以改用象形文字或其他方式来表示,另外也可以用一些不同的符号来表示数目(本文指某个权重位的数值)。古人则发明了一种很聪明的方式来表示数目:通过画“角”(锐角或直角)来代替“画羊”。数目符号如下:

    4.4 “0”的发明

    0是后来才发明的。在发明0以前,数量的表示仍然是很不方便的,比如罗马数字的数符表示方法:Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ、Ⅹ……

    表示权重其实有很多方法,上面说的用图形大小来隐喻权重只是其中一种方法,我们还有百、千、万等数量单位来表示权重,如“8万4千”……

    人们为了方便,希望用数符的位置排列次序来隐喻权重,于是发明了数符“0”。比如我们可以用 来表示7个“大羊”和3个“小羊”,而符号 仅仅是一个占位符,表示没有“中羊”。即:用位置次序表示权重大小,用0填补空白位置。

    4.5分数和小数

    人们还发明了小数点“ ”,使所有的实数都可以用数符的不同位置次序来表示,小数点只是指示了个位数符所在位置而已。

    也就是说: ;这就是“位权表达式”。所以“1 2 3 . 4”只不过是一个通过位次隐喻权重的符号序列而已;而它所代表的数值,在十进制时就是等式后面“位权表达式”的计算结果。

    通过上面的讲解,学生就能够区分符号序列“1 2 3 . 4”和它所代表的数值123.4是相关但并不等同的两件事。符号的表示方法可以千变万化,而所代表的数值却可以是相同的;又或者相同的符号序列,在不同进制时却可以表示不同的数值。如果有需要再深入地讲解科学记数法,“1.23e5”等形式也是很容易的:字母e是指示了指数所在的位置而已。就算是IEEE浮点数表示法,其关键仍然在于深刻地理解权重。

    在深刻理解权重之后,再引入二进制和其他进制的“位权表达式”:

    也就是 。接着再详细解说进制、相关概念和各种数制的书写表示方法,学生就很容易接受了。

    4.6进制转换

    当学生真正理解“权重”的概念后,要理解数据转换方法也就比较容易了。

    图3正中间的数字是原始的10进制数“12345.67890”;在图中,小数点已经用一条竖线串起来了,竖线左边表示整数部分,右边表示小数部分。可以看到,每乘(或除)以基数10,就会使小数点右(或左)移1位,而数符的表示顺序并没有变化。移过小数点的数字就是向个位的进数或余数,如果将进数或余数另外写出来(图3右边),可以看出,通过乘或除基数可以得到进数或余数;也就是得到数符序列的其中一个数目;但当整数部分为0时还继续除,或小数部分为0时继续乘,则只不过相当于在数字前后补上一些占位符0而已。

    图3 “权重”的概念

    这时,将图3的意义,转到10进制和2进制的乘除过程(图4和图5),就非常明确右边所写数字的意义:个位的进数或余数;并且知道是要一直乘到没有小数(小数部分为0)或除到没有整数(整数部分为0)为止。

    图410进制乘除过程

    图52进制乘除过程

    当学生完全理解了乘/除基数对小数点位置的作用后,图6问题的答案就很清晰了:

    图6的答案显然是:X=101B,0.A=0.011B;所以 X.A=101.011B;所以通过不断用基数N去除(或乘)一个未知数的整数(或小数)部分,就可以得到一个未知数的整数(或小数)的N进制表示形式。

    图6进制转换

    这时,特别地如果未知数变成已知10进制表示时,法则仍然是没有变的;所以引入图7,学生也是一样可以理解的。但仍然要提醒学生,圆圈所在部分,即在计算“1.25×2”时,整数部分“1”只是上一步求“个位进数”遗留的,在做下一步的计算时是可以抛弃的;或者说1.25×2虽然变成2.25,但是从小数部分进到个位的只是“1”,而不是“2”。并且将整数转换和小数转换写在一起,整数转换在左边,小数转换在右边,将得到的数符的次序连起来刚好是一个钟型。

    为什么2进制转8进制、16进制是从小数点开始向左右3位或4位一组划分?因为8=23,16=24;所以乘/除1次8就相当于乘/除3次2,也即2进制表示时的小数点移动3位;乘除1次16就相当于乘除4次2,也即2进制表示的小数点移动4位;学生根据上面的讲解,只要仔细思考一下,自然就知道为什么2进制转8进制或16进制必须要从小数点开始向左右划分,并可分组转换;从而避免了错误的分组方式。

    图7将十进制数转换为二进制数

    5总结

    经过了对几届学生的教学实践,证明上述以史为据的数制教学法是生动有趣吸引学生的;学生学完后出现错误的情况很少。希望此法对计算机教育同行有借鉴作用。

    参考文献:

    [1]李汀萍. 猜年龄与数制转化[J]. 中国信息技术教育,2004(1):42-44.

    [2]张利波. 将猜数游戏进行到底——《二进制整数和十进制整数转换》. 中国电化教育[J]. 2008(3):95-97.

    [3]南玥. 基于“二进制”教学中的趣味性方法[J]. 科技创新导报,2008(21):217.

    [4]崔永智.“二进制”数教学方法研究[J]. 河西学院学报,2004,20(2):10-13.

    [5]朱建东,姜大庆. 一种二进制/十进制数相互转换的创新思路与方法——“抓药式配数法”[J]. 通化师范学院学报, 2007, 28(4):47-50.

    Teaching “The Number System and Data Representation” Base on the Historical Development

    LI Xu-zhang

    (South China Institute of Software Engineering, Guangzhou 510990, China)

    Abstract: This essay considers has two way of teaching: “according to the rationale” or “base on the historical”. And demonstrate an example of teaching “The number system and data representation” base on the historical development. Through a virtual history of the development on weighting, do not needs to use complicated mathematical reasoning; students will be able to inspire a very intuitive understanding of the rules of the number system conversion.

    Key words: the number system; data representation; binary; teaching

    注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文

    相关热词搜索:教学法数据数制

    • 名人名言
    • 伤感文章
    • 短文摘抄
    • 散文
    • 亲情
    • 感悟
    • 心灵鸡汤