
计算机系统基础袁春风(3)(4)41.31.4计算机系统层次结构程序开发和执行过程的简介
汇编语言出现: 用助记符表示操作码,用标号表示未知 ,用助记符表示寄存器 你会认为用汇编语言的优点是:不会因为增减指令而需要修改其他的指令 不需要记忆指令编码,编写方便 可读性比机器语言强
什么是汇编语言 用助记符和标号来表示的指令(机器指令一一对应) 指令是什么? 包含操作码和操作数或者其地址码 机器指令用二进制表示,汇编指令用符号来表示 机器级语言: 机器语言和汇编语言都是面向机器结构的语言所以他们都是集齐九眼
用高级语言开发程序 随着技术的发展,出现了许多的高级语言 他们与具体的机器结构有关 面向算法描述,比机器级语言描述能力强得多 高级语言当中的一条语句对应几条,几十条甚至几百条指令 有面向过程和面向对象的语言之分 处理逻辑分为三种结构 顺序结构,选择结构,循环结构 现在,几乎所有的程序员都要用高级语言编程,但是最终要将高级语言转换成机器语言 有两种转换方式: 编译和解释 编译程序Complier 将高级语言源程序转换成为机器级目标程序,执行的时候只要启动目标程序需就可以了 解释程序Interpreter: 将高级语言逐条翻译成机器指令并立即执行,不生成目标文件
预处理,编译,汇编,连接 hello.chello.i hello.s hello.o
开发和运行程序需要什么支撑? 最早的程序开发很简单的 直接输入指令和数据,启动后把第一条指令地址送给PC开始执行 用高级语言开发程序需要复杂的支撑环境 需要编辑器编写源程序 需要一条翻译转换软件处理各类源程序 编译的方式:预处理的程序,编译器,汇编器,连接器 解释的方式:解释程序 需要一个可以执行程序的界面(环境) GUI方式:图形用户界面 CUI:命令行用户界面 支撑程序开发和运行的环境是由系统软件提供的, 最终的系统软件是操作系统和语言处理系统 语言处理系统运行在操作系统之上的,操作系统利用指令管理硬件
语言运行时候的系统 操作系统的内核 指令集体系结构 计算机硬件
现在计算机系统的层次 应用程序 语言处理系统 操作系统 指令集体系结构 计算机硬件 现代计算机用高级语言编程 第三代程序设计语言(3GL)为过程式的语言,编码的时候需要描述实现过程,即如何做的 第四代程序设计语言(4GL)为非过程化的语言,编码的时候只需要说明做什么,不需要描述具体的算法实现细节 可以看出语言的发展是一个不断的抽象的过程,因而,相应的计算机系统也不断的有新的计算机系统也不断有新的层次出现 语言处理系统包括:各种语言处理程序(例如:编译,汇编,连接),运行时候(如库函数,调试,优化等功能) 操作系同包括人机交互界面,提供服务功能的内核历程
上层是下层的抽象,下层是上层实现底层为上层提供支撑的环境 程序执行结果不仅取决于算法,程序编写而且取决于语言处理系统,操作系统ISA,微体系结构 不同的计算机课程处于不同的层次 必须将各个层次的关联起来,解决问题 最高层抽象就是点点鼠标,拖拖图标
计算机系统的不同用户 最终用户工作在由应用程序提供的最上面的抽象层 系统管理员工作在由操作系统提供的抽象层 应用程序员工作在由语言处理系统(主要有编译器和汇编器)的抽象层 语言处理系统建立在操作系统之上 系统程序员(实现系统软件)工作在ISA层次,必须对ISA非常的了解 编译器和汇编器的目标程序由机器级代码组成的 操作系统通过指令直接对硬件进行编程控制 ISA处于软件和硬件的交界面(接口) ISA是对硬件的抽象 所有的软件功能都建立在ISA之上的
指令集体系结构ISA ISA是指Instracution Set Architecture即指令集体系结构,有的时候简称为指令系统 ISA是一种规约,t他规定了如何使用的硬件 可执行的指令的集合,包括指令格式,操作种类以及每种操作对应的操作数的相应的规定 指令可以接受的操作数的类型 操作数所能够的存放的寄存器组的结构,包括每个寄存器的名称,编号,长度和用途 操作数所能够存放的存储空间的大小和编制的方式 操作数在存储空间存放的时候按照大端还是小端方式存放的 指令获取操作数的方式,即寻址方式 指令执行过程的控制方式,包括程序计数器PC,条件码的定义等 ISA在通用计算机系统当中是必不可少的一个抽象层
不同的ISA规定的指令集是不同的,如IA-32,MIPS,ARM等 计算机组成必须能够实现ISA规定的功能,如提供GPR,标志,运算电路等 同一种ISA可以有不同的计算机组成,如乘法指令,可用ALU或者乘法器实现 ISA是计算机组成的抽象
发布日期:2021-05-07 07:13:08
浏览次数:28
分类:技术文章
本文共 2253 字,大约阅读时间需要 7 分钟。
程序开发和执行过程
最早的程序开发过程 用机器语言编写程序,并记录在纸袋或者卡片上






1.4计算机系统层次结构
语言处理系统运行在操作系统之上的,操作系统利用指令管理硬件早期计算机系统的层次
最早的计算机用机器语言编程 机器语言称为第一代程序设计语言 First generation programming language,1GL 应用程序,指令集体系结构 计算机硬件 后来用汇编语言编程 汇编语言称为第二代程序设计语言 Second generation programming langguage ,2GLL 应用程序 汇编程序 操作系统 指令集体系结构 计算机硬件






发表评论
最新留言
不错!
[***.144.177.141]2025年03月19日 16时53分24秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
决策树(二)—— ID3和C4.5
2019-03-04
操作系统~进程的状态、转换、控制
2019-03-04
操作系统~线程概念以及多线程模型
2019-03-04
Python:函数 ----》装饰器函数
2019-03-04
Python:面向对象
2019-03-04
Python练习题 :随机生成一批数
2019-03-04
Spring源码:prepareBeanFactory(beanFactory);方法
2019-03-04
Spring源码:initApplicationEventMulticaster源码解析
2019-03-04
AcWing 786: 第k个数
2019-03-04
AcWing 828. 模拟栈
2019-03-04
添加Selinux权限
2019-03-04
ifconfig网络配置信息解析
2019-03-04
(2019.9.10测试可用)如何在Windows的cmd中使用ls命令
2019-03-04
债券中的久期是什么意思
2019-03-04
(20200328已解决)从docker容器内复制文件到宿主机
2019-03-04
理解Docker ulimit参数
2019-03-04
理解Python系统下的时间格式
2019-03-04
Python语言'类'概念再理解
2019-03-04
OpenAI Gym简介及初级实例
2019-03-04