1.2-计算机的基本组成

冯·诺依曼计算机的特点

组成

1.计算机由五大部件组成 {
    (运算器、控制器、存储器、输入设备、输出设备)
    eg:(算盘-->:算盘珠、人、算盘珠、人、算盘珠)
}

2.指令和数据以同等地位存于存储器,可按地址寻访

3.指令和数据用二进制标识 {
    为什么使用二进制(电路的通断表示01)
    可不可以使用其他进制
}

4.指令由操作码和地址码组成

5.存储程序 *

6.运算器为中心

冯·诺依曼计算机硬件框图

以运算器为中心

image-20200320162947304

缺点
运算器为性能瓶颈
没有层次化

计算机硬件框图

以存储器为中心

image-20200320163109434

缺点
没有层次化

现代计算机硬件框图

image-20200320163207746

运算器 ALU -\
             > CPU_
控制器 CU  _/      \
                    > 主机 
        /- 主存   _/       -\
存储器 <                     \
        \_ 辅存               >硬件
                            /
输入设备        -\         _/
                 > I/O设备
输出设备        _/

=====================

系统复杂性管理的方法(3’Y)
- 层次化(Hierachy):将被设计的系统划分为多个模块或子模块
- 模块化(Modularity):有明确的定义(well-defined)的功能和接口
- 规则性(regularity):模块更容易被重用


计算机的工作步骤

- 建立数学模型
- 确定计算方法
- 编制解题程序
    程序--运算的全部步骤
    指令--每一个步骤

eg: 计算ax^2+bx+c
# 假设 a b c x 已经保存到内存中
- 取x至运算器中([x] -> ACC)
- 乘以x在运算器中([x]*[ACC] -> ACC)
- 乘以a在运算器中([a]*[ACC] -> ACC)
- 存ax^2在存储器中 (ACC -> 内存m)
- 取b至运算器中([b] -> ACC)
- 乘以x在运算器中([ACC]*[x] -> ACC)
- 加ax^2在运算器中([ACC]+[m] -> ACC)
- 加c在运算器中([ACC]+[c] -> ACC)

取数指令举例

# []为取内容
取数 a              [a] -> ACC
000001 0000001000
存数 b              [ACC] -> b
加   c           [ACC]+[c] -> ACC
乘   d           [ACC]*[d] -> ACC
打印 o              [o] -> 打印机
停机

存储器的基本组成

 _____________________
|                     |
|    ____________     |
|   |            |    |
|   |   存储体    |    |
|   |____________|    |
|                     |
|     [MAR] [MDR]     |
|                     |
|      主存储器        |
|                     |
|_____________________|

MAR 存储器地址寄存器
    反应存储单元的个数
    
MDR 存储器数据寄存器
    反应存储字长

    存储体 - 存储单元 - 存储原件(0/1)
eg: 大楼  -   房间   -   床位 (无人/有人)

=====================

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


运算器的基本组成

_______________
[ACC] <--> [MQ]
  ^
  |
  v
[ALU]
  ^
  |
 [X]
_______________

    运算器
    
=====================

eg:乘法操作过程
指令 [乘][M]

- ACC 被乘数
- [M] -> MQ
- [ACC] -> X
- 0 -> ACC
- [X]*[MQ] -> ACC//MQ
ACC MQ X
加法 被加数、和 加数
减法 被减数、差 减数
乘法 乘积高位 乘数、乘积低位 被乘数
除法 被除数、余数 除数

主机完成一条指令的过程

image-20200320163349864

ax^2+bx+c程序的运行过程
- 将程序通过输入设备送至计算机
- 程序首地址 --> PC
- 启动程序运行
- 取指令 PC->MAR->M->MDR->IR , (PC)+1 -> PC
- 分析指令 OP(IR) -> CU
- 执行指令 Ad(IR) -> MAR -> M -> MDR -> ACC
    ·
    ·
    ·
posted @ 2020-03-20 17:50  Quaint  阅读(635)  评论(0编辑  收藏  举报
……