学期(2024-2025-1) 学号(20241403) 《计算机基础与程序设计》第三周学习总结
作业信息
这个作业属于哪个课程 | <班级的链接>(如2024-2025-1-计算机基础与程序设计) |
---|---|
这个作业要求在哪里 | <作业要求的链接>(如2024-2025-1计算机基础与程序设计第三周作业) |
这个作业的目标 | 掌握门和电路, 学籍计算机部件, 了解冯·诺依曼体系结构, 学习C语言基础知识 |
作业正文 | https://www.cnblogs.com/chenqiqi/p/18460716 |
教材学习内容总结
门和电路
门和电路的三种表达形式
门的种类以及如何把门组合成电路执行数学运算
布尔代数的性质
S-R锁存器
加法器
计算机部件
冯 诺依曼结构体系
二级存储设备
C语言
基本数据类型
基本算术运算
键盘输入与屏幕输出
教材学习中的问题和解决过程(先问 AI)
问题1:如何用NOR(x,y)实现OR(x,y),XOR(x,y)?
问题1解决方案:
问题2:内存为什么不是越大越好?
问题2解决方案:更大的内存不一定更好,主要有以下几方面原因:
-
性能瓶颈不在内存:
• CPU性能限制:CPU 的处理能力是有限的,如果 CPU 的性能较差,无法快速处理大量数据,即使内存再大,数据的处理速度也不会有明显提升。就像一个工厂的生产线,即使仓库(内存)很大,可以存放很多原材料,但如果生产设备(CPU)的加工速度很慢,那么整个生产效率也不会提高。例如,一些老旧的电脑,CPU 性能较弱,增加内存后电脑的整体性能提升并不明显。
• 总线和其他硬件的限制:计算机硬件之间的数据传输需要通过总线等连接部件,总线的带宽和传输速度有限,会成为数据传输的瓶颈。如果总线无法快速地在内存和其他硬件组件(如 CPU、硬盘等)之间传输数据,那么更大的内存也无法充分发挥作用。 -
兼容性问题:
• 主板的限制:不同的主板对内存的支持是有差异的,包括支持的内存类型、频率和最大容量等。如果主板不支持较大容量或较高频率的内存,那么即使安装了更大的内存,也可能无法正常工作,或者只能以较低的频率运行,无法发挥出内存的全部性能。
• 操作系统的限制:一些操作系统对内存的管理和使用有一定的限制。例如,32 位的操作系统通常只能识别和使用 4GB 左右的内存,即使安装了更大容量的内存,超出的部分也无法被操作系统有效利用。只有 64 位的操作系统才能更好地支持大容量内存,但也需要操作系统的版本和设置与之匹配。 -
功耗和散热问题:
• 功耗增加:更大的内存通常需要更多的电力来支持其运行,这会增加电脑或其他电子设备的功耗。对于一些对功耗敏感的设备,如笔记本电脑、移动设备等,过大的内存可能会导致电池续航时间缩短,影响设备的使用体验。
• 散热压力:内存工作时会产生热量,更大容量的内存可能会产生更多的热量,对设备的散热系统提出更高的要求。如果散热不及时,可能会导致设备温度过高,影响设备的稳定性和寿命。
- 软件优化不足:
• 应用程序的限制:一些应用程序本身并没有针对大容量内存进行优化,无法充分利用多余的内存资源。在这种情况下,即使系统拥有很大的内存,应用程序的运行速度和性能也不会有明显的提升。
• 内存管理机制的不完善:操作系统的内存管理机制可能无法有效地管理和分配过大的内存空间,导致内存使用效率低下,甚至可能出现内存泄漏等问题,影响系统的稳定性和性能。
基于AI的学习
代码调试中的问题和解决过程
问题1:输出“c:\lxd\test\1.txt”的时候直接复制粘贴到程序当中时显示乱码
问题1解决方案:c语言中存在转义字符,如‘\n’表示换行,‘\0’表示结束等等,如果直接输出“c:\lxd\test\1.txt”的话,会把‘\t’当作水平制表符,‘\1’表示八进制转移字符,表示的是ASCll值为1的那个特殊字符
‘\l’被c语言错误识别,所以需要在前面加反斜杠‘\’取消其特殊含义,如“c:\lxd\test\1.txt”
问题2:输入9000000000时用的是int定义,导致超出范围,代码错误
问题2解决方案:在给变量选择数据类型,不能习惯性地使用int,应该注意变量的范围,以及数据类型对应的字节大小和取值范围,遇到较大的数时,为了保险起见,最好使用long long
其他(感悟、思考等,可选)
感悟:在本次学习过程中我多次用到AI工具,AI学习是学习C语言的一种很好的方法,它能快速地给出我们不会的问题的答案,节约了时间,提高了效率,但是AI的答案并不是完全准确,比如我在问AI"C语言中除了用printf输出汉字外,还有其他输出汉字的方法吗?”AI回答我可以用宽字符函数,但是我实践后发现并不能,所以对AI的答案应该有一定的批判性思维。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 2/2 | 20/20 | |
第二周 | 300/500 | 2/4 | 18/38 | |
第三周 | 500/1000 | 3/7 | 22/60 | |
第四周 | 0/1300 | 0/9 | 0/90 |