◆从系统程序员的观点来看,操作系统是一个在指令系统层 提供的指令和特性之上又增加了系统调用和特性的程序 包括几乎所有的指令系统层的指令和操作系统层增加的 系统调用。 ◆汇编语言层,每一种计算机都有一套自己的汇编语言、翻 译它的汇编器,以及相应的程序设计与开发方法。 ◆面向问题语言层的高级语言通常是为解决现实问题的应用 程序员使用的,如C,C++,Java,LISP和 Prolog等。用这些语 言编写的程序一般先由编译器翻译成第3层或第4层语言,偶 尔也有解释执行的
11 ◆从系统程序员的观点来看,操作系统是一个在指令系统层 提供的指令和特性之上又增加了系统调用和特性的程序。 它包括几乎所有的指令系统层的指令和操作系统层增加的 系统调用。 ◆汇编语言层,每一种计算机都有一套自己的汇编语言、翻 译它的汇编器,以及相应的程序设计与开发方法。 ◆面向问题语言层的高级语言通常是为解决现实问题的应用 程序员使用的,如C, C++, Java, LISP和Prolog等。用这些语 言编写的程序一般先由编译器翻译成第3层或第4层语言,偶 尔也有解释执行的
2.从语言功能角度划分层次结构 计算机功能可描述为“能执行用某些程序设计语言编写 的程序”,下图所示的是语言功能层次模型。 程序 专用语言虚拟机 高级语言虚拟机 编语言虚拟机 实际机器(机器语言物理机)
12 2.从语言功能角度划分层次结构 计算机功能可描述为“能执行用某些程序设计语言编写 的程序” ,下图所示的是语言功能层次模型
实际机器与虚拟机:如果将能执行机器语言的计算机硬 件称为实际机器(机器语言物理机);那么现代的计算 机系统都是在硬件基础上通过配置软件扩充功能,这样 的系统就是一台虚拟机。 例如:为了使Java程序能在不同的计算机上运行,SUN公 的虚拟体系结构。它有3位字组成的内存,能执行241 司定义了一种称为Java虚拟机WM( Java Virtual machine 指令,大多数指令都很简单,只有少量较复杂的指令
13
SUN公司提供了一个将Java语言程序编译成ava虚拟 机指令序列(又称ava执行程序)的编译器,以实现程序 的跨平台运行。同时,还实现了能解释执行Java程序的解 释器,该解释器用C语言编制,可在任何一台有C编译器 的计算机上运行。 SUN和其他一些公司还设计出可直接执行JVM程序的 CPU。这种体系结构的新芯片 pico Java-I和 picoJava-Ⅱ已 经出现在嵌入式系统市场
14 SUN公司提供了一个将Java语言程序编译成Java虚拟 机指令序列(又称Java执行程序)的编译器,以实现程序 的跨平台运行。同时,还实现了能解释执行Java程序的解 释器,该解释器用C语言编制,可在任何一台有C编译器 的计算机上运行。 SUN和其他一些公司还设计出可直接执行JVM程序的 CPU。这种体系结构的新芯片picoJava-Ⅰ和picoJava-Ⅱ已 经出现在嵌入式系统市场
3.软、硬件在逻辑上的等价 计算机许多功能既可以直接由硬件实现,也可以在硬件支 持下靠软件实现,称为软、硬件在功能上的逻辑等价。如 乘法运算,可由硬件乘法器实现,也可在加法器与移位器 支持下由乘法子程序实现。 指令系统是硬件与软件之间的界面。指令系统所规定的功 能一般由硬件实现。 软件硬化 系统设计者必须确定软、硬件之间的界面,即哪些功能由 硬件实现,哪些由软件实现
15