高一信息技术必修1计算机程序与程序设计语言教学设计_第1页
高一信息技术必修1计算机程序与程序设计语言教学设计_第2页
高一信息技术必修1计算机程序与程序设计语言教学设计_第3页
高一信息技术必修1计算机程序与程序设计语言教学设计_第4页
高一信息技术必修1计算机程序与程序设计语言教学设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高一信息技术必修1计算机程序与程序设计语言教学设计本课选自粤教版(2019)高中信息技术必修1《数据与计算》第三章第三节,是学生完成算法学习之后、进入Python程序实现之前的关键衔接课。前序内容让学生理解了"用自然语言、流程图描述算法",本课则要回答两个根本问题:计算机为什么能按人的意图执行命令,以及人与计算机之间靠什么"语言"对话。这两个问题处理不好,学生后续学习Python语法时就会陷入机械模仿,背语句、抄代码、改分号,学一门忘一门。一、教材分析本节教材包含三个知识板块:计算机程序的组成、计算机程序设计语言的发展(机器语言、汇编语言、高级语言)、高级语言的分类(编译型与解释型)。教材以"鸡兔同笼"问题为线索,展示了从算法描述到程序实现的完整过程。从学科核心素养看,本节课承载着信息意识和计算思维的双重任务。信息意识体现在让学生认识到程序是人类意图的数字化表达载体;计算思维体现在让学生理解"自然语言—算法—程序"这一逐层形式化的转换链条。教材的难点不在知识记忆的密度,而在于概念的抽象程度——"编译"与"解释"的区别、"低级语言"与"高级语言"的相对性,对刚接触程序设计的高一学生而言缺乏直观经验支撑。教学处理上,我删繁就简,弱化语言发展史的罗列性内容,强化两条主线:一是"程序即指令序列"的可视化体验,二是"从英文式高级语言到二进制机器码"的翻译理解。语言发展史以时间轴图片形式作为自学材料,课堂上只抓机器语言、汇编语言、高级语言三个关键节点,让学生在对比中自然得出"接近人、远离机器"与"接近机器、远离人"这一核心判断。二、学情分析授课对象为高一年级学生。通过第三章前两节的学习,学生已经能够用自然语言和流程图描述简单算法,部分学生在初中或课外接触过Python、Scratch,少数学生能写出十几行的可运行代码。但整体来看,绝大多数学生存在三个认知空白点。第一,把程序和Python混为一谈。不少学生认为"编程就是学Python",不知道语言只是工具,程序的本质是指令的有序组织。第二,对"机器只能认识0和1"停留在口号层面,说不清为什么高级语言敲进去电脑就能跑。第三,缺乏程序调试的亲身经历,对"语法错误—报错—修正"这一循环抱有畏难情绪,遇到红色报错信息的第一反应是求助而不是阅读。针对这种情况,本设计采用"反差体验—概念建构—动手验证"的三段结构:先让学生直接面对一段机器码产生强烈的认知冲击,再借助翻译、解码等生活化类比建构编译与解释的概念,最后回到Python环境运行一个简短程序,用真实可得的成就感抵消陌生感。三、教学目标1.能说出计算机程序是指令的序列,能用"鸡兔同笼"实例说明从问题、算法到程序的递进关系。2.能区分机器语言、汇编语言、高级语言的特点,理解高级语言"接近人类思维、便于交流"与机器语言"可以被计算机直接执行"这两点之间的翻译需求。3.能通过类比与示意图说明编译型语言与解释型语言的工作过程差异,知道Python属于解释型语言。4.能在教师提供的半成品代码上完成一处补全、一次运行、一次纠错,初步建立"看懂报错信息"的调试意识。5.在对比三代语言的过程中体会程序设计思想演进的逻辑,理解工具的进步是让更多人能够表达计算思想,而非取代思维本身。四、教学重难点教学重点:计算机程序的概念;程序设计语言的三代划分及其特点;Python作为解释型高级语言的定位。教学难点:编译与解释执行过程的区别。突破策略是不做术语灌输,先让学生扮演"翻译官"完成一次整篇翻译与逐句翻译的角色扮演,再抽象出概念,最后用Python的交互式解释器现场验证。五、教学方法与课前准备教学方法采用情境体验法、任务驱动法与小组合作探究相结合。教师机安装Python3.x环境并配置好投屏,学生机房每人一台装有PythonIDLE的电脑,另准备一个打包好的可执行文件demo.exe(由一段Python代码提前用工具打包生成),用于课堂上演示"不装Python也能运行"的现象,为编译概念埋下伏笔。课前给每位学生印发一页材料:左侧是一串十六进制表示的机器码片段,右侧是对应的Python源代码`print("你好")`,中间留白,供课堂解码活动使用。六、教学过程环节一情境导入:给机器看的密码(约6分钟)教师上课不讲话,先在投影上展示课前材料左侧的十六进制串:48656C6C6F2C20E4BDA0E5A5BD教师提问:如果我告诉你,计算机真正"读懂"的是这样的符号,而不是Python语句,你有什么感受?学生普遍的反应是"看不懂""像密码""这怎么编程"。教师顺势追问:那我们作业里写的print("你好"),计算机究竟是怎么执行的?中间发生了什么?学生的困惑被真实地激发出来。教师点题:这就是今天要解决的秘密——程序到底是什么,程序设计语言经过了一条怎样的路,才让普通人也能和计算机对话。板书课题:计算机程序与程序设计语言。设计意图:用真实的机器可读字符制造反差,把"理解鸿沟"从抽象陈述变成学生亲眼所见的冲击。导入不播放视频、不讲故事,直接让知识矛盾说话,节奏快、指向准。环节二建构新知一:程序是指令的序列(约8分钟)教师回到教材的"鸡兔同笼"问题。已知头35个、脚94只,求鸡兔各多少。请一名学生口述上节课的算法:设鸡x只、兔y只,列方程组x+y=35,2x+4y=94,解得x=23,y=12。教师板书对比三栏:自然语言描述、流程图、Python语句。heads=35legs=94forchickeninrange(1,heads+1):rabbit=headschickenif2chicken+4rabbit==legs:print(chicken,rabbit)教师讲解:算法是解决问题的步骤,程序是让计算机执行这些步骤的指令序列。我们穷尽鸡的数量从1到35逐一尝试,计算机一秒钟可以检查上百万次——这正是程序的价值:把重复而机械的判断交给不知疲倦的机器。这里教师强调一个关键表述:程序不是给"人"读的,是给"机器"读的,只不过程序员选择了一种人也能读懂的写法。这句话为后面的"低级与高级"讨论留下接口。设计意图:避免把"程序的定义"讲成背诵条目,而是让概念从已解决的算法问题中自然长出。solvebyenumeration的枚举思想是第三章枚举算法的前置铺垫,一举两得。环节三建构新知二:三代程序设计语言的演进(约10分钟)小组活动。每组发放三张卡片,分别打印同一段功能(输出"你好")的三种写法:卡片A:一串01二进制序列(机器语言)。卡片B:MOVAH,09H之类的助记符(汇编语言,简化呈现)。卡片C:print("你好")(高级语言)。任务一:给三种语言按"人容易理解的程度"排序并说明理由。任务二:推测1950年代的程序员面临的最大困难是什么。各组展示后,教师梳理结论:机器语言是CPU唯一能直接执行的语言,全是0和1,写它如同用零件组装汽车而不是开车;汇编语言用英文助记符替代二进制,可读性好了一点,但每条指令仍和具体硬件绑定,换个型号的机器可能就不能运行;高级语言则脱离具体硬件,用接近数学和英语的表达方式书写,一次编写、到处运行。教师用一句话总结演进逻辑:语言的发展方向,是让人离机器的物理细节越来越远,离自己的思维越来越近。随后出示时间轴挂图(1945年前后机器语言、1950年代汇编与FORTRAN、1970年代C语言、1991年Python诞生、2000年以后Python在人工智能领域爆发),学生快速浏览,教师只点评一句:Python三十年前默默无闻,如今是数据科学的第一语言——让学习者少走弯路,是语言设计的持久追求。设计意图:把语言发展史从灌输性内容改成卡片排序探究,学生通过亲手比较得出"低级—高级"的判断标准,比听讲牢固得多。时间轴作为视觉支架,点到为止,不留展。环节四突破难点:编译与解释的翻译实验(约12分钟)这是本课思维含量最高的环节。教师先做角色扮演活动。邀请两名学生上台。教师递给甲学生一封写好的"英文密信"(内容是一段指令:向前走三步、左转、捡起桌上的书)。甲扮演"编译员",任务是把整封信一次性翻译成中文写在黑板上,交给执行者,执行者照着翻译稿完成动作。乙扮演"解释员",教师把英文一句一句读给他,他每翻一句,执行者立刻做一句。全班观察后讨论:两种翻译方式各适用于什么场合?学生很快能说出:整篇翻译完再执行,以后每次用都不必重翻,速度快,但如果信错了改起来要重新整篇处理;逐句翻译改起来方便、出错立刻知道在哪,但每次执行都要再翻译一遍,慢。教师收束:编译型语言(如C、C++)先把整个源程序翻译成机器语言的可执行文件,之后随时运行;解释型语言(如Python)由解释器读一句、翻一句、执行一句。编译的做法执行效率高、便于分发,解释的做法交互性好、改错方便。现场验证。教师打开PythonIDLE解释器,输入print("你好")回车,结果立即出现——这是解释执行,一行一答。再双击课前提早打包好的demo.exe,电脑没有安装Python解释器的假设条件下依然可以运行——这是编译思想的产物。学生直观感受到两种机制在现实中的并存。教师补一句辨析:"低级语言"不低级、"高级语言"不高贵。这个高低指的是离机器硬件的远近,不是语言的优劣。C语言在操作系统内核开发中无可替代,Python在数据分析中独领风骚,合适才是标准。设计意图:抽象概念用双角色扮演具身化,降低认知负荷;再用IDLE与exe的对照演示把类比接回真实设备,完成"体验—概念—验证"的闭环。术语辨析顺带纠正学生容易形成的价值误判。环节五动手实践:补全并运行你的第一行判断(约6分钟)学生在机房打开教师下发的半成品代码,程序只有五行,故意留了一处空:heads=35legs=94forchickeninrange(1,36):rabbit=headschickenif2chicken+4rabbit==______:print("鸡",chicken,"兔",rabbit)任务:在横线上填入恰当的变量,运行程序,观察输出。绝大多数学生能填出legs并顺利得到"鸡23兔12"。教师巡视时特意提示:如果有人把汉字全角引号、全角等号敲了进去,解释器会给出红色的报错信息,不要害怕它,读它。第一行会告诉你错误类型和位置——读懂报错,是程序员的第一项生存技能。教师现场故意制造一个符号错误,带全班一起读报错定位,强化"错误信息是朋友"的观念。设计意图:本课不是语法课,动手环节必须小而精:一填空、一运行、一纠错,三个动作完整走完"写—跑—读报错"的最小闭环,为下节Python基础的系统学习扫清心理门槛。环节六课堂小结与延伸(约3分钟)师生共同完成一张思维导图:程序=指令序列;语言从机器语言经汇编语言走到高级语言;高级语言需经"翻译"才能执行,路径分为编译与解释,Python走解释这条路。留两个开放问题作为课后思考:一是我们上节用流程图画的算法,与今天看到的Python程序之间到底差了什么,下节课的程序要素会从哪个方向补上这个缺口;二是任选一个你听说过的语言(C、Java、JavaScript、C++),查一查它是编译型还是解释型,下次课用一句话分享。七、板书设计主板书呈阶梯状三层:上层:问题→算法→程序(鸡兔同笼案例贯穿)中层:机器语言→汇编语言→高级语言(人变轻松,机器仍需翻译)下层:编译(整篇翻译,先翻后执行)/解释(逐句翻译,边翻边执行)——Python副板书保留环节四学生讨论产生的关键词:"改错方便""执行快""报错信息"。八、教学评价设计过程性评价贯穿课堂:卡片排序活动中观察学生能否概括出排序依据;角色扮演后听学生用自有语言复述两种翻译方式;实践环节记录完成速度与求助方式,特别关注面对报错是主动阅读还是举手求援。课后布置一份个人特色作业:用三句话给初中的自己解释"为什么写的Python代码电脑能执行",要求不得引用课上原话。这项作业检验的是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论