仁爱学院微机原理复习_第1页
仁爱学院微机原理复习_第2页
仁爱学院微机原理复习_第3页
仁爱学院微机原理复习_第4页
仁爱学院微机原理复习_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理与接口技术目录第一章微机基础知识第二章微处理器和系统结构第三章指令系统第四章汇编语言及其程序设计第五章存储器及存储器子系统第六章总线技术第七章中断技术第八章接口技术微机基础知识Logo4本章内容提要

微机的基本组成、特点计算机内的信息表示和运算*进位计数制的表示及其转换*符号数和无符号数的表示及运算*十进制数的二进制表示及运算*逻辑变量的表示及运算*文字在计算机内的表示2023/2/65微机的基本组成Logo6一、微机的硬件组成

主机输入设备输出设备思考:主机是由什么构成的?Logo7Logo8(1)电源:电源是电脑中不可缺少的供电设备,它的作用是将220V交流转换为电脑中使用的5V,12V,3.3V直流电,其性能的好坏,直接影响到其他设备工作的稳定性,进而会影响整机的稳定性。(2)主板:主板是电脑中各个部件工作的一个平台,它把电脑的各个部件紧密连接在一起,各个部件通过主板进行数据传输。也就是说,电脑中重要的“交通枢纽”都在主板上,它工作的稳定性影响着整机工作的稳定性。主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件。Logo9(3)CPU:CPU(CentralProcessingUnit)即中央处理器,是一台计算机的运算核心和控制核心。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是决定电脑性能的核心部件,很多用户都以它为标准来判断电脑的档次。(4)内存:内存又叫内部存储器(RAM),特点是体积小,速度快,有电可存,无电清空,即电脑在开机状态时内存中可存储数据,关机后将自动清空其中的所有数据。(5)硬盘:硬盘属于外部存储器,由金属磁片制成,而磁片有记功能,所以储到磁片上的数据,不论在开机,还是并机,都不会丢失。硬盘容量很大,已达TB级。Logo10二、CPU的组成CPU由运算器、控制器、寄存器构成。运算器(ALU-ArithmeticLogicUnit)进行算术运算(加、减、乘、除与位);进行逻辑运算(与、或、非、异或等);

Logo11控制器(CTRL-Controller)

它是计算机的控制中心,发布与控制计算机工作的各种命令,协调计算机内部以及主机与外设工作的各种关系。

它有两个主要功能:控制程序的运行;对不同的外部事件做出相应响应的能力。(这些外部事件是指:复位、停机、中断请求、总线请求、总线周期延长等)

Logo12中央处理器:ALU+CTRL+REG阵列微处理器:就是微型计算机的CPU微控制器:MPU+MEM+I/O接口+BUS集成在一个芯片上,又称单片机,即MCU

MCU+适当外设和相应的软件,可构成微控制系统,用在自控、仪器仪表、通信设备、家电、儿童玩具等嵌入式应用领域。

