本系列文章用来记录我教刚上五年级的儿子编程相关课程的教学实录。

时间:2019.09.05晚上20:30

本来计划是下周开始实施的,第一天培训内容的PPT都还没完全准备好,但因为问了一句:“长源,你知道二进制吗?”,他说:“我知道一点点,知道1、2、3、4用二进制是什么。”看他很感兴趣的表情,就顺其自然地发生了。

我:长源,你知道二进制吗?长源:我知道一点点,知道1、2、3、4用二进制是什么。我:说说看长源:二进制只有0和1,1就是1,10就是2,11就是3,100就是4我:对,那我们来研究一下进制吧,先来看一下十进制长源:这是10我:对,这个10是这么来的,首先,个位从0数到9的时候,就要进一位了,十位的1表示1×10+个位的0=10。我:那101的十进制是什么意思呢?百位的含义是10×10=100,因此,101=1×100+0×10+1=101。长源:哦,知道了。我:千位的意思是10×10×10,那万位的意思呢?长源:10×10×10×10=10000

我:对,你知道10的次方吗?长源:我知道平方和立方,平方就是2个10相乘:10×10,立方就是3个10相乘:10×10×10。我:对,平方和立方,都是属于次方。十进制的位数,实际上就是10的几次方的问题。比如,个位代表10的0次方等于1,十位是10的1次方等于10,百位是10的2次方等于100。就是按从右往左数的个数-1次方。比如个位是1-1=0次方。长源:爸爸,10的1次方表示一个10,10的2次方表示2个10相乘,3次方表示三个10相乘,那为什么10的0次方表示0个10相乘不应该是0吗?怎么是1呢?我:这是一个数学规则,非零正整数的0次方等于1,而不是0。个位是6,表示6个1,也就是6×1。那我们现在来研究一下二进制吧。2的0次方是多少?长源:1我:嗯,我们在第1位写上1,2的1次方是多少?长源:2我:第2位表示2,2的2次方是多少?长源:2×2=4我:第3位表示4,2的3次方是多少?长源:2×2×2=8我:第4位表示4,2的5次方是多少?长源:2×2×2×2=16我:第5位表示16,2的6次方是多少?长源:16×2=32我:第6位表示32,好了,够位数了,我们想一下,对应十进制,从0开始,数到8、9、10的10的时候,就要进一位了,那么二进制,就是从0开始数,0、1、2,数到2的时候就要进一位了,那二进制的10表示十进制的多少呢?1×2+0=2长源:二进制“十”等于十进制的2,这个以前学过。我:二进制的“10”不能读成“十”,要读成:1、0。长源:哦我:100就表示:1×4+0×2+0×2=4,那下面你来练习一下长源:好

时间差不多9点了,我让长源先去洗澡。长源想到了一个问题:长源:爸爸,那10进制怎么转为2进制呢?我:额,用除2法(我心里快速地想了个数10来转换一下,10÷2=5,喔噢,后面的忘记了),忘记了,我先想想,明天再告诉你吧。长源:那我们可以上网查一下。我:好,先去洗澡吧。

洗完澡,我上网查了一下十进制转二进制的方法,叫“除2取余”法,找回了方法,用7来进行了验证:长源 洗澡出来了,我对他说我:我查了十进制转二进制的方法了,来,我们先把7转换一下我:那你也来转换一下吧,把10转成二进制长源开始:我:第二步不对,不是用余数,要用商做后面的被除数。长源改正:长源:结果是1010我:那你验算一下,二进制1010是不是等于十进制的10长源验算是正确的。

看长源还兴致勃勃的,又还没到九点半的睡觉时间。我:那我们现在来玩个游戏吧长源:好我举起左手,伸缩5个指头。我:我们现在用5个手指,从拇指开始,分别表示十进制的1、2、3、4、5,如果全部手指都合上,表示0。计算机一般从0开始数数的。(说明:讲课的时候不拍照,所有手势都是写实录的时候补拍的,而且会重复使用)我:我张开一些手指,然后你告诉我对应的十进制是多少长源:好我随机摆出0-15的手势让他猜,他都能准确地猜出来。

