1章 计算机系统概论2.docx
- 文档编号:26433603
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:116
- 大小:218.95KB
1章 计算机系统概论2.docx
《1章 计算机系统概论2.docx》由会员分享,可在线阅读,更多相关《1章 计算机系统概论2.docx(116页珍藏版)》请在冰豆网上搜索。
1章计算机系统概论2
1章计算机系统概论2
1.1计算机的发展与应用2
1.1.1计算机发展2
1.1.2计算机应用2
1.2计算机系统的组成3
1.2.1存储程序与冯·诺依曼计算机3
1.2.2计算机的硬件系统3
1.2.3计算机的软件系统4
1.2.4硬件和软件的逻辑等价性5
1.3计算机系统的层次结构5
1.4计算机的特点、性能指标及分类6
1.4.1计算机的工作特点6
1.4.2计算机的性能指标6
第1章计算机系统概论
本章内容为计算机组成原理课程的预备性知识。
重点:
冯•诺依曼计算机的组成,计算机的层次构,软件与硬件的逻辑等价性
1.1计算机的发展与应用
1.1计算机发展
计算机(Computer)在程序的控制下能快速、高效地自动完成信息的处理、加工、存储或传送。
世界上第一台电子数字计算机是1946年2月问世的ENIAC。
第一代计算机(1946~1957)──电子管时代。
第二代计算机(1958~1964)──晶体管时代。
第三代计算机(1965~1971)──中小规模集成电路时代。
第四代计算机(1972~)──超大规模集成电路时代。
在微型计算机的发展过程中,微处理器制造商Intel,它的产品从世界上第一个8位处理器8080(1974年问世)、准16位微处理器8080/8086(外部数据总线为8位)、16位微处理器80286(主频6MHz,1982年)、32位微处理器80386(主频12.5、33、50MHz,1985年)、80486(主频25、33、50MHz,1989年)、64位微处理器Pentium(80586).年)、PentiumIII、PentiumIV(主频1.3G、1.7G、2.0G、3.5GHz,2000年)。
2004年6月:
支持超线程(HT)技术的PentiumIV主频突破3.4GHz。
2005年4月:
英特尔推出第一款双核处理器。
几乎每三年处理器的性能就能提高4~5倍
1.2.1计算机应用
1科学技术计算
2数据信息处理:
对数据进行加工、分析、传送、存储及检测与操作都称为数据处理。
3计算机控制
4计算机辅助技术
计算机辅助技术包含计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)计算机辅助教学(CAI)等。
5人工智能
人工智能是将人脑在进行演绎推理的思维进程、规则和所采取的策略技巧等编成计算机程序,在计算机中存储一些公理和推理规则,让机器去自动探索解题的方法。
1.2计算机系统的组成
一个完整的计算机系统应包括硬件系统和软件系统。
计算机的硬件是计算机的物质基础。
软件是发挥计算机功能,使计算机能正常工作的程序。
1.存储程序与冯·诺依曼计算机
美籍匈牙利数学家冯•诺依曼(JohnVonNoeemann)于是1946年提出了“存储程序控制”的计算机结构。
冯•诺依曼计算机的基本特点:
(1)计算机内部采用二进制来表示指令和数据。
(2)将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速地从存储器中取出指令加以执行。
(3)计算机由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成。
冯•诺依曼计算机的这种工作方式,可称为指令流(控制流)驱动方式,即按照指令的执行序列,依次读取指令,根据指令所含的控制信息,调用数据进行处理。
2.计算机的硬件系统
根据冯•诺依曼计算机体系结构来设计的,故具有共同的基本配置,即具有五大部件:
输入设备、存储器、运算器、控制器和输出设备。
CPU由运算器与控制器组成,CPU和主存储器通常组装在一个主板上,合称主机。
输入设备和输出设备统称输入/输出设备,也称为外部设备或外围设备,位于主机的外部。
1.存储器
存储器的主要功能是存放程序和数据。
程序是计算机操作的依据,数据是计算和操作的对象。
它是计算机能够实现“存储程序控制”的基础。
向存储单元存入或从存储单元取出信息,都称为访问(ACESS)存储器,
2.运算器
所以运算器又称为算术逻辑运算单元(Alu-Arithmeticandlogicalunit),运算器的核心是加法器。
运算器中还有若干个通用寄存器,用来暂存操作数,并存放运算结果。
寄存器的存取速度比存储器的存取速度快得多。
3.控制器
控制器是全机的指挥中心,它使计算机各部件自动协调地工作。
控制器工作的实质就是解释程序,它每次从存储器读取一条指令,经过分析译码,产生一串操作命令,发向各个部件,控制各部件动作,使整个机器连续地、有条不紊地运行。
计算机中有两股信息在流动。
一股是控制信息,即操作命令,其发源地是控制器,它分散流向各大部件;另一股是数据信息,它受控制信息的控制,从一个部件流向另一个部件,边流动边被加工处理。
6输入设备
输入设备的任务是把人们编好的程序和原始数据送到计算机中去,并且把它们转换成计算机内部所能识别和接受的信息方式。
常用的输入设备有键盘、鼠标、扫描仪、数码相机等。
7输出设备
输出设备的任务是将计算机的处理结果以人或其他设备所能接受的形式送出计算机,输出信息的形式有字符、文字、图形、图象、声音等。
常用的输出设备有:
打印机、显示器、绘图仪等。
外存储器也是计算机中重要的外部设备,既可以作为输入设备,也可以作为输出设备。
常见的外存储器有硬盘、优盘和光盘。
3.计算机的软件系统
2.操作系统
操作系统是控制和管理计算机各种资料、自动调度用户作业程序,处理各种中断的软件。
目前比较流行的操作系统有DOS操作系统、Unix操作系统、Windows和Linux操作系统。
3.语言处理程序
语言处理程序的任务,就是将源程序翻译成目标程序。
不同语言的源程序,对应有不同的语言处理程序。
语言处理程序有汇编程序、编译程序、解释程序等三种。
3.服务支撑软件
服务支撑程序(也称工具软件)扩大了机器的功能,一般包括诊断程序、调试程序、编辑程序、链接程序等。
4.数据库管理系统
所谓数据库,就是能实现有组织地、动态地存储大量的相关数据,方便多用户访问的计算机软件、硬件资源组成的系统。
数据库和数据库管理软件一起,组成了数据库管理系统。
应用软件是用户为解决某种应用问题而编制的程序。
硬件和软件的逻辑等价性
随着大规模集成电路技术的发展和软件硬化的趋势,因为任何操作可以由软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件来完成,同样也可以由软件来完成。
当研制一台计算机的时候,确定哪些情况使用硬件,确定哪些情况使用软件,由当前的硬件发展水平来决定。
例如,在80386SX以前的微机中,浮点运算指令、双精度运算指令字符串处理指令等由编制程序来实现,而在80586以后的计算机中,这些直接改为硬件实现。
在PentiumII以后的计算机中,处理多媒体的指令可直接由硬件来实现。
将程序固定在ROM中组成的部件称为固件。
固件是一种软件特性的硬件,它既具有硬件的快速性特点,又有软件的灵活性特点。
这是软件和硬件相互转化的典型实例。
1.3计算机系统的层次结构
计算机系统存在着层次结构,即计算机系统具有层次性,它由多级层次组成。
第一级是微程序设计级。
这是一个实在的硬件级,它由机器硬件直接执行微指令。
第二级是一般机器级,也称为机器语言级,它由微程序解释机器指令系统。
这一级也是硬件级。
第三级是操作系统级。
它由操作系统程序实现,称为混合级。
操作系统由机器指令和广义指令组成。
广义指令是指操作系统定义和解释的软件指令。
第四级是汇编语言级。
一级由汇编程序支持和执行。
第五级是高级语言级。
这是面向用户的,为方便用户编写应用程序而设置的。
这一级由各种高级语言编译程序支持。
层次的划分不是绝对的。
虚拟机概念
从第三级开始向上,不同的层次结构体现出不同的功能。
高级语言级的用户,可以不了解机器的具体组成,不必熟悉指令系统,直接用所指定的语言描述所要解决的问题。
在某一层次的观察者看来,他只需要通过该层次的语言来了解和使用计算机,至于下层是如何工作和实现的就不必关心了。
这就是所谓的虚拟计算机的概念。
虚拟计算机即是由软件实现的机器。
1.4计算机的特点、性能指标及分类
1.计算机的工作特点
4.快速性
5.通用性
6.准确性
7.逻辑性
1.4.2计算机的性能指标
计算机的基本性能一般从以下几个方面来衡量:
8.基本字长
它是指参与运算的数的基本长度,用二进制数位的长短来衡量。
它决定着寄存器、加法器、数据总线等部件的位数,因而直接影响着硬件的代价。
9.主存容量
主存容量以字节为单位时,约定8位二进制代码为一个字节(Byte,缩写为B)。
习惯上将1024B表示为1kB(千字节);1024kB为1MB(兆字节);1024MB为1GB;1024GB为1TB。
10.运算速度
它是用每秒能执行的指令条数来表示,单位为:
条/秒。
.运算速度的单位一般用MIPS表示,百万条指令每秒。
4.数据通路宽度
数据总路线一次所能并行传送的位数,称为数据通路宽度。
11.主频率
每台计算机内部,均有一个不断地产生固定频率的时钟脉冲装置,称为主时钟。
主时钟的频率通常就是机器的主频率,主频率是衡量一台计算机速度的重要参数。
第2章运算方法及运算器
2.1数值信息的表示法...8
2.1.1数据的机器码表示法...8
1.真值与机器码...8
2.原码表示法...8
3.补码表示法...9
4.反码的表示法...10
5.移码表示法...10
6移位和舍去...10
2.1.2数的定点表示...11
1.定点小数...11
2.定点整数...12
2.1.3数的浮点表示法...12
1.浮点数的表示格式...12
2.浮点数的规格式...12
3.浮点数的表示举例...13
4.浮点数的表示范围...13
5.溢出问题...13
2.2非数值信息的表示法...14
2.2.1字符数据的表示...14
2.2.2汉字的表示...14
1.汉字的输入...14
2汉字在机内的表示...14
3汉字的输出与汉字字库...14
2.3数值数据的校验...14
2.3.1奇偶校验码...14
2.3.2海明校验码...15
2.4定点加减运算...16
2.4.1补码加减法运算...17
1.补码加法运算...17
2.补码的减法运算...17
3.补码的加减运算规则...17
2.4.2加减法运算的溢出处理...18
2.4.3补码定点加减运算的实现...19
2.5定点乘除运算...19
2.5.1原码—位乘法...19
1.原码—位乘法规则...19
2.原码一位乘法的逻辑实现...20
2.6定点除法运算...20
2.6.1定点原码除法...20
2.7浮点数的算术运算...22
2.7.1浮点加法和减法...22
1.对阶22
2.尾数相加...22
3.结果规格化...22
4.舍入操作...22
5.溢出判断...22
2.7.2浮点乘法运算...23
1.阶码相加...23
2.尾数相乘...23
3.结果规格化...23
2.9定点运算器的组成与结构...23
2.9.1加法器及进位系统...23
1.一位全加器...23
2.并行加法器及其进位链...23
2.9.2算术逻辑运算单元(ALU)...26
1.SN74181芯片...26
2.SN74182芯片...26
2.9.3定点运算器...27
1.运算器中的数据传送通路...27
2.运算器的基本结构...27
第2章运算方法及运算器
1、二进制编码,数制转换,定点小数和整数的原、反、补码表示
2、补码加减法的运算规则,一位乘、除法的实现的规则;
3、加法器的组成,进位传递,并行加法器、SN74181,SN—74182的功能与连线
4、定点、浮点运算器的功能与组成。
2.1数值信息的表示法
2.1.1数据的机器码表示法
1.真值与机器码
人们用正、负符号来加绝对值来表示数的大小,这种形式表示的数值称为真值。
数码化,将正、负号分别用一位数码0和1来代替。
在机器中使用的连同数符一起数码化的数称为机器数。
例如:
设机器字为8位字长,真值为(0.1001110)2对应的机器数为:
0.1001110;
真值为(–0.1001110)2对应的机器数为:
1.1001110。
机器数通常有原码、补码、反码和移码四种表示法。
2.原码表示法
原码的最高位作为符号位,用“0”表示正号,用“1”表示负号,
对于纯小数,设x=x0.x1x2…xn–1,其中x0为符号位,小数点在符号位后,不占存储位,共n位字长
则不够字长数值位后补“0”
例如,若x1=+0.1011,x2=0.1011,字长为8位,则其原码分别为:
[x1]原=0.1011000[x2]原=1+0.1011000=1.1011000其中最高位是符号位。
对于真值零,其原码两种形式:
[+0]原=0.00…00,[0]原=1.00…00
对纯整数,设x=x0x1x2…xn–1,其中x0为符号位,共n位字长,
则
不够字长时符号位后、数值位前补“0”
例如,若x1=+1011,x2=1011,字长为8位,则其原码分别为:
[x1]原=00001011[x2]原=27+0001011=10001011
对于真值零,[+0]原=000…00[0]原=100…00
原码表示法的优点是直观易懂。
机器数和真值间的相互转换很容易,用原码实现乘、除运算的规则很简单,缺点是实现加减运算的规则较复杂。
3.补码表示法
时钟表示的最大时间为12点,超过12点又返回到从0点开始,对时钟来说模为12。
假设现在的标准时间为6点钟,而有一只表已经10点了,为了校准时间,可采用两种;一是将时钟逆时钟方向拨4格(–4);一是将时钟顺时钟方向拨8格(+8)。
这两种方法都能对准到6点,由此看出,减4和加8是等价的,这是因为时钟的模为12。
+8是和–4是等效的。
写成算式:
10+8=18=6(mod12)
10–4=10+[(–4)+12]=10+8=18=6(mod12)
于是可写成如下通式:
A–B=A+[(–B)+K](modK)
从而得出一个重要的结论:
对于任何一个确定的模数K,某数(A)减去一个小于模的数(B),可用该数(A)加上负减数(–B)对模数K的补数来代替。
从上述分析可得知:
(1)“模”是指任何大于模的数值都可以将模的整数倍丢掉,而不会造成错误。
18=6(mod12)–4=8(mod12)
(2)利用模数概念可将减法运算转变为加法运算。
10–4=10+(-4+12)=10+8=6(mod12)10–2=10+(-2+10)=10+10=8(mod12)
将补码表示引入计算机,使减法运算转化为加法运算,使符号位参加运算,从而简化了加、减法的规则,从而简化了机器的运算器电路。
例如某机器字长32位,两个32位字长的数据进行某种运算后,如果结果的位数超过32位,进位就被丢失,该计算机的“模”为232。
对于纯小数,x=x0.x1x2…xn–1,共n位字长,其中x0是符号位(它是20),符号位向更高位的进位会被丢失,即以它的模为"21",于是它的补码定义为:
对于正数,补码和原码表示相同,
对于负数符号位为1,数值位按位取反,末位加1。
X=x0.x1x2x3…xn–1,|X|=0.x1x2x3…xn–1,
[X]补=2–|X|=10–|X|=1.111…1+0.00…1–0.x1x2x3…xn–1=1.11…1–0.x1x2x3…xn–1,+0.000…1=1.x1x2x3…xn–1+0.000…1,xi为1–xI
如果已知一个数的补码,求它的真值的方法是:
如果补码的符号位为0,则该数为正数,补码表示的数即为真值;如果补码的符号位为1,则该数为负数,由补码定义可得|x|=2–[x]补,即数值为按位取反末位加1。
如:
若x1=+0.1011,x2=0.1011,字长为8位,则其补码分别为:
[x1]补=0.1011000[x2]补=1.0100111+0.0000001=1.0101000。
对纯整数,设x=x0x1x2…xn–1,共n位字长,其中x0为符号位,其模为2n,它的补码定义为:
例如,x1=+1011,x2=1011,字长为8位,则其补码分别为:
[x1]补=00001011[x2]补=280001011=1000000000001011=11110101
对于真值零,其补码是唯一的,即:
[+0]补=[0]补=00…00
4.反码的表示法
对纯小数,x0.x1x2…xn–1,共n位字长,反码的定义为:
根据定义可知,对于正数来说,反码与原码的表示形式相同。
对于负数来说,符号位与原码的符号位定义相同为–1,只是将原码的数值位按位变反。
例如,x1=+0.1011,x2=0.1011,字长为8位,则其反码分别为:
[x1]反=0.1011000[x2]反=1.0100111最高位为符号位
对纯整数,共n位字长,反码的定义为:
则
用反码表示时,正零和负零的反码不是唯一的,即[+0]反=000…00,[0]反=11…11
5.移码表示法
它常以整数形式用在计算机浮点数的阶码(表示指数)中,若纯整数x为n位(包括符号位),则其移码定义为[x]移=2n–1+[x]补,2n–1≤x≤2n–1-1
求移码的规则:
将补码符号位求反,即得该数的移码。
例如,若x=+1000,设字长为8位,则其补码为[x]补=00001000,
其移码为[x]移=27+[x]补=1000000+00001000=10001000
零的移码是唯一的,即:
[+0]移=[0]移=100…00
6移位和舍去
(1)移位
通常将移位分为两大类:
逻辑移位与算术移位。
在逻辑移位中只有数码位置的变化而无数量概念的变化。
辑移位时做一串代码对待。
带符号数的算术移位。
符号不变,左移1位将使数值增大一倍(如果不发生溢出),右移1位将使数值减少一倍(如果不考虑因移出而舍去的末位尾数)。
常采用移位实现乘2或除2运算。
(2)移位规则
由于机器的字长是固定的,那么在移位过程中就会出现空位,这些空位需要补“0”还是补“1”,是由机器所用的码制来决定的。
对于正数或负数,其原码、反码、补码有不同的补位形式,所以下面分别讨论移位规则。
①正数移位规则:
当真值X为正数时,[X]原=[X]反=[X]补,所以移动后出现的空位均补“0”。
例2.1X=(+0.0110)2=(0.375)10,[X]原=0.0110
左移一位,补0,[X1]原=0.1100=21•[X]原,X1=(+0.1100)2=(+0.75)10
右移一位,补0,[X2]原=0.0011=2–1•[X]原,X2=(+0.0011)2=(+0.1875)10
例2.2Y=(+0110)2=(6)10,[Y]原=6
左移一位,补0,[Y1]原=1100=21•[Y]原,Y1=(+1100)2=(+12)10
右移一位,补0,[Y2]原=0011=2–1•[Y]原,Y2=(+0011)2=(+3)10
②负数移位规则:
当真值X为负数时,针对不同码制,对移位后出现的空位处理的方法也不同。
对于原码,无论左移还是右移,所出现的空位均补“0”;对于反码,无论左移还是右移,所出现的空位均补“1”;对于补码,左移后出现的空位补“0”,右移后出现的空位补“1”。
例2.3用定点机器数表示二进制(取7位,包括一位符号位)。
A=―0.125,用三种码制表示,并对A进行左移一位或右移一位,求移位后的机器数和真值。
解[A]=(―0.125)10=(―0.001000)2
[A]原=1.001000[A]反=1.110111[A]补=1.111000
2.1.2数的定点表示
根据小数点的位置是否固定,又可以分为定点表示和浮点表示。
其中,定点表示形式又可以分为定点小数表示形式和定点整数表示形式。
符号小数点位置(隐含)
n-1位数值位
d0d-1d-2…d-(n-1)
1.定点小数
将小数点固定在符号位d0之后,数值最高位d–1之前,这就是定点小数形式,其格式如右图所示。
若字长为n位,用原码表示时,最小负数时为1.111…1,其值为–(1–2–(n–1)),最大负数为1.000…1,其值为–2–(n–1);最小正数时为0.000…1,其值为2–(n-1),最大正数为0.111…1,其值为1–2–(n–1),所以范围为:
–(1–2–(n–1))≤x≤1–2–(n–1)。
符号位小数点位置
n-1位数值位
d0d1d2…d(n-1)
若字长为n位,用补码表示,最小负数时为1.000…0,其值为–1,最大负数为1.111…1,其值为–2–(n–1);最小正数时为0.000…1,其值为2–(n–1),最大正数为0.111…1,其值为1–2–(n–1),所以范围为:
–1≤x≤1–2–(n-1)。
2.定点整数
将小数点固定在数的最低位之后。
若字长为n位,用原码表示时,最小负数为1111…1,其值为–(2(n–1)–1),最大负数为1000…1,其值为–1,最小正数为0000…1,其值为+1,最大正数为0111…1,其值为2(n–1)–1,所以范围为:
–(2(n–1)–1)≤x≤(2(n–1)–1)。
若字长为n位,用补码表示时,最小负数为1000…0,其值为–2(n–1),最大负数为1111…1,其值为–1,最小正数为0000…1,其值为+1,最大正数为1111…1,其值为2(n–1)–1,所以范围为:
–2(n–1)≤x≤(2(n–1)–1)。
综上所述,用原码表示时,由于真值零占用了两个偏码,因此n位二进制数只能用2n–1个原码,原码表示的优点是:
数的真值与它的原码之间的对应关系简单、直观、转换容易,但用原码实现加、减运算很不方便。
在补码系统中,由于零有唯一的编码,因此n位二进制数能表示2n个补码。
采用补码表示比用原码可多表示一个数补码在机器中常用于作加、减运算。
如遇到绝对值小于最小正数,被当作机器0处理,称为“下溢”;而大于最大正数和小于绝对值最大的负数的数,统称为“溢出”,这时计算机将暂时中止运算操作去进行溢出处理。
只能处理定点数的计算机称为定点计算机。
2.1.3数的浮点表示法
浮点数。
表示N=M×RE,R:
阶的基数,R通常为2,E和M都是带符号的定点数。
E叫做阶码(Exponent),M叫做尾数(Mantissa)。
在大多数计算机中,尾数为纯小数,常用原码或补码表示,阶码为定点整数,常用移码或补码表示。
1.阶符阶码值数符尾数值
EsEm-1…E1DsD-1…D-(n-1)
浮点数的表示格
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 1章 计算机系统概论2 计算机系统 概论
![提示](https://static.bdocx.com/images/bang_tan.gif)