ABDBCBCPU存储器I/O接口Logo13三、微机系统微型计算机系统指由硬件、软件组成的微机系统硬件:主机、外设、电源等软件:操作系统、编译程序、连接程序、调试程序、诊断程序、应用软件、数据库等。Logo14微机的软件部分构成系统软件操作系统:是常驻内存的软件系统,包括系统资源管理,存储器管理,I/O管理和驱动程序,任务管理,文件管理和程序库。如DOS、WIN98、WINXP、VISTA、WIN7等。编译软件:为用户开发的应用软件提供有力的支持。如汇编程序、C/C++、BASIC的编译程序、连接程序以及各种程序调试工具。其他程序:如系统诊断程序、故障定位程序以及系统配置程序等等。Logo15应用软件用户为实现给定的任务而编写或选购的程序。只适用于给定环境的给定用途,且一般驻留在外部存储器中,只有在运行时,才会调入内存。软件和硬件是相辅相成的,缺一不可。硬件是物质基础,软件是计算机的灵魂。没有硬件,软件就失去了运行的基础和指挥对象;没有软件,计算机就不能工作,其效能就不能充分发挥出来。2023/2/616微机的特点、应用及发展方向Logo17一、微处理器的发展1971.11,Intel公司第一枚微处理器芯片4004,4位机,它总共集成了2200个晶体管。1972年4月,Intel公司宣布另一种型号的微处理器8008研制成功。8位机。1975年1月,Motorola公司宣布推出它的8位微处理器6800。1979年,Intel公司推出了Intel8086/8088微处理器。1983年,Intel公司推出了Intel80286微处理器,它是完全16位微处理器1985年,Intel公司推出了Intel80386微处理器。(全32位处理器)1989年,Intel公司推出了Intel80486微处理器。(RISC)1993年3月,Intel公司推出了名为Pentium(经典奔腾)的微处理。(对外64位数据总线)1995年11月Intel公司又推出了PentiumPro(高能奔腾)。1997年1月,Intel公司又推出了PentiumMMX(多能奔腾)。1997年5月,Intel公司推出了PentiumⅡ(奔腾二代)1999年2月,Intel公司推出了PentiumⅢ(奔腾三代)2000年11月,Intel公司推出了Pentium4(奔腾四代)。2001年5月,Intel公司推出了64位微处理器Itanium。Logo18Intel4004Intel8008Motorola6800Intel8086Intel80286Intel80386Intel80486IntelPentiumIntelPentiumIIIntelPentiumIIIIntelPentiumIV

第一代1971年~1973年第二代1974年~1977年第三代1978年~1980年第四代1980年以后典型的微处理器芯片Intel4004Intel4040Intel8008Intel8080M6800Z-80Intel8086/8088M68000Intel80X86M68020Z-80000字长(位)4/881616/32集成度(晶体管数/芯片)1000~20005000~900020000~70000>100000时钟频率(MHZ)0.5~0.81~45~10>10数据总线宽度(位)4/881616/32地址总线宽度(位)4~8820~2424~32存储容量≤16KB实存≤64KB实存≤1MB实存≤4GB实存和64GB虚存指令执行时间(s)10~151~2<1<0.125软件水平机器语言汇编语言汇编语言高级语言操作系统汇编语言高级语言操作系统汇编语言高级语言部分软件硬化Logo20二、微机特点运算速度快(每秒几兆条指令到几千兆条指令或每秒几十亿次运算。MIPS(106),GIPS(109))处理能力强(如各种管理、计算、决策)能连续不间断地工作(多任务、高效、高质量)能干几乎所有的工作Logo21三、应用各行各业,无所不用科技、生产、学习、日常生活等各个方面Logo22四、发展方向性能:运行速度不断提高,处理器字长不断增加(摩尔定律指出,每18个月计算机的运算速度就大体提高一倍,而价格则大约降低一半)功能:支持多媒体技术,并与网络技术全面结合体系结构:向多处理器和网络化过渡;向以通信为中心的体系结构发展;由冯.诺依曼体系结构向数据流结构发展可用性:从面向过程的机制向面向对象的机制转变,向智能化方向发展制造工艺:向超高集成度发展,制造光集成芯片、生物芯片,设计超导、量子、生物、光计算机2023/2/623计算机运算基础Logo24一、进位计数制计算机中全部信息(包括指令和数据)都是采用二进制数,为了书写方便,又经常采用十六进制。而人们在日常生活中又广泛采用十进制。二进、十六进、十进制都是进位计数制。Logo25十进计数制5188.888

10+310-3该数中有5位都是8,但由于其位置不同,其值也不同,即“位值”不同。该数可看成两部分组成:

数字值如5,1,8

位值(权值),隐含着,如10-3上面的十进数可表示为:5188.888=1035+1021+1018+1008+10-18+10-28+10-38

对于有n位整数和m位小数的十进制数N可表示为:

n-1N=di

