计算机体系结构
## 基本概念
计算机系统=硬件+软件,从计算机语言的角度,把计算机分为多层次结构,
每一层用一种语言为特征,其层次结构如下图所示。
| 第6级:应用语言虚拟机 | 虚拟机:由软件实现的机器
| 第5级:高级语言虚拟机 |
| 第4级:汇编语言虚拟机 |
| 第3级:操作系统虚拟机 | 软件
| 第2级:机器语言(传统机器级) | 硬件或固件
| 第1级:微程序机器级 |
| centered |
计算机系统结构指的是传统机器级的系统结构。它是软件和硬件的交界面,是机器语言程序设计者看到的机器物理系统的抽象。出在传统机器语言与操作系统级之间。
## 结构分类
1,冯氏分类法
用系统的最大并行度对计算机进行分类。
最大并行度指的是计算机系统在单位时间内能够处理的最大的二进制位数。
2,Flynn分类法
按照指令流和数据流的多倍性进行分类。
指令流:计算机执行的指令序列
数据流:由指令流调用的数据序列
多倍性:在系统受限的部件上,同时处于同一执行阶段的指令或数据的最大数目。
Flynn分类法把计算机系统的结构分为4类:
单指令单数据流 单指令多数据流 多指令单数据流 多指令多数据流
这四类计算机的基本结构:
IS:指令流 DS:数据流 CS:控制流
CU: 控制部件 PU:处理部件 MM,SM:存储器
计算机组成原理
计算机由软件和硬件组成,软件由系统软件和应用软件组成,硬件由运算器,控制器,存储器,输入设备,输出设备五大部件组成。
## 软件部分
系统软件负责系统的调度管理,提供系统的运行和开发环境,为方便用户的使用而编制的程序。它包括操作系统,语言处理程序,数据管理系统,各种服务性支撑软件,各种标准程序库。
应用软件是为用户解决某一特定问题而编制的程序。例如科学计算类程序,工程设计类程序,数据处理类程序,信息管理类程序。
## 硬件部分
运算器:在控制器的控制下进行各种运算。
控制器:神经中枢,控制计算机的各个部分的有序工作。
存储器:按地址存储或读取内容,存放数据,程序和运算的中间结果。
输入设备:进行数据的输入
输出设备:进行数据的输出
## 进制转换
数据在计算机中以二进制的方式存储,所以人们在生活中经常2使用的十进制需要进行转换,而由于二进制表示数据太长,所以引入了8进制和16进制,下面介绍一下转换规则,
二进制<——>十进制:
十进制——>二进制:除二取余,倒序排列
二进制——>十进制:从二进制的右边第一个数开始,每一个乘以2的n次方,n从0开始,每次递增1。然后得
出来的每个数相加即是十进制数。
二进制<——>八进制,十六进制:由三个,四个二进制数转换为二进制数,反之亦然。
## 程序编译
用javac编译器将java源代码编译成 .class文件,然后程序在运行时,JVM将需要用到的 .class文件加载到内存中,从class文件中逐行读出一条指令,JVM中解释器解释一条指令,接着执行一条指令从而达到将.class文件翻译为机器码