学期:2024-2025-1 学号:20241303 《计算机基础与程序设计》第四周学习总结
作业信息
这个作业属于哪个课程 | <班级的链接>(如2024-2025-1-计算机基础与程序设计) |
---|---|
这个作业要求在哪里 | <作业要求的链接>(如2024-2025-1计算机基础与程序设计第四周作业) |
这个作业的目标 | <写上具体方面>计算机科学概论(第七版)第4章,第5章 并完成云班课测试《C语言程序设计》第3章并完成云班课测试 |
作业正文 | ... 本博客链接 |
教材学习内容总结
计算机系统
计算机系统主要由硬件系统和软件系统两大部分组成。
一、硬件系统
硬件系统是计算机系统的物理基础,是由各种电子器件和机电装置组成的实体系统。它包括以下几个主要部分:
1.中央处理器(CPU)
2.运算器:负责对数据进行算术运算和逻辑运算。
3.控制器:指挥计算机各部件协调工作,是计算机的指挥中心。
4.存储器
5.主存储器(内存):用于暂时存储正在运行的程序和数据,速度较快但容量相对较小。可分为随机存取存储器(RAM)和只读存储器(ROM)。
6.辅助存储器(外存):如硬盘、光盘、U 盘等,用于长期存储大量数据和程序,容量大但速度相对较慢。
输入设备
常见的输入设备有键盘、鼠标、扫描仪等,用于将外部信息输入到计算机中。
输出设备
包括显示器、打印机、音箱等,用于将计算机处理后的结果输出给用户。
二、软件系统
软件系统是为运行、管理和维护计算机而编制的各种程序、数据和文档的总称。它可以分为以下两类:
系统软件
1.操作系统:如 Windows、Linux、macOS 等,是管理和控制计算机硬件与软件资源的程序,是计算机系统的核心与基石。
2.语言处理程序:包括编译程序、解释程序等,用于将高级语言编写的程序翻译成计算机能够识别的机器语言。
3.数据库管理系统:用于管理和操作数据库,如 MySQL、Oracle 等。
4.系统辅助处理程序:如磁盘碎片整理程序、备份程序等。
应用软件
是为解决特定问题而开发的软件,如办公软件(Word、Excel、PowerPoint 等)、图形图像处理软件(Photoshop、Illustrator 等)、音视频播放软件(QQ 音乐、腾讯视频等)等。
硬件系统和软件系统相互依存、缺一不可。硬件是软件运行的物质基础,软件则是硬件功能的扩充和完善,它们共同构成了一个完整的计算机系统,为用户提供各种服务和功能。
算法
一、定义与特征
定义:
算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。
例如,排序算法就是用于将一组数据按照特定顺序进行排列的一系列操作步骤。
特征:
1.有穷性:一个算法必须在有限的操作步骤内完成。不能无限循环下去,否则就不是一个有效的算法。
2.确定性:算法的每一步都必须有明确的定义,不能有二义性。即对于相同的输入,算法应产生相同的输出。
3.可行性:算法中的每一步操作都必须是可行的,能够通过计算机等设备实际执行。
输入:一个算法可以有零个或多个输入,这些输入是算法开始执行前给定的初始数据。
输出:一个算法必须有至少一个输出,输出是算法对输入数据进行处理后得到的结果。
二、算法的表示方法
自然语言描述:
使用人类语言来描述算法的步骤,通俗易懂,但可能不够精确和简洁。例如,描述一个求两个数最大值的算法可以用自然语言这样表达:“输入两个数,比较它们的大小,如果第一个数大,输出第一个数,否则输出第二个数。”
流程图:
用图形化的方式表示算法的流程,包括各种图形符号如开始 / 结束框、处理框、判断框、输入 / 输出框等,以及连接这些框的箭头。流程图直观清晰,易于理解算法的逻辑结构。
伪代码:
介于自然语言和编程语言之间的一种表示方法,它使用类似编程语言的语法结构,但更加简洁和抽象。伪代码便于表达算法的主要思路,同时又不像编程语言那样严格遵循语法规则。
半加器
一、功能
半加器不考虑来自低位的进位,将两个一位二进制数相加,产生本位和以及向高位的进位。
例如,当输入两个二进制数 A 和 B 时,半加器会输出本位和 S 以及进位 C。
二、组成
半加器主要由一个异或门和一个与门组成。
异或门:用于产生本位和 S。当 A 和 B 不同时,异或门输出为 1;当 A 和 B 相同时,异或门输出为 0。
与门:用于产生进位 C。当 A 和 B 都为 1 时,与门输出为 1,表示有进位;否则,输出为 0。
基于AI的学习
我:我在学习有关计算机系统的知识,请以苏格拉底的方式对我进行提问,一次一个问题
AI:什么是计算机系统的硬件部分?
我:中央处理器,存储区
AI:中央处理器主要由哪些部分组成?
我:包含状态位、累加器、索引寄存器、程序计数器和堆栈指针
AI:状态位的作用是什么?
我:你可以解答吗
AI:状态位用于反映处理器的当前状态信息。例如,它可以指示是否发生了算术溢出、是否有进位、是否为零结果等。这些状态位可以被程序检测和使用,以决定程序的执行流程。
现在我继续提问,累加器的主要功能是什么?
我:用来储存计算产生的中间结果
AI:索引寄存器的用途有哪些?
我:从累加器中抽取信息
AI:程序计数器的作用是什么?
我:可以解答一下吗
AI:程序计数器用于存储下一条要执行的指令的地址。在计算机执行程序时,程序计数器会不断更新,指向内存中的下一条指令,从而控制程序的执行顺序。
现在我继续提问,堆栈指针的功能是什么?
我:解答一下
AI:堆栈指针指向内存中的堆栈区域,用于管理堆栈的操作。堆栈是一种数据结构,具有 “后进先出” 的特点。堆栈指针可以用来指示当前堆栈顶部的位置,在进行压栈(将数据存入堆栈)和出栈(从堆栈中取出数据)操作时,堆栈指针会相应地进行调整。
那么,计算机系统的软件部分包括哪些呢?
我:系统软件和应用软件
AI:系统软件的主要作用是什么?
我:用于管理计算机的硬件和应用软件,为用户提供一个使用计算机的基础环境。
系统软件中的操作系统有哪些主要功能?
它负责管理计算机的硬件资源、调度任务、提供用户界面等。
AI:实用程序的作用是什么?
我:为方便用户使用计算机而提供的一些工具软件,如文本编辑、磁盘清理、杀毒软件等
AI:编译程序的功能是什么?
我:将用户用高级语言编写的程序翻译成机器可执行的机器语言程序
AI:应用软件的主要类型有哪些?
我:办公软件,游戏软件
我:评价一下这次解答
AI:在这次解答过程中,我们以苏格拉底式的提问方式逐步深入地探讨了计算机系统的知识。这种方式有助于你积极思考,通过自己的回答不断加深对计算机系统的理解。
从硬件部分的中央处理器及其各个组成部分,到软件部分的系统软件和应用软件,我们进行了较为全面的提问和解答。在解答过程中,尽量做到简洁明了、准确清晰,使你能够快速理解每个问题的要点。
然而,这种提问方式可能存在一定的局限性,无法涵盖计算机系统的所有方面。同时,对于一些复杂的概念,可能需要更深入的讨论和解释才能完全掌握。
总体而言,希望这次的交流对你学习计算机系统的知识有所帮助,如果你还有其他问题或需要进一步探讨的地方,可以随时提出。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 1/2 | 20/20 | |
第二周 | 300/500 | 1/4 | 18/38 | |
第三周 | 500/1000 | 1/7 | 22/60 | |
第四周 | 300/1300 | 1/9 | 10/90 |