10ii=-mLogo26十进制数有如下特点每位数字di可取0,1,2,3,…,9十个值之一;逢10进1,即每位达到10向高位进1,本位回0,相邻高位的权值是本位权值的10倍。对于任意R进制表示的数N,可写成n-1N=di

Rii=-m其中:di可取0,1,2,…,R-1个值之一;逢R进1(R为进位计数制的基数(Radix));R是大于或等于2的整数,Ri称为di的权值或位值。

Logo27当R=10为十进制数(Decimal,书写后缀D或省略)当R=2为二进制数(Binary,书写后缀B)当R=3为三进制数(Trinary,书写后缀T)当R=8为八进制数(Octal,书写后缀O或Q)当R=16为十六进制数(Hexa-decimal,书写后缀H)Logo28特点:①只有两个数字符号0,1②逢2进1

计算机中广泛采用二进制的原因

容易实现,每位只取两个值,易用两个逻辑状态的器件表示;运算规则简单,只有三种运算(0和0、0和1、1和1);工作可靠,不同状态之间的转换是质变而非量变;电路设计可借助布尔代数进行设计。

222–22.二进计数制101.11Logo29八进制和十六进制

八进制每位可取0,1,2,…,7八个值之一,逢八进一。十六进制每位可取0,1,2,…,9,A,B,…F十六个值之一,逢十六进一,大于9的数字借助于字母A~F表示。在编程时,为了书写方便,常用十六进制表示。Logo30二、进位计数制间的转换例1.二进制

→八进、十六进制

10100101.0001B=245.04Q=A5.1H例2.十六进制→二进制;十六进制→十进制ABCF.587H=1010101111001111.010110000111BA5.1H=10161+5160+116-1=160+5+0.0625=165.0625一位八进制数对应3位2进制数一位十六进制数对应4位2进制数Logo31二、进位计数制间的转换P进制数N→R进制数通常把N分为整数与小数部分分别转换

1、整数部分转换

①把R表示成P进制数②对P进制数N按P进制作除R取余方法进行例1.把八进制数N=303Q表示成十进制数(P=八进数,R=十进数)解:①把R=10表示成八进数为12Q②对N=303Q按八进制作除12Q取余运算Logo3212Q303Q23Q2443365QD0=5余数12Q23Q1Q1211QD1=9余数12Q1Q0Q01Q

D2=1余数303Q=195D上述除法与十进制除法没有什么不同。每次除12Q之后取余数,而商再除以12Q,直到商为0停止。高位低位Logo33

例2.把10进制数29转换成二进制数解:①由于2是十进制数集内之数,不必作变换;②对于N=29D作除2取余运算。