我:5个手指表示十进制法,最大能表达的数字是多少?长源:15我:十进制,有10个数字,而二进制只有2个数字,如果用5个手指来表示二进制的数字,你觉得是能表达的最大数字,是十进制的大,还是二进制的大?长源:(想了想)不知道我:那我们接下来用5个手指表示二进制吧然后我把所有二进制5指手势按顺序给他演示了一遍,每换一个手势就然他说对应的十进制:接着我随机摆出0-31的手势让他猜,他都能准确地猜出来。我笑着说:现在知道哪种进制五个手指能表示更多数字了吧。没想到只有01的二进制,反而能用更少的位数表示出更多的数字。长源也笑了。

我:我们来玩另一个游戏吧。这个游戏需要先做一个字典,英文字母总共有几个?长源:26个。我:我们用数字和字母建立一个对应关系,1对a,2对b,以此类推,26对z。长源按我的解释做好了数字-字母字典:我:接下来,我开始用二进制手势来告诉你密码,你根据我们约定好的字典来解密。长源把我的手势二进制一个一个算出对应的十进制,然后再根据数字找到对应的英文字母并写了下来。长源:是hello我笑着说:对了。

二进制的内容讲完了。还剩最后一个知识点:对计算机的认识。

我:长源,你觉得我们家哪些电子设备算是计算机?长源:笔记本、一体机电脑、手机、平板电脑我:还有吗?长源:我的儿童手表?我:智能手表也是。还有现在一些职能电视、智能空调也是。

我:那你知道计算机都有哪些部分组成吗?长源想了想没回答上来我:比如笔记本电脑暑假换掉的坏掉的硬盘。长源:哦,还有显示器,键盘。我:对,核心部件是主板和装在主板上的CPU、内存、硬盘。CPU是中央处理器。长源:那有中央显示器吗?我:一般就直接叫显示器,中央一般表示最核心、重要的东西,CPU相当于人的大脑,很重要才叫中央。长源:那内存有什么作用?我:CPU是用来做各种运算的,在运算的时候,需要用到很多数据,内存就是用来存放运算时的一些数据的。

时间过了九点半该睡觉了,于是我准备结束交流。

长源:爸爸,计算器算是计算机吗?我:它能做数学运算,也算是吧,不过不是智能的,跟我们现在的计算机相差比较远。电脑上也有计算器软件哦。今天就先到这里吧,该睡觉了。长源:好。


本文首发于 GitChat,未经授权不得转载,转载需与 GitChat 联系。

阅读全文: http://gitbook.cn/gitchat/activity/5d721dc4685c7a08bf88a0b3

您还可以下载 CSDN 旗下精品原创内容社区 GitChat App , GitChat 专享技术内容哦。

