师文浩 王睿娴 王立生 东北师范大学盘龙实验学校
指向计算思维培养的信息科技实验教学,要从学生的生活场景入手,创设真实问题,引导学生思考问题解决方案,并对问题进行抽象。实验过程应一步一步展开,体现任务的分解。实验结果应指向科学原理的解释,通过实验帮助学生感受原理、理解原理。实验内容的组织要考虑多种场景,引导学生进行归纳和比较,从而帮助学生实现迁移。教师的指导要有针对性,对于学生不易理解的实验现象,要及时给予解释说明,帮助学生透过现象看本质。
《义务教育信息科技课程标准(2022年版)》第四学段(7~9年级)的学习内容由互联网、物联网和人工智能等相关内容构成。此学段的计算思维培养目标之一是“知道网络中的信息编码、传输和呈现的原理”。
在第二学段(3~4年级)考虑到学生的思维发展和知识储备情况,并未涉及“信息编码和处理”的学习,而是让学生直观感受生活中的编码应用。学生在学习第四学段的“编码与二进制”的相关内容时,要进一步理解编码对信息系统的意义,要了解信息系统如何对不同类型的内容进行编码和处理。
在初中阶段,学生的抽象逻辑思维开始占优势,但是还需要感性经验思维的支持。因此,信息科技实验教学设计要多以实际操作中的直观体验为主,尽量以“看得见、摸得着”的案例为抓手,引导学生通过感受实验过程来理解知识的本质。
“在一个漆黑的夜晚,你的爸爸妈妈督促你赶快睡觉,但是你却想跟你的好友畅谈。你没有电话(即使有也会被父母听到),你家的计算机也不在你的房间。好在你的好友和你住在一个小区,并且就在你家对面那栋楼。你可以怎么办?”这是美国知名技术作家Charles Petzold所著的经典科普书籍《编码》中给出的第一个情境。在教学设计中,笔者利用此情境激发学生的好奇心,引导他们进行思考。
学生经过思考和讨论,给出的答案主要分为两类:声音传播和光线传播。教师引导学生理解信息传播可以通过不同载体实现,除了声音和光线,还可以通过气味等来传递。同时,学生提出可以使用摩斯电码来传递信息(这正是《编码》里给出的答案),并采用手电筒来发送摩斯电码。
首先,教师准备一张“左右手电码操”的指示说明,请一位学生上台,两手分别握住一个电筒,根据指示做操,“左”即举起左手,“右”即举起右手。其他学生在下面观察并记录举手的情况,抬起左手就记录下“左”,抬起右手就记录下“右”。这一步模拟的是在夜晚通过抬手动作传递信息的过程。
教师提出,由于记录“左”“右”的时候写字比较费时,可以做一个简化,将“左”记录为“0”,将“右”记录为“1”,由此引出二进制数的表示方法,并对二进制和十六进制进行讲解,讲解内容包括“什么是二进制和十六进制”“二进制、十六进制和十进制之间如何转换”等。需要注意的是,初中阶段不要求学生掌握复杂的数制转换,而要了解原理。学生在教师的指导下,将记录的“二进制左右手操”转换为十六进制,如图1所示。
图1
学生对通过动作传递的“密码”4F60597DFF0C540C5B66进行“解密”。首先,将“密码”写到一个Word文档里,从左至右选中四个字符,接着,按下“Alt+X”。用同样的方法操作接下来的四个字符,在依次完成后,文档上出现了“你好,同学”(“解密”完成)。“密码”4F60597DFF0C540C5B66实际上是“你好,同学”这些字符的Unicode编码。教师进一步讲解Unicode编码的具体表示方法,并通过Word中的字符编码表来进行探究(如图2)。
图2
第一个实验主要是为了让学生体验数据编码的过程,学生初步感受到了编码的意义和过程,但是还需要进行梳理。教师讲解:“刚才的步骤实际上就是编码的过程。一位同学通过他的左右手动作传递了信息,接收人用‘0’和‘1’(也就是二进制数)对动作进行了编码,然后将它转换为十六进制数,接着进行Unicode编码,得到了最终的内容‘你好,同学’。由此可见,编码其实是把信息从一种形式转变为另一种形式的过程,转变的目的是统一格式,方便传播和处理。”
在计算机中,所有的内容都是用二进制数0和1表示的,下面通过一个实验来说明。
准备两张位图图片,其中pic1.bmp是一张随机图片(如图3);pic2.bmp是专门绘制的图片(如图4),由红、黄、蓝、绿四种颜色构成,分别占据图片的四分之一。两张图片均设置大小为50*30像素。准备三款软件,一款用于图像编辑(以Windows自带的画图工具为例),一款用于查看文件的二进制内容(以BinaryViewer为例),一款与图像不相关(以GoldWave为例)。
图3
图4
学生通过拖拽的方式分别用三款软件打开图片:将图片拖拽至画图工具,打开图片并可以进行编辑;将图片拖拽至GoldWave,无法打开图片,显示“格式无法识别”;将图片拖拽至BinaryViewer,即显示图片的二进制内容。
同桌两人一组,一人利用BinaryViewer打开pic1.bmp,另一人利用BinaryViewer打开pic2.bmp(如下页图5),两人对打开的图片进行对比,发现两张图片用BinaryViewer打开后,显示的都是十六进制内容,进一步观察发现,两张图片前面部分是相同的(文件一般都采用“文件头+文件内容”的结构。两张图片前面相同的部分就是“文件头”,用于描述文件的基本信息)。
图5
学生利用BinaryViewer打开pic2.bmp,观察后面的“文件内容”部分发现,“文件内容”是“E8A200”“4CB122”“241CED”“00F2FF”这几个十六进制数的循环。教师指导学生将“E8A200”转换为三个十进制数(可以通过计算器实现),得到“232,162,0”,打开画图中的调色板,将三个数分别输入到“蓝、绿、红”的位置,得到的颜色就是图片左下角的蓝色。用同样的方法可以得到绿色、红色和黄色(对应图片中的四种颜色)。
教师引导学生观察四组十六进制数的出现频率,发现“E8A200”循环出现25次,接着“4CB122”循环出现25次,两组数交替出现,经过15次以后,才出现“241CED”和“00F2FF”,出现的规律与前两组一致。教师讲解:“图片文件是由像素点构成的,实验的图片由30行每行50个像素点构成。bmp图片的内容是每个像素点上的颜色值从下到上、从左到右排列存储的,可以通过示意图进行理解(如图6)。”
图6
学生经过文字编码和图片编码实验,已经能够理解计算机利用二进制数表示信息的方法。在总结升华阶段,教师可以引导学生思考两个问题。问题1:在信息科技的发展过程中,为什么选择用二进制数来表示信息?问题2:计算机真的认识“0”和“1”吗?
问题1需要回答“二进制数进行信息编码的可行性和优越性”。①可行性方面:只需要有两种状态,就可以表示现实世界中的所有概念,因此,采用二进制数编码信息是可行的。②优越性方面:编码的目的是统一格式和方便处理,任意两种独立的状态都可以表示二进制,因此容易实现。
问题2的答案是否定的,计算机中各个部件采用不同的方法来表示二进制,CPU采用“高”“低”电位来表示二进制,硬盘采用“正”“负”磁极来表示二进制,光纤采用“强”“弱”光来表示二进制等。这些不同的方法最后统一起来,就描述为“0”和“1”。
通过实验和探究,学生从原理和现象上了解了计算机信息编码的方法和过程,促进了计算思维的培养。