计算机课程预习资料

第一部分:计算机科学#

  1. 计算机发展历史

    • 算盘(约公元前2500年):最早的计算设备
    • 星盘、计算尺、时钟(公元前2500-公元1500年):出现机械运动的机器
    • 步进计算机(1694年):第一个可加减乘除的机器
    • 差分机(1823年):可以做函数计算,但该计划最终失败
    • 分析机(19世纪中期):基于差分机,是一个“通用计算机”
    • 哈佛Mark 1号:世界上最大的机电计算机之一
    • ENIAC(1946年):世界上第一台数字式的电子多用途计算机
    • 空军AN/FSQ-7(1955年):用于防空系统,真空管达到计算极限
    • IBM 608(1957年):第一个消费者可购买的晶体管计算机
  2. 三种基本逻辑门

    • 与门(AND gate):符号为一个圆圈,输入端有两条直线,输出端有一条直线。
    • 或门(OR gate):符号为一个圆圈,输入端有两条曲线,输出端有一条直线。
    • 非门(NOT gate):符号为一个三角形,输入端有一条直线,输出端有一条直线。这些符号用于表示逻辑门电路的布局和功能。
  3. 算术与逻辑运算

    • 与运算(&):对两个操作数的每一位执行逻辑与操作,如果两个相应的位都为 1,则结果为 1,否则为 0。按位与操作,按二进制位进行"与"运算。运算规则:

      Copy Highlighter-hljs
      0&0=0;
      0&1=0;
      1&0=0;
      1&1=1;
    • 或运算(|): 对两个操作数的每一位执行逻辑或操作,如果两个相应的位都为 0,则结果为 0,否则为 1。按位或运算符,按二进制位进行"或"运算。运算规则:

      Copy Highlighter-hljs
      0|0=0;
      0|1=1;
      1|0=1;
      1|1=1;
    • 异或运算(^): 对两个操作数的每一位执行逻辑异或操作,如果两个相应的位值相同,则结果为 0,否则为 1。异或运算符,按二进制位进行"异或"运算。运算规则:

      Copy Highlighter-hljs
      0^0=0;
      0^1=1;
      1^0=1;
      1^1=0;

      对两个十进制数字进行异或运算时,需要先将数字转换成二进制,然后对每一位进行异或运算,最后将结果再转换回十进制。

  4. 字节 字节是计算机信息中用于描述存储容量和传输容量的一种计量单位,是计算机的基本存储单位。一个字节由8个相邻的二进制位组成,每个位由0或1组成,用大写字母B表示。

    名称 简写 换算
    比特 bit/b 1B=8bit
    KB 1KB=1024B
    MB 1MB=1024KB
    GB 1GB=1024MB
    TB 1TB=1024GB
    PB 1PB=1024TB
    EB 1EB=1024PB
    ZB 1ZB=1024EB
    YB 1YB=1024ZB
  5. 二进制与十进制转换 十进制转二进制采用除2取余法。将十进制数不断除以2,记录每次的余数,直到商为0。然后将所有余数从下往上排列,得到的就是对应的二进制数。

    例如,将十进制数25转换为二进制数的过程如下:

    除2运算 余数
    25/2 12 1
    12/2 6 0
    6/2 3 0
    3/2 1 1
    1/2 0 1

    从下往上排列余数,得到二进制数11001。

  6. 操作系统 操作系统是一种内置的程序,用来协作计算机的各种硬件,以与用户进行交互。常见的操作系统有Windows、macOS、Linux、华为鸿蒙系统。

  7. CPU 即中央处理单元,负责执行程序,通常由寄存器+控制单元+ALU+时钟组成,与RAM配合,执行计算机程序