零基础编程教学实录-001 二进制与计算机相关推荐

  1. 零基础编程教学实录-000 思考要与不要

    本系列文章用来记录我教刚上五年级的儿子编程相关课程的教学实录. 本系列文章,有很多文字内容是利用坐地铁时间用手机编辑的,可能有些语句不顺.用词不恰当或错别字,请各位看官见谅. 一 人物背景:1.培训对 ...

  2. r matlab spss,特别放送 | 零基础编程入门:Python、Matlab、R、SPSS资料大放送

    原标题:特别放送 | 零基础编程入门:Python.Matlab.R.SPSS资料大放送 我们一直相信: 一切不能实实在在帮助到同学的资料 都是耍流氓 小助手的目标是: 做一次又一次真正有价值.愉悦感 ...

  3. 零基础编程者初学python须知

    零基础编程者初学python须知 黄老师提示大家树立一个观念:通过学习python学会编程,不是简单学习python的而已. 自学有压力的建议参加" python培训_python从零基础到 ...

  4. qtdesigner怎么实现菜单栏跳转_人人都可写代码-Android零基础编程-app 入口菜单栏实操08...

    欢迎来到人人都可写代码,大家好,我是杨晓华,今天我们的课程内容是项目实操,以智者精选项目为例,编写一个Android app的入口关联菜单栏逻辑. 这是要实现的菜单栏组件展示效果,下面就是教大家如何制 ...

  5. android 按钮顶级效果_人人都可写代码-Android零基础编程-相对布局11

    欢迎来到人人都可写代码,大家好,我是杨晓华,今天我们的课程内容是:Android界面布局中的相对布局. 1.RelativeLayout的概述 (1) RelativeLayout是一个允许子视图相对 ...

  6. datagridview 绑定list 不能刷新界面_人人都可写代码-H5零基础编程-首页界面实操06...

    欢迎来到人人都可写代码,大家好,我是杨晓华,今天我们的课程内容是,项目实操,开发一个首页界面的H5. 这是要实现的H5首页界面展示效果,下面就是教大家如何制作的步骤: 1.在views的项目smart ...

  7. android 不通过数据线打印日志_人人都可写代码-Android零基础编程-开发调试、APK编译04...

    欢迎来到人人都可写代码,大家好,我是杨晓华,今天我们的课程内容是,讲解Android开发中如何调试代码程序,开发完后如何打包成可发布的apk文件. 开发调试 在开发中,难免我们会遇到BUG,快速定位问 ...

  8. datagridview 绑定list 不能刷新界面_人人都可写代码-H5零基础编程-发布活动界面实操07...

    欢迎来到人人都可写代码,大家好,我是杨晓华,今天我们的课程内容是,项目实操,开发一个发布活动界面的H5. 这是要实现的H5发布活动界面展示效果,下面就是教大家如何制作的步骤: 1.在views的项目s ...

  9. dump文件_零基础编程——Python文件、JSON数据存储

    摘要 书接前文: 01-<零基础编程--起步并搭建Python环境> 02-<零基础编程--变量与数据类型> 03-<零基础编程--Python循环.函数.类> 教 ...

最新文章

  1. 配置Cesium编译环境
  2. osg 改变模型贴图
  3. 计算机网络:单播,多播
  4. jovi智慧场景运动步怎么是零_Jovi智慧场景,赛事直播提前提醒,让你不错过任何一刻的精彩...
  5. nofollow标签_nofollow标签是什么?如何使用
  6. Java Web学习总结(9)——servlet和Jsp生命周期解读
  7. Java -- JDBC 学习--调用函数存储过程
  8. 10.08-vscode-plantuml建模
  9. 【EMV L2】CDA复合动态数据认证/应用密文生成
  10. 计算机网络基础(二)
  11. ISOIEC27000标准族-ISO27001关联体系
  12. linux 搭建FTP服务器
  13. web学习6-jdom
  14. Python代码加密 - 4种方案
  15. 迷宫(Maze)项目实现
  16. 请帮我写一个末日丧尸生存文
  17. win7网络上计算机进不去,Win7电脑开机进不了系统怎么办?
  18. 从开发角度读懂公司卫生间一直有人窜稀的原理
  19. java毕业设计奥利给共享自习室系统(附源码、数据库)
  20. kafka的topic,broker,partition之间的关系

热门文章

  1. 屏幕分辨率、像素相关概念拾遗
  2. 【git、gerrit】git 使用tag
  3. 自上而下还是自下而上
  4. 【控制基础】限位开关一般接常闭
  5. 格雷码图案生成Matlab
  6. C/C++ 视频播放器开发
  7. 红旗linux shell方式下配置声卡的命令是:,‘红旗杯’linux大赛——基础知识2
  8. 【VB编程】05.MsgBox与InputBox函数
  9. PowerShell 将对象转换成文本
  10. gpu z linux版本,GPU-Z 2.13.0发布,可检测到假冒的NVIDIA 显卡