计算机组成原理与体系结构笔记(1)计算机发展历程

2020-06-13  本文已影响0人  仍有不归期

计算机组成原理与体系结构笔记(2)数制与编码

计算机系统概述
这篇笔记是基于 《计算机组成原理与体系结构》 的学习笔记

一.计算机的发展历程:

1.电子管时代(1946 - 1957):

1945年,stored-program(存储程序)控制计算机的构想。
1946年,时代的开端,第一台通用电子计算机ENIAC诞生。

2.晶体管时代(1958 - 1964):

1960年,流水线计算机、逻辑指令登场
1964年,DEC公式,PDP-8小型机,第一个采用总线架构的计算机。

3.集成电路时代(1965 - 1971):

1970年,IBM360/85机型第一次采用了缓存(cache)。
1971年,Intel发布了芯片 Intel4004,第一种微处理器芯片。

4.大规模集成电路时代(1972 - 1990):

1973年,Intel8008 , 和4004一样都是基于累加器结构的CPU
1980年,RISE(Reduced Instruction Set Computer)精简指令集计算机设想的提出

5.巨大规模集成电路时代(1991 - ):

主要继续由因特尔独领风骚

(1). MPU:Micro Processor Unit ,微处理器,又称中央处理器(CPU)。MPU/CPU = ALU(算术逻辑单元) + CLU(控制逻辑单元) + R(寄存器)
(2). MCU:Micro Controller Unit,微控制器, 又称单片机,他将组成微型机的所有部件集合在一个芯片上构成。有以下优点:
--------成本低、低延迟、易于获取数据、容易控制、专一性
(3). DSP:Digital Signal Processing,数字信号处理芯片,是一种专门用于处理数字信号运算的微处理器
(4). FPGA/CPLD:可编程芯片,需要用户自行构造逻辑功能的数字电路

二.计算机系统的基本组成:

计算机系统由硬件系统和软件系统两部分组成,具体构成看以下树形图:

系统构成--来源:老师课件,侵删
1. 尽管计算机硬件技术已经发展到了现在,大多数计算机基本结构依然具有冯诺依曼体系结构的特征。
冯诺依曼体系结构:

2. 计算机硬件主要包括:中央处理器、存储器、I/O控制器、外部设备和各类总线等。

硬件构成关系如下图: 硬件构成--来源:老师课件,侵删

三.计算机系统的层次结构

问题是由自然语言描述的,程序员需要将问题的解决策略转变为算法,再将算法转化为编程语言所描述的程序,程序经过翻译程序翻译为机器语言程序(ISA指令集),最终由计算机执行。

翻译程序有三类:汇编程序、解释程序、编译程序

ISA:指令集体系结构,是软件和硬件接口之间的完整定义

计算机系统的不同用户:

ISA下部是硬件部分、上部是软件部分:


层次化结构

四.程序开发与执行过程(C语言为例)

因为程序是用来解决最终用户的应用问题,所以程序被称为用户程序和应用程序

从源程序到可执行程序的转换过程:


过程

预处理、编译、汇编、链接
main.c -> main.i ->main.s -> main.o -> main.exe(windows)

int main(){
    return 0;
}

预处理指令:gcc -E hello.c -o hello.i
hello.i文件:

# 1 "hello.c"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "hello.c"
# 1 "need.h" 1
int main(){
 return 0;
}
# 2 "hello.c" 2

    .file   "hello.c"
    .def    ___main;    .scl    2;  .type   32; .endef
    .text
    .globl  _main
    .def    _main;  .scl    2;  .type   32; .endef
_main:
    pushl   %ebp
    movl    %esp, %ebp
    andl    $-16, %esp
    call    ___main
    movl    $0, %eax
    leave
    ret
    .ident  "GCC: (i686-posix-sjlj, built by strawberryperl.com project) 4.9.2"

高级语言、汇编语言、机器语言、控制信号相关转换示例:


等价转换

五.计算机系统性能评价

计算机系统性能评价以CPU执行指令速度为核心

一些相关概念:
吞吐率:计算机单位时间内完成的工作量。

响应时间(执行时间、等待时间):计算机从作业提交开始到作业完成所用时间。

把用户感觉到的执行时间分为两个部分:CPU时间和其他时间
CPU时间指的是CPU用于程序执行的时间:
用户CPU时间、系统CPU时间

CPU时间计算相关概念和指标:
1.时钟周期:CPU主脉冲信号的宽度

2.时钟频率:时钟周期的倒数

3.CPI:执行一条指令所需的时钟周期数

CPU执行时间 = 指令数 * CPI * 时钟周期
MIPS:平均每秒钟执行百万条指令的条数
MIPS = 时钟频率 * 10^-6 / CPI , 单位为MIPS

每天进步一点,加油! End

END

上一篇 下一篇

猜你喜欢

热点阅读