第二部分:C语言程序设计#

  1. 算术运算符 下表显示了C语言支持的所有算术运算符。假设变量A的值为10,变量B的值为20,则:

    算数运算符 描述 实例
    + 把两个操作数相加 A + B 将得到 30
    - 从第一个操作数中减去第二个操作数 A - B 将得到 -10
    * 把两个操作数相乘 A * B 将得到 200
    / 分子除以分母 B / A 将得到 2
    % 取模运算符,整除后的余数 B % A 将得到 0
    ++ 自增运算符,整数值增加 1 A++ 将得到 11
    -- 自减运算符,整数值减少 1 A-- 将得到 9
  2. 逻辑运算符 下表显示了C语言支持的所有关系逻辑运算符。假设变量A的值为1,变量B的值为0,则:

    逻辑运算符 描述 实例
    && 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 (A && B) 为假。
    || 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 (A || B) 为真。
    ! 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 !(A && B) 为真。

    注:0表示“假”,1表示“真”。

  3. 赋值运算符 下表列出了C语言中常用的赋值运算符。

    运算符 描述 实例
    = 简单的赋值运算符,把右边操作数的值赋给左边操作数 C = A + B 将把 A + B 的值赋给 C
    += 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 C += A 相当于 C = C + A
    -= 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 C -= A 相当于 C = C - A
    *= 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数 C *= A 相当于 C = C * A
    /= 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数 C /= A 相当于 C = C / A
    %= 求模且赋值运算符,求两个操作数的模赋值给左边操作数 C %= A 相当于 C = C % A
  4. 运算符优先级 运算符的优先级确定表达式中项的组合。这会影响到一个表达式如何计算。某些运算符比其他运算符有更高的优先级,例如,乘除运算符具有比加减运算符更高的优先级。例如 x = 7 + 3 * 2,在这里,x 被赋值为 13,而不是 20,因为运算符 * 具有比 + 更高的优先级,所以首先计算乘法 3*2,然后再加上 7。总而言之,在表达式中,较高优先级的运算符会优先被计算。

    下面表格中,较高的运算符在上,较低的运算符在下。

    类别 运算符
    一元 + - ! ~ ++ --
    乘除 * / %
    加减 + -
    关系 < <= > >=
    相等 == !=
    赋值 = += -= *= /= %=>>= <<= &= ^= |=
  5. 数据类型 C语言数据类型大致可分为整型、浮点型、void类型。

    • 常用的整型:int,char,short,long
    • 常用的浮点型:float,double,long double
  6. 指针 指针就是内存地址,指针变量是用来存放内存地址的变量。指针变量声明的一般形式为:type *var_name;例如,我需要声明一个名称为p的整型指针变量,可以写为:int *p;

  7. break语句 break语句是一种循环控制语句,能够终止循环或 switch 语句,程序流将继续执行紧接着循环或 switch 的下一条语句。

  8. 函数与返回值

    • 以下是max()函数的源代码。max()函数可以比较两个数的大小,并给出最大的那一个。该函数有两个参数 num1 和 num2,会返回这两个数中较大的那个数:

      Copy Highlighter-hljs
      /* 函数返回两个数中较大的那个数 */
      int max(int num1, int num2)
      {
      /* 局部变量声明 */
      int result;
      if (num1 > num2) {
      result = num1;
      } else {
      result = num2;
      }
      return result; // 关键点
      }
    • 下面的程序定义了一个函数用于计算两个整数的和,并在 main 函数中调用该函数并输出结果。

      Copy Highlighter-hljs
      #include <stdio.h>
      // 定义函数计算两个整数的和
      int add(int a, int b) {
      return a+b;// 关键点
      }
      int main() {
      int num1 = 5, num2 = 10;
      int result = add(num1, num2); // 关键点
      printf("两数之和是: %d\n", result);
      return 0;
      }
  9. 输出 输出时使用函数printf()

第三部分:Python语言程序设计#

  1. 标识符名称命名规则

    • 第一个字符必须是字母表中字母或下划线
    • 标识符的其他的部分由字母、数字和下划线组成
    • 不可以使用保留字。保留字即关键字,我们不能把它们用作任何标识符名称。包括:False, None, True, and, as, assert, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield
  2. 字典 字典是一种可变容器模型,可存储任意类型对象。字典的每个键值对用冒号分割,每个对之间用逗号分割,整个字典包括在花括号中 ,格式如下所示:d = {key1 : value1, key2 : value2, key3 : value3 }

  3. 列表 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。例如:list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black']

  4. 列表索引 序列中的每个值都有对应的位置值,称之为索引。索引从0开始数。第一项索引是 0,第二项索引是 1,第三项索引是2,以此类推。

  5. 集合 集合是一个无序的不重复元素序列。

  6. 赋值运算符 下表列出了Python中常用的赋值运算符。

    运算符 描述 实例
    = 简单的赋值运算符 c = a + ba + b 的运算结果赋值为 c
    += 加法赋值运算符 c += a 等效于 c = c + a
    -= 减法赋值运算符 c -= a 等效于 c = c - a
    *= 乘法赋值运算符 c *= a 等效于 c = c * a
    /= 除法赋值运算符 c /= a 等效于 c = c / a
    %= 取模赋值运算符 c %= a 等效于 c = c % a
    **= 幂赋值运算符 c **= a 等效于 c = c ** a
    //= 取整除赋值运算符 c //= a 等效于 c = c // a
  7. 函数 Python定义函数使用def关键字,一般格式如下:def 函数名(参数列表):

  8. for循环语句 for循环可以遍历任何可迭代对象,如一个列表或者一个字符串。for循环的一般格式如下:

    Copy Highlighter-hljs
    for <variable> in <sequence>:
    <statements>
    else:
    <statements>

    整数范围值可以配合 range() 函数使用:

    Copy Highlighter-hljs
    # 输出 1 到 5 的所有数字:
    for number in range(1, 6): # 注意看range函数的参数怎么写的
    print(number)
  9. range()函数 range()函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。range函数的参数范围左闭右开。例如,如果要生成从1到10的序列,则需要写range(1,11)

  10. 注释 注释不会被程序执行,但是会使代码更易于阅读和理解。Python 中的注释有单行注释和多行注释。

    • 单行注释:Python 中单行注释以 # 开头
    • 多行注释:多行注释用三个单引号 ''' 或者三个双引号 """ 将注释括起来
  11. 模块导入 Python中有非常丰富的模块。如果要导入一个名为matplotlib的模块,需要在文件开头中写上:import matplotlib。如果要导入一个名为numpy的模块,需要在文件开头中写上:import numpy。以此类推。

posted @   BohengWebb  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示
CONTENTS