小慕考高级-- 计算机基础(一)

笔者报考了2023年软考高级,考的是架构师,由于之前考过中级,想着自己有点基础,所以备考起步较晚;在网上写文章将自己的学习进度贴出来,一方面是为了敦促自己,另一方面给各位读者老爷找点乐子。如果今年顺利通过,那证明我写的笔记还是很有用的,如果今年果然没有通过,那岂不是很有意思?

1. 计算机硬件(考的少)

1.1 计算机硬件组成

  • 5大部件:运算器、控制器、存储器、输入设备、输出设备
  • 前两个合起来称为cpu,功能是:数据加工、算数和逻辑运算、各种控制
  • 输入输出合成外设

1.2 中央处理单元

  • cpu的功能:程序控制(执行顺序)、操作控制(产生操作数和运输操作数)、时间控制、数据处理、响应异常和中断
  • cpu的组成:运算器、控制器、内部总线、寄存器组
  • 运算器的组成:
    • 算数逻辑单元ALU: 可以计算3+5=8
    • 累加寄存器AC:存5和8的(5是原操作数,8是计算结果)
    • 数据缓冲寄存器DR:存放从内存中拿过来的指令或者数据的
    • 状态条件寄存器PSW:存放运行结果的条件码的,比如溢出标志
  • 控制器的组成:
    • 指令寄存器IR:存放从内存中拿到的指令的
    • 程序计数器PC: 存放下一条指令在内存中的地址的
    • 地址寄存器AR: 存放当前访问内存地址的
    • 指令译码器ID: 用来解析指令的,从中可以解析操作码
  • 指令周期:
    • 在一个完整的指令周期,cpu对待指令这一坨二进制数字的态度是不同的,在固定的阶段认为其为指令地址,在某些阶段认为其为数据。

1.3 校验码

1.3.1 码距

  • 狭义码距:对于相同长度的二进制数据a和b,通过改变a各个bit位的0或者1,可以将a变成b,在这个过程中改动的bit位的个数,称为码距;
  • 广义码距:对于相同长度的二进制数据a和b,通过改变a各个bit位的0或者1,可以将f(a)变成f(b),在这个过程中改动的bit位的个数,称为码距;其中f为函数,f(a)为a的映射结果;

1.3.2 奇偶校验码

  • 奇偶校验:奇校验就是在原来二进制数据的末尾添加一个bit位,取值可以是0或者1,以保证添加完之后的新的二进制数据中1的个数为奇数;显然,如果原来数据中1的个数本来就是奇数个,则添加的bit位值应该为0,反之为1;在这个过程中:添加完之后的新的二进制数据中1的个数为奇数可以看成是映射f
  • 由此容易得到,奇偶校验的广义码距为2
  • 奇偶校验码只能检1个bit位的错误,并且不能纠错。

循环冗余校验码CRC

  • 同样是只能检错,而不能纠错
  • 特点是,数据的接收方和发送方使用相同的多项式
  • 在计算校验码的时候需要用到模2除法(就是按位异或)的算法

2. 指令系统(重要的计算机基础知识,考不考试都应该了解)

2.1 指令的组成

  • 操作码:表明这条指令要做什么(例如要做加法)
  • 操作数:和运算相关的数据 及其所在的地址 (有可能直接给出数据,也有可能给出存放数据的地址),习惯上又称地址码
  • 所以有的地方说指令是由操作码和操作数组成的,也是没有问题的
  • 不论是操作码还是操作数都是二进制数据,cpu区分它们的方式是根据指令周期的不同阶段(1.2 cpu功能中已经写到了)

2.2 指令执行过程

  • 取指令: 一般是PC给出下一条指令在内存中的地址,送入总线从内存中拿到指令之后存到IR中
  • 分析指令:ID分析IR中的指令,取出操作码
  • 执行指令:在执行指令的时候从指令中拿到操作数
  • 这对应上面说到的,在不同的指令周期从二进制指令中分别取出操作码和操作数
相关推荐
samlyx20 天前
计算机组成原理(1)
计算机组成原理
Dong雨1 个月前
计算机组成原理期末复习
计算机组成原理·期末复习
island13141 个月前
【计算机组成原理课程设计】:实验0 ROM仿真、实验1 验证74L181运算和逻辑功能、实验2 运算器 2、实验 3 跑马灯、实验4 模拟微程序实现指令
机器学习·课程设计·计算机组成原理
YY_D_S_1 个月前
【机组】概述精炼考点(冯诺依曼、层次结构、翻译语言、执行程序的过程、基本工作原理、运算器、控制器、存储器)
计算机组成原理·机组
superiony2 个月前
【计算机组成原理】实验二:通用寄存器单元实验
计算机组成原理·通用寄存器
青春pig头少年2 个月前
《计算机组成原理》(408大题)
学习笔记·408·计算机组成原理
moonless02222 个月前
【GISer精英计划_00】从二进制到协议、到计算机通信、到服务器
网络协议·gis·计算机组成原理
运维小文2 个月前
linux的磁盘管理
linux·运维·网络·磁盘·计算机组成原理·硬件
shengjk12 个月前
从零开发操作系统-聊一下GDT 和 IDT
人工智能·后端·计算机组成原理
小新_-3 个月前
第五章:指令系统
计算机组成原理