> For the complete documentation index, see [llms.txt](https://langozhang.gitbook.io/me/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://langozhang.gitbook.io/me/wang-luo-gong-cheng/02-ji-suan-ji-ji-chu-zhi-shi.md).

# 02 计算机基础知识

> 第一部分\
> 01 CPU体系结构\
> 02 流水线技术\
> 03 内存结构与寻址\
> 04 数的表示与计算\
> 第二部分\
> 05 操作系统概念\
> 06 软件开发\
> 07 项目管理基础\
> 08 软件知识产权

***

## 计算机硬件概述

计算机硬件通常由控制器、运算器、存储器、输入设备和输出设备五大部件组成

* CPU【CentralProcessingUnit丨中央处理单元】，也称为微处理器【Microprocessor】，是**计算机中最核心的部件**，主要由控制器、运算器寄存器组和内部总线等构成；**用于数据的加工处理，能完成各种算术、逻辑运算及控制功能**
* 存储器是计算机系统中的记忆设备，分为**内存储器和外存储器**。前者速度高容量小，一般用于临时存放程序、数据及中间结果；而后者容量大，速度慢可以长期保存程序和数据
* 输入设备和输出设备合称为外部设备【简称外设】。输入设备用于输入原始数据及各种命令，如：键盘、鼠标；而输出设备则用于输出计算机运行的结果，如：显示器

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326160637.png)

***

### 控制器

控制器的组成：

1. 程序计数器【PC】：用于指出下条指令在主存中的存放地址，CPU根据程序计数器的内容（第一条指令地址）去主存处取得指令
2. 数据寄存器【DR】：用于暂存从“内存储器"中读出或写入的指令或数据
3. 指令寄存器【IR】：用于保存当前正在执行的这条指令的代码
4. 地址寄存器【AR】：用于存放CPU当前访问的内存单元地址
5. 指令译码器：用于对获取的指令进行译码，产生该指令操作所需要的一系列微操作信号，以控制计算机各部件完成该指令

***

### 运算器

运算器的组成：

1. 算术逻辑单元【ALU】：用于进行各种逻辑运算【如：与、或、非等】、算术运算【如：加、减、乘、除等】
2. 通用寄存器：用来存放操作数、中间结果和各种地址信息的一系列存储单元（数据寄存器（AX、BX、CX、DX）、地址指针寄存器（SI、DI、SP、BP）、累加寄存器）
3. 数据暂存器：用来暂存从“主存储器”读出的数据
4. 程序状态字寄存器【PSW】：用来存放“体现当前指令执行结果的各种状态信息"和控制信息"的

计算机中的一条【指令】就是机器语言的一个语句\
一条【指令】由两部分构成：

* 操作码：用于决定要完成的操作
* 地址码：用于说明操作数的地址；而操作数指的是参加运算的数据及其所在的单元地址

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326163035.png)

🌟结论：**CPU中指令的执行过程分为：取指令、取操作数、执行操作**

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326163141.png)

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326163259.png)

总线【Bus】是**连接计算机有关部件的一组信号线，是计算机中用来传送信息的公共通道**

总线可以分为2类：

* 内部总线
* 系统总线

按传输信号的种类，可分为3类：

* 数据总线 Data Bus (双向总线，各个部件的数据传输)
* 地址总线 Address Bus（单向总线，CPU或其他主设备发出的地址信号线）
* 控制总线 Control Bus（CPU和存储器或接口之间的控制信号）

***

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326164355.png)

![image.png](https://lango-wiki-img.oss-cn-hangzhou.aliyuncs.com/img/20250326164445.png)

***

CPU指令系统

为了提高操作系统的效率，人们最初选择了向指令系统中添加更多、更复杂的指令方式来实现，而且随着不断地升级和向后兼容的需要，指令集也越来越大。

这种类型的计算机，我们成为复杂指令集【cISC】；后经研究发现，计算机指令系统若使用少量结构简单的指令，则会提高计算机性能，便有了精简指令集【RISC】

RISC与CISC的主要区别：

* RISC比CICS更能提高计算机运算速度；RISC寄存器多，就可以减少访存次数，指令数和寻址方式少，因此指令译码较快，更适合采用硬布线逻辑执行指令
* RISC比CISC更便于设计，可降低成本，提高可靠性
* RISC能有效支持高级语言程序
* CICS的指令系统比较丰富，有专用指令来完成特定的功能，因此处理特殊任务效率高
* RISC采用流水线技术，大部分指令在一个时钟周期内完成

***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://langozhang.gitbook.io/me/wang-luo-gong-cheng/02-ji-suan-ji-ji-chu-zhi-shi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
