《最新微机原理第1章微型计算机系统基本组成原理ppt课件.ppt》由会员分享,可在线阅读,更多相关《最新微机原理第1章微型计算机系统基本组成原理ppt课件.ppt(87页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、微机原理第微机原理第1章微型计算机系统章微型计算机系统基本组成原理基本组成原理2011课程在计算机课程体系中的位置课程在计算机课程体系中的位置硬件类硬件类硬件类硬件类软件类软件类软件类软件类CPU及整机设计及整机设计(计算机组成原理)(计算机组成原理)(计算机组成原理)(计算机组成原理)BIOSBIOS与接口驱动程序设计与接口驱动程序设计与接口驱动程序设计与接口驱动程序设计模拟电路、数字逻辑电路设计模拟电路、数字逻辑电路设计模拟电路、数字逻辑电路设计模拟电路、数字逻辑电路设计嵌入式嵌入式嵌入式嵌入式/单片机系统单片机系统单片机系统单片机系统SOC芯片设计芯片设计计计计计算算算算机机机机系系系系
2、统统统统结结结结构构构构外围接口电路设计外围接口电路设计外围接口电路设计外围接口电路设计操作系统操作系统操作系统操作系统编译系统编译系统编译系统编译系统数据库数据库数据库数据库数数数数据据据据结结结结构构构构C+C+JAVAJAVA离离离离散散散散数数数数学学学学计计计计算算算算机机机机系系系系统统统统综综综综合合合合设设设设计计计计电子商务电子商务电子商务电子商务多媒体技术多媒体技术多媒体技术多媒体技术算算算算法法法法设设设设计计计计、数数数数值值值值分分分分析析析析、信信信信号号号号与与与与系系系系统统统统、计计计计算算算算机机机机理理理理论论论论课课课课程程程程、数数数数学学学学基基基基
3、础础础础课课课课程程程程汇编语言汇编语言汇编语言汇编语言软软软软件件件件工工工工程程程程VBVB1-2第一章重点第一章重点n微机系统的三个层次和主要性能指标;微机系统的三个层次和主要性能指标;n三总线结构和各大组成部分的功能;三总线结构和各大组成部分的功能;nMPU的主要硬件组成及各部分功能;的主要硬件组成及各部分功能;n指令和指令执行过程;指令和指令执行过程;n计算机工作过程的实质;计算机工作过程的实质;n现代主流微机系统的主板结构。现代主流微机系统的主板结构。1-9第二章重点第二章重点nIntel系列微处理器的演变历史;系列微处理器的演变历史;nPentium的内部基本寄存器功能及应用;的
4、内部基本寄存器功能及应用;n操作数寻址方式;操作数寻址方式;n通用整数指令。通用整数指令。1-10第三章重点第三章重点n汇编语言程序结构;汇编语言程序结构;n基本结构程序和子程序设计方法;基本结构程序和子程序设计方法;1-11第五章重点第五章重点n各类存储器芯片的接口特性和选用原则;各类存储器芯片的接口特性和选用原则;n由存储芯片构成存储系统时,位数、字数的扩由存储芯片构成存储系统时,位数、字数的扩展和片选控制方法。展和片选控制方法。1-12第六章重点第六章重点n接口的基本功能和基本结构;接口的基本功能和基本结构;n两种两种I/O编址方式的特点和优缺点;编址方式的特点和优缺点;n几种几种I/O
5、同步控制方式的特点和优缺点。同步控制方式的特点和优缺点。1-13第七章重点第七章重点n中断的响应条件和中断处理过程;中断的响应条件和中断处理过程;n两种多中断源服务判决方法的原理、特点及其带两种多中断源服务判决方法的原理、特点及其带来的优缺点来的优缺点;n8259内部寄存器的读内部寄存器的读/写控制方法,命令字格式写控制方法,命令字格式和编程;和编程;n用户中断入口地址的设置;用户中断入口地址的设置;n计数器用作计数和定时的原理;计数器用作计数和定时的原理;n8254的工作方式及初始化编程;的工作方式及初始化编程;n并行接口和串行接口的异同;并行接口和串行接口的异同;n8255的三种工作方式及
6、编程使用。的三种工作方式及编程使用。1-14课程考核要求课程考核要求n考试成绩(课堂教学内容)考试成绩(课堂教学内容)50n实验成绩(实验出勤、实验报告完成及操作实验成绩(实验出勤、实验报告完成及操作情况)情况)30n平时成绩(作业等学习情况)平时成绩(作业等学习情况)20总成绩考试成绩实验成绩平时成绩总成绩考试成绩实验成绩平时成绩1-15重点:重点:1.微机系统的三个层次和主要性能指标;微机系统的三个层次和主要性能指标;2.三总线结构和各大组成部分的功能;三总线结构和各大组成部分的功能;3.MPU的主要硬件组成及各部分功能;的主要硬件组成及各部分功能;4.指令和指令执行过程;指令和指令执行过
7、程;5.计算机工作过程的实质;计算机工作过程的实质;6.现代主流微机系统的主板结构。现代主流微机系统的主板结构。第一章第一章 微型计算机系统基本组成原理微型计算机系统基本组成原理 1-161.1 1.1 微型计算机系统组成结构微型计算机系统组成结构1.2 1.2 微型计算机的运算基础微型计算机的运算基础1.3 1.3 微型计算机基本工作原理微型计算机基本工作原理1.4 1.4 目前主流微机系统的硬件配置与主板结构目前主流微机系统的硬件配置与主板结构1.5 1.5 微机系统的主要性能指标微机系统的主要性能指标第一章第一章 微型计算机系统基本组成原理微型计算机系统基本组成原理 1-171.1.1
8、1.1.1 总的系统结构总的系统结构1.1.2 1.1.2 各大组成部分概述各大组成部分概述1.1 1.1 微型计算机系统组成结构微型计算机系统组成结构 1-18硬件上由运算器、控制器、存储器、输入设备和输硬件上由运算器、控制器、存储器、输入设备和输出设备五大部分组成;出设备五大部分组成;数据和程序以二进制代码的形式不加区别地存放在数据和程序以二进制代码的形式不加区别地存放在存储器中,存放位置由地址指定,地址码也为二进存储器中,存放位置由地址指定,地址码也为二进制形式;制形式;控制器按指令流驱动的原理工作。控制器按指令流驱动的原理工作。目前各种微机系统采用的基本上是计算机的经典结目前各种微机系
9、统采用的基本上是计算机的经典结构构冯冯诺依曼结构诺依曼结构。结构特点是:。结构特点是:1.1.1 1.1.1 总的系统结构总的系统结构1-191.1.三总线结构三总线结构1.1.1 1.1.1 总的系统结构总的系统结构微微型型计计算算机机系系统统硬件硬件软件软件运算器运算器控制器控制器存储器存储器输入输入/输出设备输出设备 系统软件系统软件 应用软件应用软件各部分间通过三条各部分间通过三条总线相连,故这种总线相连,故这种系统结构也称为系统结构也称为三三总线结构。总线结构。1-20MPURAM外设外设ABDBCBROMI/O接口接口三总线三总线 模块间的模块间的双向依赖关系双向依赖关系变为各模块
10、变为各模块面向总线面向总线的单向依赖关系的单向依赖关系,简化了微机的结构。使微机系,简化了微机的结构。使微机系统易于扩充和维护。统易于扩充和维护。微型计算机三总线结构示意图微型计算机三总线结构示意图:1.1.1 1.1.1 总的系统结构总的系统结构1-21 单总线结构单总线结构 双总线结构双总线结构 多层总线结构多层总线结构2.2.总线结构分类总线结构分类 根据总线组织方法的不同,总线结构可分根据总线组织方法的不同,总线结构可分为以下三类:为以下三类:1.1.1 1.1.1 总的系统结构总的系统结构1-22单总线结构示意图单总线结构示意图:特点:特点:MPUMPU对对M M和和I/OI/O的读
11、写只能分时进行。的读写只能分时进行。优点:逻辑结构简单,成本低,实现容易。优点:逻辑结构简单,成本低,实现容易。单总线单总线 结结 构构 双总线双总线 结结 构构 多层总多层总 线结构线结构I/O接口接口外外设设MMPU1.1.1 1.1.1 总的系统结构总的系统结构1-23特点:特点:MPUMPU可分别在两套总线上同时与可分别在两套总线上同时与M M和和I/OI/O口交换信息。口交换信息。优点:展宽了总线带宽,提高了数据传优点:展宽了总线带宽,提高了数据传输速率。输速率。单总线单总线 结结 构构 双总线双总线 结结 构构 多层总多层总 线结构线结构双总线结构示意图双总线结构示意图:1.1.1
12、 1.1.1 总的系统结构总的系统结构存储总线存储总线I/OI/O总线总线I/O接口接口M外外设设MPU1-24DMA控制器控制器全局总线全局总线全全局局M全全局局I/OMPU总线控总线控制逻辑制逻辑局部局部I/O局部局部M缓冲器缓冲器局局部部总总线线 单总线单总线 结结 构构 双总线双总线 结结 构构 多层总多层总 线结构线结构(以双层以双层 为例)为例)多层总线结构示意图多层总线结构示意图(以双层为例以双层为例):):真正实现了多层总线上的并行工作。真正实现了多层总线上的并行工作。这对等效总线带宽的增加,系统数据处理这对等效总线带宽的增加,系统数据处理和数据传输效率的提高,效果更明显。和数
13、据传输效率的提高,效果更明显。1.1.1 1.1.1 总的系统结构总的系统结构1-25微处理器(微处理器(MPU)MPU)存储器存储器I/OI/O设备及接口设备及接口 微机系统由硬件和软件两大部分组成的,在微机系统由硬件和软件两大部分组成的,在硬件上主要由以下几部分组成:硬件上主要由以下几部分组成:1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-26-微型计算机的运算和指挥控制中心微型计算机的运算和指挥控制中心 不同型号微机性能的差别首先在于其微处理不同型号微机性能的差别首先在于其微处理器性能的不同,而微处理器的性能又与它的内部器性能的不同,而微处理器的性能又与它的内部结构、硬件
14、配置有关。每种微处理器有其特有的结构、硬件配置有关。每种微处理器有其特有的指令系统,但无论哪种微处理器,其指令系统,但无论哪种微处理器,其内部基本结内部基本结构总是相同的,都有控制器、运算器和内部总线构总是相同的,都有控制器、运算器和内部总线及缓冲器三大部分及缓冲器三大部分,每部分又各由一些基本部件,每部分又各由一些基本部件组成。组成。1.1.微处理器微处理器1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-27指令寄存(指令寄存(IR)指令译码(指令译码(ID)操作控(操作控(OC)累加(累加(ACC)累加锁存器累加锁存器暂存器暂存器 算算 术术 逻逻 辑辑 单单 元元(A LU
15、)标志寄存器(标志寄存器(FR)地址总线(地址总线(AB)地址缓冲器地址缓冲器控制总线(控制总线(CB)寄寄 存存 器器 组组(RS)堆栈指针(堆栈指针(SP)程序计数(程序计数(PC)通用寄存器组通用寄存器组内部总线及缓冲器内部总线及缓冲器数据总线(数据总线(DB)数据缓冲器数据缓冲器运算器运算器控制器控制器微处理器典型结构示意图微处理器典型结构示意图1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-282.2.存储器(内存或主存)存储器(内存或主存)内存由一个个内存单元组成,每内存由一个个内存单元组成,每个单元中一般存放一个字节个单元中一般存放一个字节(8(8位位)的二进制信息
16、。内存单元的总数的二进制信息。内存单元的总数目叫内存容量。目叫内存容量。内存中存放的数据和程序形式上内存中存放的数据和程序形式上都是二进制数。都是二进制数。微机通过给每个内存单元规定不微机通过给每个内存单元规定不同的地址来管理内存。同的地址来管理内存。微机的存储记忆部件,用以存放数据和程序。微机的存储记忆部件,用以存放数据和程序。内存单元的地址和内容内存单元的地址和内容1011001001111110000011001100011101110010内容内容地址地址00000H00002HF0000H00001HFFFFFH内存示意图内存示意图1.1.2 1.1.2 各大组成部分概述各大组成部分
17、概述 1-29CPUCPU对内存的操作有读、写两种。对内存的操作有读、写两种。内存操作内存操作1011001001111110000011001100011101110010内容内容地址地址00000H00002HF0000H00001HFFFFFH内存示意图内存示意图 将将内内存存单单元元的的内内容容取取入入CPUCPU内内部部,不不改改变被读单元的内容。变被读单元的内容。CPUCPU将将其其内内部部信信息息传传送送到到内内存存单单元元保保存存下下来来,从从而而改改变变被被写写单单元的内容。元的内容。读操作读操作写操作写操作1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-30随
18、机存取存储器随机存取存储器(RAM)RAM)只读存储器只读存储器(ROM)ROM)内存分类内存分类按工作方式的不同,内存分为两大类:按工作方式的不同,内存分为两大类:特点特点 可被可被CPUCPU随机的读随机的读和写和写,断电后所有信息断电后所有信息会消失。会消失。特点特点 只只能能被被CPUCPU随随机机读读取取,不不能能任任意意写写入入。断断电电后后信信息不会丢失。息不会丢失。1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-313.3.I/OI/O设备及接口设备及接口 微微机机通通过过I/OI/O设设备备与与外外部部交交换换信信息息,但但两两者者处处理理的的信信息息从从数数据
19、据格格式式到到逻逻辑辑时时序序一一般般不不能能直直接接兼兼容容,必必须须在在两两者者之之间间引引入入连连接接电电路路,即即I/OI/O接口电路。接口电路。1.1.2 1.1.2 各大组成部分概述各大组成部分概述 1-321.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1.2.3 1.2.3 计算机中无符号数的运算计算机中无符号数的运算1.2.4 1.2.4 计算机中的乘除法运算计算机中的乘除法运算 1.2 1.2 微机的运算基础微机的运算基础1-331.1.机器数和真值机器数和真值2.2.有符号数的机器数表示方
20、法有符号数的机器数表示方法3.3.数的定点和浮点表示数的定点和浮点表示4.4.无符号数的机器数表示方法无符号数的机器数表示方法1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-34 在计算机中使用的、连同符号位一起数字化了的在计算机中使用的、连同符号位一起数字化了的 数,称为机器数。数,称为机器数。通常用一个数的最高位作为符通常用一个数的最高位作为符 号位:号位:0 0表示正数,表示正数,1 1表示负数。表示负数。10110101101101010010101000101010例例1.11.1:机器数机器数真值(十进制)真值(十进制)-53+42 机器数所表示的真实值则叫真值
21、。机器数所表示的真实值则叫真值。1.1.机器数和真值机器数和真值1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-35常用的表示方法有三种常用的表示方法有三种:(1)(1)原原 码码(2)(2)反反 码码(3)(3)补补 码码2.2.有符号数的机器数表示方法有符号数的机器数表示方法1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-36 原码的最高位表示符号,数值位用二进制原码的最高位表示符号,数值位用二进制绝对值表示。绝对值表示。设机器数位长为设机器数位长为n n,则数则数X X的原码定义为:的原码定义为:n n位原码表示数值的范围位原码表示数值的范围:-(
22、2-(2n-1n-1-1)+(+(2 2n-1n-1-1)+0+0原原=0000=0000-0-0原原=1000=1000 XX原原=X=0XX=0X1 1X X2 2XXn-1n-1(X0)(X0)2 2n-1n-1+X=1X+X=1X1 1X X2 2XXn-1n-1(X0(X0)数数0 0的原码有两种不同的形式的原码有两种不同的形式:(1)(1)原码原码(2)(2)反码反码(3)(3)补码补码 原码的定义:原码的定义:原码表示简单、直观原码表示简单、直观,与真值间转换方便与真值间转换方便,但但用它作加减运算不方便用它作加减运算不方便,且且0 0有两种表示方法。有两种表示方法。1.2.1
23、1.2.1 计算机中数的表示方法计算机中数的表示方法1-37 正数的反码表示与原码相同正数的反码表示与原码相同;负数的反码是将负数的反码是将其原码除符位外各位取反得到。即:其原码除符位外各位取反得到。即:n n位反码表示数值的范围位反码表示数值的范围:-(2-(2n-1n-1-1)+(2+(2n-1n-1-1)数数0 0的反码也有两种形式的反码也有两种形式:+0+0反反=0000(=0000(全全0)0)-0-0反反=1111(=1111(全全1)1)反码还原为真值的方法反码还原为真值的方法:反码反码原码原码真值,真值,而而 XX原原=XX反反 反反 XX反反=0X1X2Xn-1=X (X0)
24、1X1X2Xn-1=(2(2n-1)-X (X0)-1)-X (X0)(1)(1)原码原码(2)(2)反码反码(3)(3)补码补码 反码的定义反码的定义1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-38 -正数的补码表示与原码相同正数的补码表示与原码相同;负数的补码是负数的补码是将其原码除符号位外各位取反加将其原码除符号位外各位取反加1 1而得到。即:而得到。即:n n位补码表示数值的范围位补码表示数值的范围:-2-2n-1n-1+(2+(2n-1n-1-1)-1)数数0 0的补码只有一个的补码只有一个:+0+0补补=-0=-0补补=0000(=0000(全全0)0)补码
25、还原为真值的方法补码还原为真值的方法:补码补码原码原码真值,而真值,而 XX原原=XX补补 补补 XX补补=0 0X X1 1X X2 2XXn-1n-1=X (X0)=X (X0)1X1X2Xn-1+1=2=2n-X=2-X=2n+X (X0)+X (X0)(1)(1)原码原码(2)(2)反码反码(3)(3)补码补码 补码的定义:补码的定义:1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-39(1)(1)原码原码(2)(2)反码反码(3)(3)补码补码结论结论:原原码码、反反码码、补补码码的的最最高高位位都都是是表表示示符符号号位位。符符号号位位为为0 0时时,表表示示真
26、真值值为为正正数数,其其余余位位都都为为真真值值。符符号号位位为为1 1时时,表表示示真真值值为为负负数数,其其余余位除原码外不再是真值。位除原码外不再是真值。对对于于正正数数,三三种种编编码码都都一一样样;对对于于负负数数,三三种种编编码码互互不不相相同同。所所以以原原码码、反反码码、补补码码本本质质上上是是用用来来解解决决负负数数在在机机器器中中表表示示的的三三种种不不同同的编码方法。的编码方法。二二进进制制位位数数相相同同的的原原码码、反反码码、补补码码所所能能表表示的数值范围不完全相同。示的数值范围不完全相同。1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-40 计
27、计算算机机中中不不用用某某个个二二进进制制位位来来表表示示小小数数点点,而而是是隐隐含含规定小数点的位置。规定小数点的位置。根根据据小小数数点点的的位位置置是是否否固固定定,数数的的表表示示方方法法可可分分为为定定点表示点表示和和浮点表示浮点表示,相应的机器数就叫,相应的机器数就叫定点数定点数或或浮点数浮点数。对于任一个二进制数对于任一个二进制数X X,通常可表示成:通常可表示成:X=2J S其中,其中,S S为数为数X X的尾数,的尾数,J J为数为数X X的阶码,的阶码,2 2为阶码的底。为阶码的底。尾尾数数S S表表示示数数X X的的全全部部有有效效数数字字,阶阶码码J J则则指指出出了
28、了小小数数点点的的位位置置。S S值值和和J J值值均均可可正正可可负负。当当J J固固定定时时,表表示示是是定定点点数数;当当J J值可变时,表示是浮点数。值可变时,表示是浮点数。3.3.数的定点和浮点表示数的定点和浮点表示1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-41 根据小数点固定的位置不同。定点数有定点根据小数点固定的位置不同。定点数有定点(纯)整数纯)整数和定点(纯)小数两种。和定点(纯)小数两种。J=0,SJ=0,S为纯整数时为纯整数时,小数小数点固定在数的最低位之后。点固定在数的最低位之后。符号位符号位定点整数定点整数数值位数值位(尾数尾数S)S)隐含小
29、数点位置隐含小数点位置 定点整数定点整数 J=0,SJ=0,S为纯小数时为纯小数时,小数小数点固定在数的最高位之前。点固定在数的最高位之前。符号位符号位数值位数值位(尾数尾数S)S)隐含小数点位置隐含小数点位置定点小数定点小数 定点小数定点小数 定点整数和定点小数在计算机中表示形式没什么区定点整数和定点小数在计算机中表示形式没什么区别,其小数点完全靠事先的约定而隐含在不同位置。别,其小数点完全靠事先的约定而隐含在不同位置。(1)(1)定点数定点数1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-42 其中:阶码一般用补码定点整数表示,尾数一般用其中:阶码一般用补码定点整数表示
30、,尾数一般用补码或原码定点小数表示。补码或原码定点小数表示。为保证不损失有效数字,一般对尾数进行为保证不损失有效数字,一般对尾数进行规格化处规格化处理理,即保证尾数的最高位是,即保证尾数的最高位是1,1,实际大小通过阶码来进行实际大小通过阶码来进行调整。调整。尾数部分尾数部分阶符阶符Jf Jf 阶码阶码J J 数符数符Sf Sf 尾数尾数(也叫有效数也叫有效数)S S阶码部分阶码部分(2)(2)浮点数浮点数浮点数一般由浮点数一般由4 4个字段组成个字段组成,一般格式如下一般格式如下:1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-438 8位补码定点整数位补码定点整数242
31、4位补码定点小数位补码定点小数 阶符阶符 阶阶 码码 数数 符符 尾尾 数数 31 30 24 23 22 031 30 24 23 22 0 已知某数已知某数X X的机器码为的机器码为:“00001001101111110101000000000000”“00001001101111110101000000000000”求其真值。求其真值。解:解:X=(1.01111110101000000000000)X=(1.01111110101000000000000)补补22(0000100100001001)补)补 =(1.10000001011000000000000)=(1.10000001
32、011000000000000)原原229 9 =-0.100000010112 =-0.1000000101129 9 =(-100000010.11)=(-100000010.11)2 2 =(-258.75)(-258.75)1010例例1.21.2 某计算机用某计算机用3232位表示一个浮点数,格式如下:位表示一个浮点数,格式如下:1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-441)1)位数不等的二进制码位数不等的二进制码2)2)BCDBCD码码3)3)ASCIIASCII码:码:与非压缩与非压缩BCDBCD码相似,低码相似,低4 4位完全相位完全相同,高同,高
33、4 4位为位为00110011 ASCII ASCII码一般在计算机的输入、输出设备中使用,码一般在计算机的输入、输出设备中使用,而二进制码和而二进制码和BCDBCD码则在运算处理过程中使用。码则在运算处理过程中使用。三三种种表表示示方方法法 非压缩非压缩BCDBCD码:码:压缩压缩BCDBCD码:码:每位每位BCDBCD码用码用4 4位二进制表示,位二进制表示,一个字节表示一个字节表示2 2位位BCDBCD码。码。每位每位BCDBCD码用一个字节表码用一个字节表示,高示,高4 4位总是位总是00000000,低,低4 4位表示位表示0 09 9。4.4.无符号数的机器数表示方法无符号数的机器
34、数表示方法1.2.1 1.2.1 计算机中数的表示方法计算机中数的表示方法1-451.1.补码的加减法运算规则补码的加减法运算规则 2.2.溢出与溢出判断溢出与溢出判断 1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-46加减法运算加减法运算:X X YY补补=XX补补+YY补补求补运算求补运算:-Y-Y补补=0-=0-YY补补 =YY补补连同符号位取反加连同符号位取反加1 11.1.补码的运算规则补码的运算规则1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-47例例1.3 1.3 X=33 X=33,Y=45Y=45,求求X+YX+Y、X-YX
35、-Y。解解:XX补补=00100001=00100001 YY补补=00101101,-=00101101,-YY补补=11010011=11010011 X+YX+Y补补=XX补补+YY补补=01001110=01001110 X-YX-Y补补=XX补补+-+-YY补补=11110100=11110100所以所以,X+Y=X+YX+Y=X+Y补补 补补=01001110=(+78)=01001110=(+78)1010 X-Y=X-YX-Y=X-Y补补 补补=10001100=(-12)=10001100=(-12)10101.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算
36、1-48负数的补码与对应正数的补码之间的转换可用负数的补码与对应正数的补码之间的转换可用同一方法同一方法-求补运算实现,因而可简化硬件;求补运算实现,因而可简化硬件;可将减法变为加法运算,从而省去减法器;可将减法变为加法运算,从而省去减法器;有符号数和无符号数的加法运算可用同一加法有符号数和无符号数的加法运算可用同一加法器电路完成,结果都正确。器电路完成,结果都正确。用补码表示计算机中有符号数的优点:用补码表示计算机中有符号数的优点:1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-492.2.溢出与溢出判断溢出与溢出判断 当结果超出补码表示的数值范围时,补码运算将会当结
37、果超出补码表示的数值范围时,补码运算将会出错。这种现象称为出错。这种现象称为“溢出溢出”。计算机运算时要避免产生溢出计算机运算时要避免产生溢出,万一出现了溢出万一出现了溢出,要要能判断,并做出相应处理。能判断,并做出相应处理。溢出的概念溢出的概念1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-50微机中多采用微机中多采用“双进位位双进位位”法进行溢出判断。法进行溢出判断。数值位数值位累加器累加器A(A(内装补码内装补码)f fb bn-1n-1b bn-2 n-2 b b1 1 b b0 0=1=1OFOFC1C1C2C2进位位进位位C C1 1,有溢出,有溢出0 0,
38、无溢出,无溢出OF=C1C2=OF=C1C2=溢出的判别溢出的判别1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-51因为因为C C2 2=1,C=1,C1 1=0,OF=C=0,OF=C1 1CC2 2=1,=1,所以有溢出所以有溢出,结果不对。结果不对。因为因为C C2 2=0,C=0,C1 1=0,OF=C=0,OF=C1 1CC2 2=0,=0,所以无溢出所以无溢出,结果正确。结果正确。例例1.41.4 求求:55+66:55+66 55 55补补=00110111=00110111+66+66补补=01000010=0100001001111001=12101
39、111001=121补补例例1.51.5 求:求:(-93)+(-59)(-93)+(-59)-93 -93补补=10100011=10100011+-59+-59补补=11000101=110001011 101101000=+10401101000=+104补补0 01 1根据根据C C1 1、C C2 2值亦可判断有溢出时是正溢出还是负溢出:值亦可判断有溢出时是正溢出还是负溢出:C C2 2C C1 1=00=11=00=11时,无溢出;时,无溢出;C C2 2C C1 1=01=01时,为正溢出;时,为正溢出;C C2 2C C1 1=10=10时,为负溢出。时,为负溢出。1.2.2
40、1.2.2 计算机中有符号数的运算计算机中有符号数的运算1-521.2.3 1.2.3 计算机中无符号数的运算计算机中无符号数的运算1.2.2 1.2.2 计算机中有符号数的运算计算机中有符号数的运算 微机中无论有符号数还是无符号数的加减法运算微机中无论有符号数还是无符号数的加减法运算,都都是在加法器电路中完成的。是在加法器电路中完成的。无符号数运算时无符号数运算时,只有数据用二进制表示时,运算结只有数据用二进制表示时,运算结果才是正确的;果才是正确的;若数据用若数据用BCDBCD码表示,则需要对运算结果码表示,则需要对运算结果进行调整,使之符合十进制运算的进位进行调整,使之符合十进制运算的进
41、位/借位规则;若数借位规则;若数据用据用ASCIIASCII码表示码表示,则必须把它们变换成二进制码或则必须把它们变换成二进制码或BCDBCD码码后才便于运算。后才便于运算。1-53 1)1)十进制加法调整规则十进制加法调整规则 若两个一位若两个一位BCDBCD数相加结果大于数相加结果大于9(1001),9(1001),则应作则应作6(0110)6(0110)修正修正;若两个若两个BCDBCD数相加结果在本位并不大于数相加结果在本位并不大于9,9,但产生了进位但产生了进位,这相当于十进制数运算大于等于这相当于十进制数运算大于等于1616,所以也应在本位作,所以也应在本位作 加加6 6修正。修正
42、。十进制调整的规则如下:十进制调整的规则如下:2)2)十进制减法调整规则十进制减法调整规则 两两个个BCDBCD数数相相减减,若若出出现现本本位位差差超超过过9 9,或或虽虽不不超超过过9 9但但向向高高位位有有借借位位,则则说说明明必必然然是是借借了了1616,多多借借了了6 6,应应在在本位作减本位作减6 6修正。修正。实实际际中中,现现代代计计算算机机中中均均有有专专门门的的十十进进制制调调整整指指令令,利用它们,机器可按规则自动进行调整。利用它们,机器可按规则自动进行调整。1.2.3 1.2.3 计算机中无符号数的运算计算机中无符号数的运算1-541.2.4 1.2.4 计算机中的乘除
43、法运算计算机中的乘除法运算 1.1.基于加减法电路和移位寄存器实现基于加减法电路和移位寄存器实现 这种方法,运算器中不设乘除法运算电路,只设加减这种方法,运算器中不设乘除法运算电路,只设加减法电路。需要进行乘除法运算时,主要利用加减法运算指法电路。需要进行乘除法运算时,主要利用加减法运算指令和移位指令,按照某种算法通过编程来实现。令和移位指令,按照某种算法通过编程来实现。2 2基于乘除法电路实现基于乘除法电路实现 这种方法,运算器中除设置有加减法电路外,还设有这种方法,运算器中除设置有加减法电路外,还设有乘除法电路。需要进行乘除法运算时,直接用乘除法指令乘除法电路。需要进行乘除法运算时,直接用
44、乘除法指令编程实现。编程实现。1-551.3.1 1.3.1 计算机工作过程的实质计算机工作过程的实质1.3.2 1.3.2 指令与程序的概念指令与程序的概念1.3.3 1.3.3 指令与程序的执行过程指令与程序的执行过程1.3 1.3 微型计算机基本工作原理微型计算机基本工作原理1-561.3.1 1.3.1 计算机工作过程的实质计算机工作过程的实质 计算机工作的过程实质上就是以计算机硬计算机工作的过程实质上就是以计算机硬件为基础执行程序的过程。而程序是由若干条件为基础执行程序的过程。而程序是由若干条指令组成的,微机逐条执行程序中的每条指令,指令组成的,微机逐条执行程序中的每条指令,即可完成
45、一个程序的执行,从而完成一项特定即可完成一个程序的执行,从而完成一项特定的工作。的工作。因此了解微机工作原理的关键,就是要了因此了解微机工作原理的关键,就是要了解指令和指令执行的基本过程。解指令和指令执行的基本过程。1-571.1.指令指令 -规定计算机执行特定操作的命令。规定计算机执行特定操作的命令。2.2.指令系统指令系统 -计算机全部指令的集合。计算机全部指令的集合。指令系统准确定义了计算机的处理能力。指令系统准确定义了计算机的处理能力。不同型号的计算机有不同的指令系统,从而形不同型号的计算机有不同的指令系统,从而形成各自的特点和相互差异。成各自的特点和相互差异。1.3.2 1.3.2
46、指令与程序的概念指令与程序的概念1-583.3.指令结构指令结构 1.3.2 1.3.2 指令与程序的概念指令与程序的概念任何一条指令均由两部分组成:任何一条指令均由两部分组成:操作码操作码 地址码地址码(操作数操作数)指明要完成操作的性质,如:指明要完成操作的性质,如:加、减、乘、除等。加、减、乘、除等。指明参加规定操作的指明参加规定操作的数据存放地址或数据。数据存放地址或数据。1-594.4.程序程序机器语言程序机器语言程序汇编语言程序汇编语言程序高级语言程序高级语言程序 目前微机系统中使用着三个层次、三种形目前微机系统中使用着三个层次、三种形式的程序:式的程序:-为解决某一问题而编写在一
47、起的为解决某一问题而编写在一起的指令序列指令序列。1.3.2 1.3.2 指令与程序的概念指令与程序的概念1-60 计算机中的指令以二进制代码形式计算机中的指令以二进制代码形式存在,叫存在,叫机器码指令机器码指令。机器码指令构成的指令系统叫机器码指令构成的指令系统叫机器机器语言语言,用机器语言编写的程序叫,用机器语言编写的程序叫机器语机器语言程序言程序。机器语言程序优点是能被计算机直机器语言程序优点是能被计算机直接理解和执行;缺点是编程繁琐、不直接理解和执行;缺点是编程繁琐、不直观、难记忆、易出错。观、难记忆、易出错。机器语言机器语言 程程 序序 汇编语言汇编语言 程程 序序 高级语言高级语言
48、 程程 序序1.3.2 1.3.2 指令与程序的概念指令与程序的概念1-61 为克服机器语言程序的缺点,常用为克服机器语言程序的缺点,常用助记符来代替机器语言指令。助记符与助记符来代替机器语言指令。助记符与机器语言指令之间有一一对应关系。这机器语言指令之间有一一对应关系。这种用助记符构成的指令系统叫种用助记符构成的指令系统叫汇编语言汇编语言。用汇编语言编写的程序叫用汇编语言编写的程序叫汇编语言汇编语言程序程序。汇编语言程序的优点是直观、易懂、汇编语言程序的优点是直观、易懂、便于记忆。但又存在着计算机无法识别便于记忆。但又存在着计算机无法识别的缺点的缺点。机器语言机器语言 程程 序序 汇编语言汇
49、编语言 程程 序序 高级语言高级语言 程程 序序1.3.2 1.3.2 指令与程序的概念指令与程序的概念1-62 机器语言和汇编语言是依赖于机器机器语言和汇编语言是依赖于机器的编程语言,统称为的编程语言,统称为低级语言低级语言。与此相对应,与此相对应,高级语言高级语言则是一种比则是一种比较接近于习惯的自然语言和数学语言的较接近于习惯的自然语言和数学语言的程序设计语言。它以语句和数据的定义程序设计语言。它以语句和数据的定义为基础,且通常一个语句都是由一组机为基础,且通常一个语句都是由一组机器语言指令或汇编语言指令构成的。用器语言指令或汇编语言指令构成的。用高级语言编写的程序即为高级语言编写的程序
50、即为高级语言程序高级语言程序。高级语言程序比汇编语言程序更直高级语言程序比汇编语言程序更直观易懂,更易于面向问题和对象。观易懂,更易于面向问题和对象。机器语言机器语言 程程 序序 汇编语言汇编语言 程程 序序 高级语言高级语言 程程 序序1.3.2 1.3.2 指令与程序的概念指令与程序的概念1-63 高高级级语语言言程程序序和和汇汇编编语语言言程程序序必必须须先先翻翻译译成成机机器器语语言言程程序序才才能能执执行行。这这个个翻翻译译过过程程,对对汇汇编编语语言言程程序序叫叫汇汇编编(Assemble)Assemble);对对高高级级语语言言程程序序有有的的叫叫解解释释(Interpretat