计算机系统简介

计算机系统简介

计算机系统

  • 硬件 计算机实体,如主机、外设
  • 软件 具有各类特殊功能的信息(程序)组成

软件

  • 系统软件 用来管理整个计算机系统 (语言处理程序、操作系统、服务性程序、数据库管理系统、网络软件)
  • 应用软件 按任务需要编制成的各种程序

硬件给软件提供指令集(接口),利用指令集编写程序控制硬件。

从上到下都需要进行转化,比如汇编语言需要转化为机器语言,中间存在转化过程。

计算机的组成

一、冯诺依曼计算机特点
  1. 计算机由五大部件组成
  2. 指令和数据以同等地位存于存储器,可按地址寻访
  3. 指令和数据用二进制表示
  4. 指令由操作码和地址码组成
  5. 存储程序
  6. 以运算器为中心

运算器:算术运算和逻辑运算 (以运算器为中心,比较繁忙,成为计算机的瓶颈)

存储器:存放数据和程序

控制器:指挥程序运行

输入设备:将信息转换成机器能识别的形式

输出设备:将结果转化为人们熟悉的形式

二、计算机硬件框图

1.以存储器为中心的计算机硬件框图

2.现代计算机硬件框图

系统复杂性管理的方法(3y)

  • 层次化(hierachy):将被设计的系统划分成多个模块和子模块
  • 模块化(modularity):有明确的功能和接口
  • 规则性(regularity):模块更容易被重用
三、计算机的工作步骤

(执行命令过程需要哪些功能,解决哪些问题???)

问题是否可以通过计算机解决?问题如何通过计算机解决?

1、上机前的准备
  • 建立数学模型 u=Um Sinwt
  • 确定数学方法 sin x = x- x^3/(3!) +x^5/(5!) - x^7/(7!)+... yn+1 =0.5(yn +x/yn)
  • 编制解题程序 程序:运算的全部步骤 指令:每一个步骤

计算ax^2+bx+c

  • 取 x到运算器中(实际是将其保存到累加器中)
  • 乘以x在运算器中 (内存中的数据和累加器中数据做乘法,得出x的平方,保存在acc中)
  • 乘以a在运算器中
  • 存ax^2在存储器中 (计算bx依然要使用累加器,故需要将ax^2转存)
  • 取b至运算器中
  • 乘以x在运算器中 (内存单元的数和acc的数做乘法)
  • 加ax^2
  • 加c在运算器中

指令格式举例

取数:将内存单元保存的数保存到acc中。acc默认,不需要指令指出

指令16位(6位操作码,10位表示内存单元地址)

加法操作:默认一个数保存在acc中,加法结果也默认保存在acc中。

存储器的结构?如何进行访问?每次访问的数据的位数是多少?

2、计算机的解题过程

1.存储器的基本组成

存储体(大楼) -- 存储单元(房间) -- 存储元件(床位)

  • 存储单元 存放一串二进制代码
  • 存储字 存储单元中二进制代码的组合
  • 存储字长 存储单元中二进制代码的位置,每个存储单元赋予一个地址
  • 按地址寻访

MAR:存储地址寄存器 反映存储单元的个数

MDR:存储器数据寄存器,反映存储字长 (保存要送入cpu的数据,或者要保存到存储体的数据)

2.运算器的基本组成和操作过程

(如上面乘法器结果位宽会增加一倍,增加寄存器MQ)MQ寄存器只用于乘除中,且保存的是乘(M)和商(Q)

加法操作过程

先有输入指令,输入到acc中,保存被加数。

指令中的M是加数。要作加法得先从内存指令m处取出加数到x,然后和acc中的被加数相加。加法结果放到acc中。

减法操作过程

乘法操作过程

除法操作过程

控制器的基本结构如何?

控制器功能?

  • 解释指令 (指从取指、分析、取操作数、执行、保存)
  • 保证指令的按序执行
3、控制器的基本组成

完成一条指令

  1. 取指令 需要知道地址 PC(寄存器,程序计数器缩写,保存当前要执行指令的地址)
  2. 分析指令 把指令从内存单元取出,到控制单元分析,需要锁存起来 IR
  3. 执行指令 操作控制(比如执行先后?)CU

PC存放当前欲执行指令的地址,具有计数功能(PC)+1 -----> PC (这里加1还是加几和机器结构有关)

IR存放当前欲执行的指令

一条指令在主机上如何完成过程?

程序在主机上是如何执行的?

4、逐渐完成一条指令的过程

以取数指令为例

取指令:

  1. PC中的地址给MAR
  2. MAR送给存储体
  3. 在控制器控制下,存储体把指定存储单元的指令取出到MDR
  4. 取出的指令送到IR

分析指令:

在控制单元内部进行,把IR中的指令操作码送给CU,CU的各个信号控制各个部件,执行指令要求

取数操作:把指令当前的地址部分送给存储器,以便把数据取出。

以存数指令为例

5、ax^2+bx+c程序的运行过程
  • 将程序通过输入设备送至计算机
  • 程序首地址----> PC
  • 启动程序运行
  • 取指令 PC --> MAR --> M --> MDR --> IR , (PC)+1 --> PC
  • 分析指令 OP(IR) --> CU
  • 执行指令 AD(IP) --> MAR --> M --> MDR --> ACC
  • ......
  • 打印结果
  • 停机

执行完指令后,pc需要调整,由于后面没有对PC寄存器操作,所以可以在取指令后调整PC值

计算机硬件的主要技术指标

1.、机器字长 cpu一次能处理数据的位数,与cpu中的寄存器位数有关。

2、运算速度 (通过指令运行速度来判断)

  • 主频
  • 核数,每个核支持的线程数
  • 吉普森法
  • CPI 执行一条指令所需时钟周期数
  • MIPS 每秒执行百万条指令
  • FLOPS 每秒浮点运算次数

3、存储容量 存放二进制信息的总位数

主存容量

  • 存储单元个数 x 存储字长(如MAR 10 MDR 8 容量 1k*8位)
  • 字节数 如2^13b=1 KB

辅存容量

字节数 80GB

相关推荐
SelectDB16 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
zzzzzz3102 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz6 天前
Maven依赖冲突
java·服务器·maven
Inhand陈工6 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智6 天前
ARP代理--工作原理
运维·网络·arp·arp代理