2024-2025-1 20241403 《计算机基础与程序设计》第五周学习总结

学期(如2024-2025-1) 学号(如:20241403) 《计算机基础与程序设计》第5周学习总结

作业信息

这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计
这个作业要求在哪里 <作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)
这个作业的目标 Pep/9虚拟机 机器语言与汇编语言 算法与伪代码 测试:黑盒,白盒
作业正文 https://www.cnblogs.com/chenqiqi/p/18505334

教材学习内容总结

《计算机科学概论》

  1. 计算机操作与机器语言:
    • 计算机的定义:计算机是能够存储、检索和处理数据的可编程电子设备。
    • 机器语言的定义:由计算机直接使用的二进制编码指令构成的语言。每条机器语言指令只能执行一个非常低级的任务,大多数程序使用高级语言编写,然后翻译成机器语言。
    • 虚拟机示例(Pep/9):为了模拟真实机器的重要特征而设计的假想机器。Pep/9 一共有 40 条机器语言指令,其指令格式由 8 位数的指令说明符和(可选的)16 位的操作数说明符构成,这决定了 Pep/9 的指令在长度上是 1 字节或 3 字节。指令中的寻址位置说明符表示了怎样解析指令中的操作数部分。
  2. 汇编语言:
    • 定义:一种低级语言,用助记码表示特定计算机的机器语言指令。
    • 汇编器:把汇编语言程序翻译成机器代码的程序。
    • Pep/9 汇编语言的特点:操作数用 0x 和十六进制表示,后面跟逗号,最后是寻址模式(由字母 i(立即寻址)或 d(直接寻址)说明)。并且程序中存在注释,注释是为程序读者提供的解释性文字。此外,还介绍了数字数据、标签、分支等概念,其中分支指出执行下一条指令的指令,标签是对内存位置起的名字,可以将这个名字当作操作数。
  3. 表达方法:
    • 算法:是解决方案的计划或纲要,是解决问题的逻辑步骤顺序。
    • 伪代码:是一种表达算法的语言,其功能包括对变量的处理、赋值、输入/输出、选择、重复等操作。伪代码中有一些特定的语句,如 write(用于输出)、read(用于输入)、if...else(用于选择)、while(用于重复)等。
    《C语言程序设计》
    1.循环结构与循环语句
    •循坏分为技术控制的循环,条件控制的循环,标记控制的循环
    •循环语句有 for while do...while
    2.嵌套循环
    3.递推法编程
    4.穷举法编程

教材学习中的问题和解决过程(先问 AI)

  • 问题1:while与do while 的区别与联系
  • 问题1解决方案:
    一、区别:
  1. 执行顺序不同
    • while:先判断条件,若条件为真则执行循环体中的语句;如果条件一开始就为假,那么循环体一次都不会执行。
    • do...while:先执行一次循环体中的语句,然后再判断条件;即使条件一开始为假,循环体也至少会被执行一次。
  2. 语法结构不同
    • while:while(条件表达式) {循环体语句}。
    • do...while:do {循环体语句} while(条件表达式);。
    二、联系:
  3. 目的相同
    • 两者都是为了实现重复执行一段代码的目的,根据特定的条件来控制循环的执行次数。
  4. 条件判断方式相似
    • 都使用一个条件表达式来决定是否继续执行循环。当条件表达式的值为真时,继续循环;当条件表达式的值为假时,结束循环。

基于AI的学习








代码调试中的问题和解决过程

  • 问题1:如何每次生成不同的随机数
  • 问题1解决方案:
    使用时间作为随机数种子。
    • 在程序开始处调用srand(time(NULL)),其中time(NULL)返回当前时间的秒数,这个值作为随机数生成器的种子。因为每次程序运行的时间不同,所以种子不同,这样就能保证每次生成的随机数序列不同。
    • 之后再使用rand()函数来生成随机数。

例如:

include <stdio.h>

include <stdlib.h>

include <time.h>

int main() {
srand(time(NULL));
int randomNumber = rand();
printf("%d\n", randomNumber);
return 0;
}

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90
posted @ 2024-10-26 23:31  陈琪琪  阅读(4)  评论(0编辑  收藏  举报