欢迎来到天天文库
浏览记录
ID:20425753
大小:424.50 KB
页数:51页
时间:2018-10-13
《第二章 机器体系机构对语言的影响》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章机器体系机构对语言的影响[学习目标]:了解程序语言的基本特征;掌握虚拟计算机和绑定时间。学习程序设计语言的基本特征;了解计算机的硬件结构;掌握虚拟计算的基本概念和虚拟计算机的层次;掌握编译与解释的基本概念及各自特点;掌握绑定时间的基本概念及其与语言实现关系;[重点和难点]:本章的重点是:虚拟计算机的基本概念;绑定时间的基本概念;编译与解释的基本概念以及各自的特点。本章的难点是:绑定时间的基本概念机器与语言实现的关系;[知识点]:计算机的硬件结构;固件计算机;翻译;编译;解释;虚拟计算机;绑定时间;概述早期程序
2、设计语言的设计目标是:使程序能够在价格昂贵的硬件机器上高效运行。因此,尽管当时使用的语言(如fortran)编程很困难,但它们都拥有高效的转换机制将源程序转换为机器代码。但如今,计算机的性能价格比不断提高,软件的体系结构发生了重大变化,软件的成本越来越变得昂贵,因此现在程序设计强调程序设计的正确性、可读性和可维护性。可见软件的体系结构对语言的设计也起到重要的作用,主要表现在两个方面:程序将在那种计算机上运行;实际的硬件所支持的程序执行模型或虚拟机。2.1计算机的操作2.2虚拟计算机和绑定时间第2章机器体系机构对语言
3、的影响2.1计算机的操作一台计算机是一个可以执行算法和存储数据的有机整体。一台计算机*包含六个主要组成部分,并与程序设计语言组成部分紧密对应,它们分别是:数据:计算机提供的基本数据元素和数据结构。基本操作:计算机对数据实施的基本动作。顺序控制:控制操作执行顺序的机制。数据存取:对每次操作执行所需数据的存取控制机制。存储机制:计算机提供的存储分配机制。操作环境:支持程序和外部环境通信的机制。注:这六个部分也是设计程序语言的六个基本特征。*:此处所讲得的计算机可以是物理硬件设备,也可以是通过软件模拟的计算机。本节主要内
4、容计算机的硬件结构固件计算机翻译器和软件模拟计算机计算机的硬件结构数据数据在程序执行过程中需要存储,从图可见,主要有四个存储部件:主存(MM)高速缓存(Cache),高速寄存器(R)和外部辅助存储器(SM)。这些存储部件的性能不同,存储数据的特点有异。计算机由一些内部数据类型可被硬件直接操作,包括正型数据、单精度实数、固定长度字符串和位串。其实,程序在某种意义上也是一种数据,其计算机的内部表示方法是机器语言。操作每台计算机都有一个内部基本操作集与机器语言指令相对应。一个典型的操作集包括与内部数据类型相关的基本算术指
5、令(即整数和实数的加、减、乘、除法指令),测试指令(如判断0,判断正、负数的指令),数据存取操作指令、控制I/O指令以及执行顺序控制指令等。顺序控制在机器语言程序中,下一条要执行的指令通常由程序地址寄存器(AR)的内容确定,为了将控制转移到程序某处,必须提供修改AR内容的基本操作。而最终控制程序执行顺序的是解释器。解释器是计算机操作的核心。如图所示。数据存取一般,一条机器指令的格式是:操作码+操作数域,如ADDAX,[8012H].一般操作数存储在寄存器R或主存储MM中。计算机必须提供一个指定和获取操作数的机制。同
6、样,处理(计算)的结果也必须存储在某个地址单元中。存储管理主存MM、辅助存储器SM与CPU的速率相差很大。如CPU每次操作的时间一般是纳秒(ns)级,MM的存取速率是微秒(us)级,而SM的存取速率是毫秒(ms)级,为了对速率进行平衡,需要采用不同的存取管理机制。为了平衡CPU与SM之间的速率矛盾,OS通常使用多道程序设计技术。为了平衡CPU与MM之间的速率矛盾,通常使用高速缓存cache。操作环境计算机的操作环境包括外围存储器和I/O设备。这些外部设备构成了计算机的外部世界,任何同计算机的通信必须通过操作环境进行
7、。不同的外部操作设备具有不同的通信速率,如高速存储器(扩充存储器),中速存储器(CD-ROM),低速存储器(磁带),I/O设备(键盘、显示器、打印机、数据通信线路等),因此,程序设计语言必须提供不同的通信机制。返回本节固件计算机前面,我们将计算机定义为能够存储和执行程序的数据结构和算法的集合,计算机内执行的程序是以机器语言编写的。我们一般认为机器语言是低级语言,然而,实际上,任何一种语言(如C,java)都可以作为机器语言,只要精确的定义其算法和数据结构。即任何一台精确定义的计算机都可以完全使用硬件或软件来实现。理
8、论和逻辑上,硬件和软件具有统一性,即硬件上能够实现的使用软件肯定也能实现,反之亦然。但现实中由于成本及其他实现技术问题。很少采用纯硬件和纯软件实现。固件计算机是一个相对较为严格的硬件实现方式。即在一台可进行微编程的硬件计算机上通过微程序模拟实现。该计算机的机器语言包括一个低级微指令集,它们规定了MM和cache间、各R间通过加法器或乘法器的数据传送。微程序在
此文档下载收益归作者所有