20221401 《计算机基础与程序设计》课程总结
作业信息
这个作业属于哪个课程 | <2022-2023-1-计算机基础与程序设计> |
---|---|
这个作业要求在哪里 | https://www.cnblogs.com/rocedu/p/9577842.html#WEEK15 |
这个作业的目标 | 课程总结 |
作业正文 | https://www.cnblogs.com/wangningwangning/p/16973875.html |
每周作业链接汇总
第一周作业:
加入云班课、注册博客园账号、安装虚拟机、快速浏览教材提出问题、发表博客
第二周作业:
阅读《计算机科学概论》和《C语言程序设计》的第1章内容,完成云班课测试并总结
第三周作业:
阅读《计算机科学概论》的第二和第三章,学习数字已经各种数据的表示方法,阅读《C语言程序设计》的第二章基本数据类型,完成云班课并总结
第四周作业:
阅读《计算机科学概论》的第四章和第五章,学习门电路和冯诺依曼体系结构,阅读《C语言程序设计》的第三章,完成云班课测试并总结
第五周作业:
阅读《计算机科学概论》的第六章学习程序设计语言,阅读《C语言程序设计》的第四章,学习键盘输入和屏幕输出,完成云班课测试并总结
第六周作业:
阅读《计算机科学概论》的第七章,学习设计算法的方法,阅读《C语言程序设计》的第五章,学习选择控制结构,完成云班课测试并总结
第七周作业:
阅读《计算机科学概论》的第八章,学习抽象数据类型与子程序,阅读《C语言程序设计》的第六章,学习循环控制结构,完成云班课测试并总结
第八周作业:
阅读《计算机科学概论》的第九章,学习面向对象设计与高级程序设计语言,阅读《C语言程序设计》的第七章,学习函数与模块化程序设计,完成云班课测试并总结
第九周作业:
阅读《计算机科学概论》的第十和十一章,学习操作系统和文件系统,阅读《C语言程序设计》的第八章,学习数组及其扩展用法,完成云班课测试并总结
第十周作业:
阅读《计算机科学概论》的第十二、十三和十四章,学习计算机的应用层,阅读《C语言程序设计》的第九章,学习指针及其扩展用法,完成云班课测试并总结
第十一周作业:
阅读《计算机科学概论》的第十五和十六章,学习计算机通信层的网络和万维网,阅读《C语言程序设计》的第十章,学习字符串、及其数组和函数的相关用法,完成云班课测试并总结
第十二周作业:
阅读《C语言程序设计》的第十一章,学习指针和数组,完成云班课测试并总结
第十三周作业:
阅读《C语言程序设计》的第十二章,学习结构体和数组结构基础,完成云班课测试并总结
第十四周作业:
阅读《C语言程序设计》的第十三章,学习文件操作,完成云班课测试并总结
实验报告汇总
实验一:通过熟悉操作系统基本命令,学会操作系统的使用
实验二:基本控制结构编程练习
实验三:基本控制结构考试
实验四:函数与数组编程练习
实验五:函数与数组,指针考试
实验六:文件及结构体编程练习
实验七:缓冲区溢出
实验八:Web部署
第一周提出的问题
第一周我在提问题的时候感觉没有很好地抓住学习的重点。当时拿到这本书之后坚持看了一会后发现自己一直停留在书中所讲内容的表层,不能真正理解书中所讲内容的意思和重点,所以我提出的问题有些层次比较浅,不能很好的抓住重点。
有些问题在之前的博文中已经回答过了,下面挑几个有意义且没有被回答过的问题进行回答
-
计算机有什么限制呢?
计算机的算力有极限,贝肯斯坦上限决定了你用有限的质能在有限时空内可以造出的计算机的信息量极限,也就限制了处理能力的密度和存储密度。当然,人类距离这个限制还远得很:体积为1立方厘米、质量为1克的物质按照这个公式可以储存最多约1800000000000000000000比特的数据。不过,现实中你还不能用七扭八歪的时空来储存信息。粒子数、粒子运动模式、能量决定了你的计算机的热力学性质,提出了比贝肯斯坦上限严格得多的限制。 -
计算机的内存是越大越好吗?
电脑内存并不是越大越好,电脑的内存大小与计算机的运算速度的提升没有很必然的关系。
电脑内存有什么用?
首先,处理器执行的指令需要预先加载到内存,当处理器需要执行的时候,就会到内存寻找相应指令。内存里每个存放指令的地方都有一个地址,那么内存越大意味着地址就会越多,处理器要找一条指令的时候,需要花费更长时间在内存寻址,而且命中目标地址的几率也越小,从而令到性能不升反降。
内存是否越大越好?
其实这是个根据需要场景不一样,回答也不一样的问题。相对来说 电脑内存 大小也是直接关系到电脑能打开几个程序!毋庸置疑的是,现在的软件对电脑的要求越来越高了。但是小编为大家纠正一个错误认知:增加电脑内存容量≠提升计算机速度。
计算机运行速度受3个方面影响:①计算速度;②多任务处理;③多线程处理;而这3个方面都不受内存大小左右,所以内存容量的提升不会带来实际意义上的计算机速度的提升。某些情况下,2G内存的处理速度会大于4G内存。 -
机械硬盘和固态硬盘有什么区别呢?
具体区别如下:
一、容量
固态硬盘存储容量较小,机械硬盘存储容量较大。
固态硬盘的原理:半导体存储;数据直接存在闪存颗粒中,并且由主控单元记录数据存储位置和数据操作,每一个闪存颗粒的存储容量是有限的;
机械硬盘的原理:电磁存储;机械硬盘在盘面上写数据、磁盘转动,机械臂移动,也是比较原始的数据读写方式,就像近现代的留声机发声原理一样。
二、价格
目前市场上,同容量大小,固态硬盘价格差不多是机械硬盘的数倍以上。
三、读写速度
机械硬盘读写速度平均60~80M每秒,由于受限于转盘转速与指针寻址的时间限制,速度往往不会超过200M每秒;
固态硬盘不同品牌型号之间差距非常大,平均大约在150-300M每秒,由于是闪存颗粒和闪存控制器直接寻址的方式,最大的速度能达到500M每秒;
如果你想要快速开机,有快速启动大型游戏的需求,可以将主程序装载在固态硬盘中;
如果有照片、电影这种对读取速度没显性需求的数据,当然首选机械硬盘,便宜又大碗。
四、写入次数
对于机械硬盘来说,就像是写铅笔字,可以说是无限次的写入次数;
对于固态硬盘来说,就像是写钢笔字,固态硬盘中需要把有效数据抄到草稿纸上,将原先的一整页撕掉,然后再把新的数据和草稿上的有效数据放回去。
五、工作噪音
机械硬盘:涉及到磁盘的高速旋转,所以噪声偏大;
固态硬盘:由于和机械硬盘原理不同,不存在高速旋转,数据直接存放在闪存颗粒中,所以无噪声。
六、防震能力
机械硬盘:使用时,会涉及到磁头与磁盘之间的精准感应,存在不同机械之间结构的碰撞接触,抗震等级不足时,容易发生位置偏移,势必造成数据的寻址地址错乱,防震能力较差,所以被推荐用于家庭的台式机中;
固态硬盘:使用时,只需要使用闪存控制器介入寻址即可,无光盘、无磁头,抗震等级较强,所以适用于经常移动的便携式笔记本中。
七、数据恢复能力
机械硬盘:由于机械硬盘的存储机制是存于扇区的二进制存储;每个数据都有相应的寻址地址,数据与地址一一对应,容易恢复;
固态硬盘:使用固态硬盘的闪存颗粒进行数据存储时,为了使多个闪存颗粒的平均寿命相同(擦写次数限制),除了固态硬盘的控制器,各类数据的存放位置均由硬盘控制器的FTL的动态链表记录和维护,所以对于数据恢复软件,按着操作系统之前的记录位置进行数据恢复,那是肯定找不到的,很难恢复。 -
防火墙是如何工作的?
防火墙会判定允许哪些网络流量通过以及哪些流量存在危险。从本质上看,其工作原理是过滤掉异常或不受信任的流量,允许正常或受信任的流量通过。
网络防火墙涉及在外部网络和内部专用网络之间应用一个或多个防火墙。这些防火墙会调节进站和出站网络流量,将外部公共网络(如全球互联网)与内部网络(如家庭 Wi-Fi 网络、企业内部网或国家内部网)分隔开。网络防火墙可能是下列任何类型的设备形式:专用硬件、软件和虚拟设备。
主机防火墙(即“软件防火墙”)涉及在单个用户设备和其他专用网络端点上使用防火墙作为网络内设备之间的屏障。这些设备/主机会接收进出特定计算机应用的自定义调节流量。主机防火墙可以作为操作系统服务或端点安全应用在本地设备上运行。主机防火墙还可以更深入地分析 Web 流量,基于 HTTP 和其他网络协议进行过滤,对到达机器的内容进行管理,而不仅仅是监控这些流量来自哪里。
网络防火墙需要针对广泛的连接进行配置,而主机防火墙可以根据每台机器的需要进行定制。然而,主机防火墙需要进行更多的自定义操作,这意味着基于网络的防火墙是全面控制解决方案的理想之选。但同时在两个位置使用两个防火墙对于构建多层安全系统来说是理想之选。
通过防火墙过滤流量的方法利用预先设置或动态学习的规则来允许和拒绝尝试建立的连接。这些规则定义了防火墙如何调节通过专用网络和专用计算机设备的 Web 流量。
加分和扣分的项目
本学期的作业没有被加分的...
扣分的倒是有,就是我想交第一周的学习总结时发现自己的博客园还没有申请,申请耽误了时间导致我错过了交作业的期限,只能在评论里补交作业。
还有一次明明在截止之前已经写完了作业却忘了提交,只能第二天再补交。
我的教训是在每周的周五一定要弄清楚自己这周都要交什么作业,有一个清晰的规划,同时不能卡着截止时间去完成和交作业,要打出一定的提前量。
课程收获与不足
学完这门课,我的效率从刚开学时的效率拉满到学期中的效率拉跨再到学期末的效率的有所回升,经历了一个比较大的起伏,也学会了如何调整自己的状态去提高自己的效率。
给这门课的投入应该是所有学科中最多的,但是我主要是投入给了《C语言程序设计》这本书,对《计算机科学概论》的投入相对要少一些,这是我的不足,如果让我重新学一次我肯定会均衡好这两本书的学习。
给开学初的你和学弟学妹们的学习建议
https://www.cnblogs.com/wangningwangning/p/16726564.html
我想说的绝大部分建议都在这篇文章里了
问卷调查
- 你平均每周投入到本课程多长时间?
10小时 - 每周的学习效率有提高吗?
刚开学时课业压力比较小,效率很高,之后各科的作业都开始多了起来,效率有所降低,临近期末时为了考出一个好成绩我的效率有所回升 - 学习效果自己满意吗?
不是非常满意,对于C语言的学习我有些偏重,我会重点去练考试可能要考的内容导致我对有些内容非常不熟悉。对于《计算机科学概论》我在时间充足时会仔细学,时间不足时学的就会比较草率,导致我对整本书内容的掌握情况参差不齐。 - 课程结束后会继续一周至少一篇博客吗?(如果能做到,毕业时我把你的博客给你集结成一本书送给你作纪念)
我尽力!我也很期待毕业时能够拿到自己的博客书 - 你觉得这门课老师应该继续做哪一件事情?
带着同学们做实验
督促同学们写博客 - 你觉得这门课老师应该停止做哪一件事情?
用英文出测试题 - 你觉得这门课老师应该开始做什么新的事情?
上课时及时获得同学们关于是否听明白的反馈以及对于这堂课的疑问。
发布和讲解一些习题
在对书上内容进行讲解时划分出一些重点内容,可以让同学们学习的时候有所侧重,节约时间
本篇总结的链接和二维码
链接:https://www.cnblogs.com/wangningwangning/p/16973875.html