29214余数1(B0

72232120余数0(B1

)余数1(B2

)余数1(B3

)余数1(B4

∴29D=11101B

Logo34二、进位计数制间的转换2.小数部分的转换

P进制纯小数→转换为R进制小数用乘R取整

①把R表示成P进制数②把数N按P进制乘R取整例1把0.625转换成二进制数解:①二进制数(0,1)都在十进制数内②把0.625乘2取整0.625×2———1.250b-1=1

0.25×2———0.50b-2=00.5×2———1.0b-3=1

0.625=0.101B高位低位Logo35三、无符号数的表示与运算加法运算

(若运算器为8位)例1.计算78H+87H=FFH例2.计算78H+98H=10H说明:

因为是8位运算器,例2的结果就溢出了,原因是结果只能存放8位数。为了表示最高位的进位,计算机中可用一个进位标志CF(CarryFlag)=1来表示(若把CF=1考虑在内,结果为110H,这样结果就正确了)。Logo36三、无符号数的表示与运算减法运算

(若运算器为8位)

例1.计算78H-87H=F1H例2.计算A8H-98H=10H说明:因为是8位运算器,例1的结果就是错误的了,原因是高位有借位。为了表示最高位的借位,计算机中可用一个借位标志BW(BorrowFlag)=1来表示(通常计算机中把CF与BW用同一标志来指示)。Logo37四、符号数的表示与运算计算机中的符号数也是用二进制数表示和运算的。数值与符号都是用二进制数表示。一般规定,0表示正号,1表示负号,约定在数的最高位表示符号位。符号数通常有三种机器码表示法。即原码、反码和补码。Logo38四、符号数的表示与运算(续)原码表示(1)定义

[x]原=

X(X>=0)2N-1–X(X<=0)表示范围:(–2N-1+1)~(+2N-1–1)4位二进制原码表示的整数范围为:–7~+78位二进制原码表示的整数范围为:–127~+127(2)举例用八位二进数写出X=+32和Y=–32的原码表示如下[X]原=00100000B=20H[Y]原=10100000B=A0H符号位数值符号位数值X(X>=0)2N-1–X(X<=0)Logo39四、符号数的表示与运算(续)(3)0的原码有两种表示[+0]原=00000000B[–0]原=10000000B原码表示简单直观,但运算时符号位与数值位要区别对待,不宜作加减运算。

例1:[X]原+[Y]原=20H+A0H=C0H=11000000B显然是错误的结果。因为两个数异号应做减法,所得的结果的符号就取决于绝对值大的数的符号。Logo40四、符号数的表示与运算(续)反码表示与运算(1)定义[X]反=

X(X>=0)

(2N–1)+X(X<=0)(2)举例:用八位二进制数写出X=+32与Y=–32的反码表示

[X]反=00100000B(正数的反码是其自身)

[Y]反=11011111B(负数的反码是其对应正数求反)Logo41四、符号数的表示与运算(续)

(3)0的反码有两种表示[+0]反=00000000B[–0]反=11111111B

N位反码可表示的整数范围为:–(2N-1–1)~(2N-1–1)8位二进制反码表示范围:–127~+127(4)反码运算规则[X+Y]反=[X]反+[Y]反+循环进位[X–Y]反=[X]反+[–Y]反+循环进位例1.用反码计算33-32=?33的反码为(00100001B=21H)-32的反码为对32求反(对00100000B求反=11011111=DFH)21H00+.D.FH+1(循环进位)

0001Logo42四、符号数的表示与运算(续)反码宜作加、减运算,但一次加法要通过两次加法运算来完成,降低了计算机的运算速度。计算机中常用补码表示符号数。补码表示与运算(1)定义[X]补=X(X>=0)2N+X(X<=0

补码的求法:

根据定义,正数的补码是其自身;负数的补码是其对应的正数(连同符号位)求反加1得到。Logo43四、符号数的表示与运算(续)(2)举例用八位二进制数写出X=+32和Y=–32的补码表示[X]补=00100000B[Y]补=11100000B(对应正数32=20H求反加1)求负数的补码有两种方法

其一是:对应正数求反加1

其二是:模数–对应的正数(如[Y]补=100H-20H=E0H)(3)0的补码只有一种表示

[+0]补=00000000B[-0]补=11111111+1=00000000BN位二进制补码表示的整数范围为:-2N~2N-1-1N=8时,表示范围:-128~+127N=16时,表示范围:-32768~+32767

Logo44四、符号数的表示与运算(续)(4)补码的运算规则

[X+Y]补=[X]补+[Y]补[X–Y]补=[X]补+[–Y]补用补码可以很方便的进行符号数的加减运算

例1若X=65,Y=-66,用补码计算X+Y=?

Logo45四、符号数的表示与运算用补码进行加减运算比反码省去了循环进位的修正运算,所以运算速度提高了。一般计算机中的符号数,均指用补码表示的数。利用补码,连同符号位一起,按无符号数进行加减,简化了运算器的设计。在计算机中,减法运算是通过求负数的补码,而进行加法运算。Logo46四、符号数的表示与运算符号数运算溢出的判别方法若运算结果超出了结果单元所能表达的范围就产生溢出。S或N(Sign或Negative)符号标志,反映运算结果的符号位。

加减运算产生的溢出无法从结果中看出,必须用专门的信息位来表示。在CPU中,称为Flag寄存器,由于这些标志决定了程序分支的条件,也称为条件码(CC:ConditionCode)。CPU常设的标志有:

C(Carry)进位标志,运算结果的最高位产生进位或借位。

O或V(OVerflow)溢出标志,反映符号数运算结果是否产生溢出。

Z(Zero)零标志,反映运算结果是否为0。C与O是两个不同性质的标志,前者反映运算结果有无进(借)位,后者反映运算结果有无溢出。Logo47四、符号数的表示与运算下列几种情况,符号数运算时会产生溢出

‣正+正=负(正溢出)‣负+负=正(负溢出)‣正–负=负(正溢出)‣负–正=正(负溢出)值得指出的是:计算机在进行运算时,对参与运算的数并不知道是无符号数或带符号数,所以它在运算后对4个标志都会置位,只有程序员知道参与运算的数是符号数或无符号数。在计算机中,OF置位是根据次高位和最高位的进位的异或判别的。即OF=C7⊕

C6Logo48四、符号数的表示与运算运算举例

Logo49

运算举例例3X=30H,Y=40H,求X+Y=?并判断标志位。

30HCF=0(无进位)+40HSF=0(为正数)¯¯¯¯¯¯¯¯OF=0(没溢出)(即无进位又无溢出)70HZF=0(结果不为0)例4X=80H,Y=80H,求X+Y=?并判断标志位。

80HCF=1(有进位)+.80HSF=0(为正数)¯¯¯¯¯¯¯¯OF=1(有溢出)(即有溢出又有进位)00HZF=1(结果为0)四、符号数的表示与运算Logo50五、十进制数的二进制表示与运算表示方法—BCD码(BinaryCodedDecimal)

要表示一位十进制数,至少要用4位二进制数,常用下面两种表示方法:

压缩的(组合的)BCD码:一个字节表示两位BCD码。

非压缩(非组合)的BCD码:一个字节表示一位BCD码,高4位为0。运算方法

由于BCD码需10种4位二进制编码0000~1001,还有6种码1010~1111是非法编码。若出现非法编码,所得的结果就要修正。计算机内十进制数(BCD码)运算仍采用二进制加法器来实现。Logo51五、十进制数的二进制表示与运算BCD码运算(加法)

例1若X、Y为十进制数,X=38,Y=57,计算X+Y=?38BCD码中没有字母,结果中的F(1111)为非法码,+57应在该位加6修正,以强迫其进位。

8F+0

695

例2若X=28,Y=79,计算X+Y=?28+79

A1因为低4位有进位(AF=1)+66高4位A>9,所以+66107Logo52五、十进制数的二进制表示与运算(续)BCD码运算(减法)

例3若X、Y为十进制数,X=75,Y=26,计算X-Y=?7`5BCD码中没有字母,结果中的F(1111)为非法码,-26应在该位-6修正,使借高位的数得到修正。

例4X=30,Y=42,计算X-Y=?`3`0-42EE因为低4位有借位(AF=1)

-66高4位也有借位(CF=1)

88所以–66修正

4F-0

649Logo53五、十进制数的二进制表示与运算(续)BCD码加法修正原则是:①若运算结果低位大于9或AF(半进位)=1,则结果+06;②若运算结果高位大于9或CF(进位)=1,则结果+60;③若①②都满足时,则结果+66。BCD码减法修正原则是:①若运算结果低位大于9或AF(半借位)=1,则结果-06;②若运算结果高位大于9或CF(借位)=1,则结果-60;③若①②都满足时,则结果-66。说明:微机的CPU中都有专门的十进制运算调整部件DAA,还设有专门的十进制加减运算调整指令DAA与DAS等。Logo54六、逻辑变量的表示与运算逻辑变量

只有两个值,“真”或“假”,1bit可以表示一个逻辑变量。若“1”表示“真”,“0”表示”假”

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论