计算机底层原理02——计算机系统层次结构

早期计算机系统的层次

  • 最早的计算机用机器语言编程(机器语言称为第一代程序设计语言1GL

计算机底层原理02——计算机系统层次结构_第1张图片

机器语言的计算机系统层次
  • 后来用汇编语言编程(汇编语言称为第二代程序设计语言2GL

计算机底层原理02——计算机系统层次结构_第2张图片

汇编语言的计算机系统层次

现代计算机系统的层次

  • 现代计算机用高级语言编程
    第三代程序设计语言(3GL)为过程式语言,编码时需要描述实现过程,即“如何做”。
    第四代程序设计语言(4GL)为非过程式语言,编码时只需说明做什么,不需要描述具体的算法实现细节。
    计算机底层原理02——计算机系统层次结构_第3张图片
现代计算机系统的层次

PS:
语言处理系统包括各种语言处理程序(如编译、汇编、链接)、运行时系统(如库函数、调试、优化等功能)
操作系统包括人机交互界面、提供服务功能的内核例程

总结:语言的发展是一个不断“抽象”的过程(从最初的机器指令抽象为汇编语言的符号指令,再到高级语言的语句),因而相应的计算机系统也不断有新的层次出现

计算机系统抽象层的转换

计算机底层原理02——计算机系统层次结构_第4张图片
程序的执行结果不仅取决于算法、程序编写,而且取决于语言处理系统、操作系统、ISA、微体系结构,不同计算机课程处于不同的层次,必须将各层次关联起来解决问题。

指令集体系结构(ISA)

  • 软件由指令序列组成,软件通过指令使用硬件
  • ISA是一种规约,它规定了如何使用硬件
    • 可执行的指令集合,包括指令格式、操作种类以及每种操作对应的操作数的相应规定
    • 指令可以接受的操作数的类型
    • 操作数所能存放的寄存器组的结构,包括每个寄存器的名称、编号、长度和用途
    • 操作数所能存放的存储空间的大小和编址方式
    • 操作数在存储空间存放时按照大端还是小端方式存放
    • 指令获取操作数的方式,即寻址方式
    • 指令执行过程的控制方式,包括程序计数器、条件码定义等
  • ISA与微体系结构之间的关系
    • 不同ISA规定的指令集不同,如IA-32、X86-64、MIPS、ARM等
    • 微体系结构必须实现ISA规定的功能,如提供GPR、标志、运算电路等
    • 同一种ISA可以有不同的微体系结构,如乘法指令可用ALU或乘法器实现

你可能感兴趣的:(计算机理论)