1、微型计算机原理开设的基本目的:开设的基本目的:计算机工作原理是电类专业学生知识结构的重要组成部计算机工作原理是电类专业学生知识结构的重要组成部分,相关知识对后续课程、日常生活和工作、开展毕业分,相关知识对后续课程、日常生活和工作、开展毕业设计和硕博课题等各个方面都可能有不同程度的作用。设计和硕博课题等各个方面都可能有不同程度的作用。学习目标:学习目标:掌握微型计算机系统的结构组成、实现机理、工作原掌握微型计算机系统的结构组成、实现机理、工作原理;理;掌握汇编语言程序设计的初步方法和调试过程;掌握汇编语言程序设计的初步方法和调试过程;建立微型计算机系统整体概念,具备利用微机进行硬建立微型计算机系
2、统整体概念,具备利用微机进行硬件和软件开发的初步能力。件和软件开发的初步能力。课程特点:抽象、难理解、乏味!虽然对象是具体的。课程特点:抽象、难理解、乏味!虽然对象是具体的。课时安排:共课时安排:共48学时,授课学时,授课40学时,上机实验学时,上机实验8学时。学时。要求:加强理解,把相关知识具体化而不要抽象化。要求:加强理解,把相关知识具体化而不要抽象化。第一章第一章 微型计算机基本原理微型计算机基本原理1-1 概述概述 1、电子数字计算机概念、电子数字计算机概念 目前通常所说的计算机是指电子数字计算机目前通常所说的计算机是指电子数字计算机。电子技术实现、数字化信息处理方式、高度复电子技术实
3、现、数字化信息处理方式、高度复杂的逻辑电子电路。信息以二进制形式(逻辑杂的逻辑电子电路。信息以二进制形式(逻辑电平形式)表示;自动地进行信息处理电平形式)表示;自动地进行信息处理。2、计算机分类、计算机分类 按信息处理方式:数字计算机和模拟计算机。按信息处理方式:数字计算机和模拟计算机。模拟计算机由于受元器件质量影响,其计算模拟计算机由于受元器件质量影响,其计算精度较低,目前已很少生产。精度较低,目前已很少生产。按用途:通用计算机和专用计算机。按用途:通用计算机和专用计算机。专用计算机针对某用途专门设计。专用计算机针对某用途专门设计。按规模、速度(按规模、速度(没有一个统一的标准,没有一个统一
4、的标准,19891989年年IEEE(IEEE(电气与电子工程师协会电气与电子工程师协会)提出一种分类提出一种分类)巨型计算机或超级计算机巨型计算机或超级计算机(Supercomputer)(Supercomputer)小巨型计算机小巨型计算机(Minisupercomputer(Minisupercomputer)大型主机大型主机(Mainframe)(Mainframe)小型计算机小型计算机(Minicomputer(Minicomputer)工作站工作站(Work Station)(Work Station)个人计算机个人计算机(Personal Computer(Personal Co
5、mputerPC)PC)3、计算机发展简史、计算机发展简史1 1)机械计算机的诞生)机械计算机的诞生1614 年年:苏格兰人苏格兰人John Napier发明了一种可以进发明了一种可以进行四则运算和方根运算的精巧装置。行四则运算和方根运算的精巧装置。1890 1890年年:Herman Hollerith:Herman Hollerith 设计了用于美国人口普设计了用于美国人口普查的机器。结果仅用查的机器。结果仅用6 6周就得出了准确的人口统计周就得出了准确的人口统计数据数据(如果用人工方法,大概要花如果用人工方法,大概要花1010年时间年时间)。2)电子计算机时代)电子计算机时代 1906
6、年年:美国人美国人Lee De Forest 发明电子管,为发明电子管,为电子计算机的发展奠定了基础。电子计算机的发展奠定了基础。1946 年年:第一台真正意义上的数字电子计算机第一台真正意义上的数字电子计算机(ENIAC)由美国宾夕法尼亚大学研制成功。由美国宾夕法尼亚大学研制成功。重达数吨,占据几间房间,需要多个操作员来维持重达数吨,占据几间房间,需要多个操作员来维持它们正常工作。它们正常工作。非常昂贵非常昂贵,以至于只有政府和大型机构才能够买得,以至于只有政府和大型机构才能够买得起。起。当时的人们认为几台或者几十台这样的机器就能够当时的人们认为几台或者几十台这样的机器就能够满足全世界的需求
7、了。满足全世界的需求了。在此期间,冯在此期间,冯.诺伊曼(诺伊曼(VON.NEUMANM)也研制)也研制出一台被认为是现代计算机原型的通用电子计算机。出一台被认为是现代计算机原型的通用电子计算机。根据使用电子器件的不同,电子计算机经历了四个阶段:根据使用电子器件的不同,电子计算机经历了四个阶段:电子管计算机电子管计算机(19461956)晶体管计算机晶体管计算机(19571964)集成电路计算机集成电路计算机(19651970)超大规模集成超大规模集成电路计算机电路计算机(1971至今至今)l 用机器语言、汇编语言编写程序用机器语言、汇编语言编写程序l 用于军事和国防尖端技术用于军事和国防尖端
8、技术l 开始使用高级语言开始使用高级语言l 开始用于工程技术、数据处理和开始用于工程技术、数据处理和 其它科学领域其它科学领域l 采用微程序、流水线等技术,提高采用微程序、流水线等技术,提高 运行速度运行速度l 出现操作系统、诊断程序等软件出现操作系统、诊断程序等软件l 采用半导体存储器采用半导体存储器l 采用图形界面操作系统采用图形界面操作系统l 器件速度更快器件速度更快,软件、外设更加丰富软件、外设更加丰富 微型计算机是第四代计算机时期出现的一种。微型计算机是第四代计算机时期出现的一种。自从自从1981年年IBM公司进入微型计算机领域推出了公司进入微型计算机领域推出了IBMPC以后,计算机
9、的发展开创了一个新的时代以后,计算机的发展开创了一个新的时代微型微型计算机计算机时代。微型计算机的迅速、大规模的应用与普及,时代。微型计算机的迅速、大规模的应用与普及,使计算机真正广泛地应用于工业、农业、科学技术以及使计算机真正广泛地应用于工业、农业、科学技术以及社会生活与日常生活的各个方面。以前的大型机、中型社会生活与日常生活的各个方面。以前的大型机、中型机、小型机的界线巳经日益模糊与消失。随着微型计算机、小型机的界线巳经日益模糊与消失。随着微型计算机应用的普及和发展,芯片与微型机的功能和性能迅速机应用的普及和发展,芯片与微型机的功能和性能迅速提高,其功能已经远远超过了提高,其功能已经远远超
10、过了20世纪世纪80 年代以前的小型年代以前的小型机、中型机,甚至超过了大型机。机、中型机,甚至超过了大型机。当前微型计算机运算速度一般为当前微型计算机运算速度一般为20203030亿次亿次/秒;秒;世界最快的计算机速度为世界最快的计算机速度为280280万亿次万亿次/秒;秒;中国最快的计算机为上海超级计算机中心的中国最快的计算机为上海超级计算机中心的“曙曙光光4000A”4000A”,8 8万亿次万亿次/秒,世界排名第秒,世界排名第3131位。位。4 4、计算机的特点、计算机的特点 处理速度快 运算精度高 存储记忆能力强 自动执行任务功能 人机交互功能 5、计算机的应用、计算机的应用 数值计
11、算数值计算:基本功能,但此功能应用逐渐缩小;基本功能,但此功能应用逐渐缩小;信息处理:数据库,管理信息系统,办公自动化信息处理:数据库,管理信息系统,办公自动化系统;目前世界约系统;目前世界约8080的计算机用于信息处理;的计算机用于信息处理;控制、自动化:过程控制,生产自动化控制、自动化:过程控制,生产自动化 辅助分析、设计:辅助分析、设计:CADCAD,CAMCAM,CAICAI 仿真计算仿真计算 网络应用网络应用 人工智能:模式识别、神经网络、专家系统、机人工智能:模式识别、神经网络、专家系统、机器人等器人等6、计算机发展方向、计算机发展方向 当前模式的电子计算机发展趋势是朝微型当前模式
12、的电子计算机发展趋势是朝微型化和巨型化两方面发展。化和巨型化两方面发展。功能发展功能发展 多媒体计算机多媒体计算机:更好地支持多媒体技术,:更好地支持多媒体技术,音频、视频数据压缩、解压缩技术,多媒体音频、视频数据压缩、解压缩技术,多媒体数据的通信。数据的通信。计算机智能化计算机智能化:具有推理、联想、学习等:具有推理、联想、学习等思维功能和模式识别功能。思维功能和模式识别功能。网络计算机网络计算机:全面支持网络功能。:全面支持网络功能。新型计算机的研究:新型计算机的研究:神经网络计算机神经网络计算机:从内部结构模拟人脑神:从内部结构模拟人脑神经系统。经系统。生物计算机生物计算机:使用蛋白分子
13、为材料的生物:使用蛋白分子为材料的生物芯片。芯片。光学计算机光学计算机:用光子代替电子,用光连接:用光子代替电子,用光连接代替金属导线连接,运算速度快千倍。代替金属导线连接,运算速度快千倍。7 7、个人计算机的构成、个人计算机的构成 中央处理器中央处理器CPUCPU、主板、内存、硬盘、显卡、主板、内存、硬盘、显卡、显示器、键盘等显示器、键盘等1-2 微型计算机系统的组成微型计算机系统的组成 1、组成部分、组成部分运算器运算器ALU寄存器寄存器控制器控制器系统软件:系统软件:DOS、Windows应用软件:应用软件:Word、Excel、Visual C+中央处中央处 理理 器器 CPU 存储器
14、存储器I/O接口接口总线总线 硬硬 件件软软 件件微微 型型计算机计算机系系 统统微微 型型计算机计算机(主机主机)外外 设设键盘、鼠标键盘、鼠标显示器显示器软驱、硬盘、光驱软驱、硬盘、光驱 打印机、扫描仪打印机、扫描仪2、中央处理器、中央处理器 中央处理器中央处理器CPUCPU(Central Processing UnitCentral Processing Unit)具有)具有运算和控制功能,是整个微型计算机的核心,也称微运算和控制功能,是整个微型计算机的核心,也称微处理器。处理器。微处理器的主要功能部件有微处理器的主要功能部件有(1 1)运算器,也称算术逻辑部件()运算器,也称算术逻辑
15、部件(ALUALU):用来进行):用来进行算术和逻辑运算。算术和逻辑运算。(2 2)控制器:整个系统的指挥控制部件)控制器:整个系统的指挥控制部件,从内存中取从内存中取出指令、翻译指令并操控运算器及其它部件完成相应出指令、翻译指令并操控运算器及其它部件完成相应操作。操作。(3 3)寄存器:包括程序计数器、指令寄存器、累加器、)寄存器:包括程序计数器、指令寄存器、累加器、地址寄存器、数据寄存器、通用寄存器等。地址寄存器、数据寄存器、通用寄存器等。3、存储器(、存储器(Memory)记忆部件:存储程序和数据。记忆部件:存储程序和数据。存储器分级配置存储器分级配置 内存:由半导体存储器组成,读写速度
16、快;内存:由半导体存储器组成,读写速度快;外存:如硬盘、软盘等,容量大,读写速度慢外存:如硬盘、软盘等,容量大,读写速度慢 程序在外存存放,执行时调入内存。程序在外存存放,执行时调入内存。4、外部设备、外部设备、I/O设备、外设(设备、外设(Peripheral Equipment)完成信息转换、计算机与外界交互;文字、声完成信息转换、计算机与外界交互;文字、声音等自然信息以及其它物理信息与计算机能识别音等自然信息以及其它物理信息与计算机能识别的二进制信息进行转换;的二进制信息进行转换;使计算机对人有用,至少应有一台外设。使计算机对人有用,至少应有一台外设。5、总线(、总线(Bus)计算机各部
17、件之间传送信息的公共通道。计算机各部件之间传送信息的公共通道。各部件分时复用总线。各部件分时复用总线。在某一时刻,只能有一个部件向总线发送数据,否在某一时刻,只能有一个部件向总线发送数据,否则形成总线冲突。则形成总线冲突。可有多个部件从总线接收数据。可有多个部件从总线接收数据。总线结构降低了部件之间连线数量,提高可靠性;总线结构降低了部件之间连线数量,提高可靠性;但数据交换速度降低。但数据交换速度降低。总线按传递信息的内容分为:总线按传递信息的内容分为:数据总线(数据总线(Data Bus-DBData Bus-DB)-双向双向 地址总线(地址总线(Address Bus-ABAddress
18、Bus-AB)-单向单向 控制总线(控制总线(Control BusControl BusCBCB)-双向双向6、微型计算机结构框图、微型计算机结构框图存存储储器器I/O接接口口输输入入设设备备I/O接接口口数据总线数据总线 DB控制总线控制总线 CB地址总线地址总线 AB输输出出设设备备CPU1、位与字节、位与字节1)位位(Bit)l 指指计算机能表示的最小信息单位。计算机能表示的最小信息单位。l 在计算机中采用二进制表示数据和指令,故:在计算机中采用二进制表示数据和指令,故:位就是一个二进制位,有两种状态,位就是一个二进制位,有两种状态,“0”和和“1”1-3 微型计算机系统的工作原理微型
19、计算机系统的工作原理2)字节)字节(Byte)l 相邻的相邻的8位二进制数称为一个字节位二进制数称为一个字节 1 Byte=8 bit 如:如:1100 0011;0101 0111 3)字()字(Word)l字字是是CPU内部进行数据处理的基本单位。内部进行数据处理的基本单位。l字长字长与与CPU内部的寄存器、内部的寄存器、运算器、总线宽运算器、总线宽度是一致的。度是一致的。l通常也将通常也将2个字节(个字节(16位)定义为一个字;位)定义为一个字;4)位编号)位编号 10100010D7 D6 D5 D4 D3 D2 D1 D0A7 A6 A5 A4 A3 A2 A1 A0数据数据Data
20、地址地址Addressl 指令指令是是CPU能执行的一项基本操作。能执行的一项基本操作。如:存数、取数、加、减、乘、除等如:存数、取数、加、减、乘、除等 2、指令与指令系统、指令与指令系统l 指令系统(或指令集)指令系统(或指令集)是某是某CPU所能执行的全部操所能执行的全部操作的总和。不同的作的总和。不同的CPU,其指令系统不同。,其指令系统不同。l 程序程序是用户为使用计算机完成特定任务而编写的是用户为使用计算机完成特定任务而编写的指指令的序列令的序列。l 为使指令能被计算机识别,必须以二进制编为使指令能被计算机识别,必须以二进制编码形式表示,称为码形式表示,称为机器码。机器码。l 用机器
21、码形式表示的指令不便于人来记忆和用机器码形式表示的指令不便于人来记忆和理解,于是用一些理解,于是用一些助记符助记符表示指令代码。如表示指令代码。如:MOV AX,3561H;ADD BL,21Hl 用助记符表示指令代码的语言称为用助记符表示指令代码的语言称为汇编语言。汇编语言。l 汇编源程序经特定的软件进行汇编源程序经特定的软件进行编译编译,形成机,形成机器码程序器码程序目标程序目标程序。l高级语言高级语言:按一定语法规则设计的便于理解:按一定语法规则设计的便于理解和编程的计算机编程语言,需经特定的编译软和编程的计算机编程语言,需经特定的编译软件转化为机器语言才能被计算机执行。件转化为机器语言
22、才能被计算机执行。3、计算机的工作过程、计算机的工作过程 程序存放在存储器中,程序存放在存储器中,CPUCPU上电后自动从存储器特定位置上电后自动从存储器特定位置开始逐条执行指令。开始逐条执行指令。执行过程:执行过程:取一条指令取一条指令 分析指令分析指令 执行指令执行指令标标 志志寄存器寄存器地址总线地址总线 AB数据总线数据总线 DB控制总线控制总线 CB指令寄存器指令寄存器数据寄存器数据寄存器控制电路控制电路指令译码器指令译码器地地址址寄寄存存器器 程序程序计数器计数器R1R2R3R4寄存器组寄存器组运运算算器器存存储储器器举例举例 一段汇编程序一段汇编程序 MOV ALMOV AL,7
23、 7 ;将数值;将数值7 7装入累加器装入累加器ALAL中中 ADD ALADD AL,10 10 ;ALAL内容与内容与1010相加,结果存于相加,结果存于ALAL中中 HLT HLT ;停止操作;停止操作编译成机器码:编译成机器码:10110000 10110000(MOV ALMOV AL,X X)00000111 00000111(X=7 X=7 )00000100 00000100(ADD ALADD AL,X X)00001010 00001010(X=10 X=10 )11110100 11110100(HLT HLT )写入存储器写入存储器内容内容101100000000011
24、1000001000000101011110100地址地址0000H0001H0002H0003H0004H4、当前计算机的基本实现方案当前计算机的基本实现方案冯冯.诺依曼诺依曼(Von Neumann)体系结构体系结构 由运算器、控制器、存储器、输入设备、输出设由运算器、控制器、存储器、输入设备、输出设备五部分组成,各自行使不同功能;备五部分组成,各自行使不同功能;指令与数据存放在存储器中,指令与数据存放在存储器中,顺序执行顺序执行;采用二进制形式表示信息。采用二进制形式表示信息。该体系结构是该体系结构是冯冯.诺依曼诺依曼(Von Neumann)于于19461946年提年提出,奠定了计算机
25、实现框架;出,奠定了计算机实现框架;19491949年诞生年诞生冯冯.诺依曼结构计算机,诺依曼结构计算机,至今计算机结构至今计算机结构没有根本突破。没有根本突破。年代 型号 晶体管数量 1978年 8086 2.9万 1982年 80286 13.5万 1985年 80386 32万 1990年 80486 120万 1993年 Pentium 320万 1996年 Pentium Pro 550万 1997年 Pentium II 750万,300MHz 1999年 Pentium III 2000年 Pentium IV 4200万,1.4GHz(0.18um工艺)Moore定律:“晶体管
26、的大小将以指数速率变小,而集成到芯片上的晶体管数目将1824个月翻一番。”Gordon Moore,1965(Intel公司的创始人,著名半导体科学家)二进制(二进制(Binary)Binary)表示;计算机表示信息的方式。表示;计算机表示信息的方式。十进制十进制(Decimal)(Decimal)表示;人的自然表示。表示;人的自然表示。1616进制进制(Hexadecimal)(Hexadecimal)表示;二进制的等价表示,表示;二进制的等价表示,每每4 4位二进制数字等价于一位位二进制数字等价于一位1616进制数字。用进制数字。用0 0、1 1、2 2、3 3、4 4、5 5、6 6、7
27、 7、8 8、9 9、A A、B B、C C、D D、E E、F F 表表示示1616个数码。个数码。表示:二进制表示:二进制B B;十进制十进制D D(可省略);(可省略);十六进制十六进制H H1-4 计算机运算基础计算机运算基础1、常用的计数制、常用的计数制2、数制间的数值转换、数制间的数值转换1 1)非十进制数化十进制数的方法非十进制数化十进制数的方法:各位数码乘以与其:各位数码乘以与其对应的权,然后相加即可。对应的权,然后相加即可。如:如:1011B=11011B=1*2 23 3+0+0*2 22 2+1+1*2 21 1+1+1*2 20 0=11=11 02E3H=0 02E3
28、H=0*16163 3+2+2*16162 2+E+E*16+3=216+3=2*256+14256+14*16+3=73916+3=7392 2)十进制转化为十进制转化为N N进制数的方法进制数的方法 整数部分整数部分除以除以N N,并记下余数,直到商为,并记下余数,直到商为0;0;将余数按从后往前的顺序排列起来,构成整数部分。将余数按从后往前的顺序排列起来,构成整数部分。小数部分小数部分乘以乘以N N,并记下结果的整数部分,直到结果,并记下结果的整数部分,直到结果的小数部分为的小数部分为0;0;然后将结果的整数部分从前向后排列然后将结果的整数部分从前向后排列起来,构成小数部分。起来,构成小
29、数部分。3 3)十六进制与二进制数的转换十六进制与二进制数的转换 十六进制数每一位用十六进制数每一位用4 4位二进制数表示位二进制数表示4 4)举例)举例求求100D100D的二进制和十六进制表示的二进制和十六进制表示 100/2=50100/2=50余余0 0 50/2=25 50/2=25余余0 0 25/2=12 25/2=12余余1 1 12/2=6 12/2=6余余0 0 6/2=3 6/2=3余余0 0 3/2=1 3/2=1余余1 1 1/2=0 1/2=0余余1 1所以所以100D=1100100B=64H100D=1100100B=64H其它例:其它例:18.125 1001
30、0.001 B;101010.111B 42.875 D3、计算机中常用的编码、计算机中常用的编码1)1)所谓编码是指信息在计算机中的表示方法。所谓编码是指信息在计算机中的表示方法。信息既包括数字也包括字母、符号和一些信息既包括数字也包括字母、符号和一些不可见的控制符号。不可见的控制符号。2)BCD2)BCD码(码(Binary-Coded Decimal)Binary-Coded Decimal)用四位二用四位二进制数表示一位十进制数。进制数表示一位十进制数。3)ASCII3)ASCII码(码(American Standard Code for American Standard Code
31、 for Information Interchange)Information Interchange)用用7 7位二进制进行编码(位二进制进行编码(00-7FH00-7FH),可表示),可表示128128种字符,见附录种字符,见附录1 1。在机器内用一个字节表示,在机器内用一个字节表示,D7=0D7=0。4)4)汉字编码:汉字编码:常用国标码,用两个常用国标码,用两个7 7位编码表示汉字和位编码表示汉字和一些图形符号;一些图形符号;在机器内用两个在机器内用两个8 8位字节表示,称为内码;位字节表示,称为内码;每个字节的每个字节的D7=1D7=1,以与,以与ASCIIASCII码相区别。码相
32、区别。如汉字如汉字啊啊的国标码为的国标码为0110000 0110000 01000010100001;对应内码为对应内码为10110000 1010000110110000 10100001在计算机中,符号只能用数字来表示。在计算机中,符号只能用数字来表示。用二进制数字的用二进制数字的最高位表示该数的符号最高位表示该数的符号。正。正数为数为0 0,负数为,负数为1 1。其余位为数值位。其余位为数值位。机器数的表示方法有:机器数的表示方法有:原码、反码、补码原码、反码、补码。4、计算机中有符号数的表示、计算机中有符号数的表示5、原码、反码和补码、原码、反码和补码1 1)原码:正数的原码为该数的
33、二进制数;)原码:正数的原码为该数的二进制数;负数的原码仅符号位为负数的原码仅符号位为1 1。例:若用例:若用8 8位二进制数表示机器数,则位二进制数表示机器数,则1313的原的原码为码为0000110100001101;-13-13的原码为的原码为1000110110001101。原码便于乘除运算,但不便于加减运算。原码便于乘除运算,但不便于加减运算。2 2)反码)反码 正数的反码正数的反码等于原码;等于原码;负数的反码负数的反码为其原码的符号位不变,数值位为其原码的符号位不变,数值位按位取反。按位取反。例:若用例:若用8 8位二进制数表示机器数,则位二进制数表示机器数,则1313的的反码为
34、反码为0000110100001101;-13-13的反码为的反码为1111001011110010;对反码对反码取反取反得到得到相反数的反码相反数的反码。例如:例如:-(-13-13)反码为()反码为(1111001011110010)的各位取反。)的各位取反。3 3)补码)补码 正数的补码正数的补码等于原码;等于原码;负数的补码负数的补码为其反码为其反码+1+1。例:若用例:若用8 8位二进制数表示机器数,则位二进制数表示机器数,则1313的的补码为补码为0000110100001101;-13-13的补码为的补码为11110010+1=1111001111110010+1=1111001
35、1。对补码对补码取补取补可得到可得到相反数的补码。相反数的补码。-(-13-13)的补码为)的补码为00001100+1=00001101=1300001100+1=00001101=134 4)补码的性质与作用)补码的性质与作用 x+yx+y补补 =x=x补补 +y+y补补 x-yx-y补补 =x=x补补 +-y+-y补补 x补补 补补=x;=x;补码的补码等于原码补码的补码等于原码 如如 32-13=32+32-13=32+(-13-13)=00100000B+11110011B=00010011B=00100000B+11110011B=00010011B 而而13-32=0000110
36、1B+11100000B=11101101B13-32=00001101B+11100000B=11101101B =-19 =-19的补码的补码 采用补码可将减法转化为加法,而且采用补码可将减法转化为加法,而且符号位同数值符号位同数值位一同参与运算位一同参与运算,运算简单。,运算简单。引入补码的目的是引入补码的目的是:1 1)便于加减法运算;)便于加减法运算;2 2)使加)使加法和减法相统一,降低硬件复杂性。法和减法相统一,降低硬件复杂性。例如:有两个补码例如:有两个补码X=00100000B,Y=00001101B计算计算X-Y的过程如下:的过程如下:1)对)对Y取补,得到其相反数的补码取
37、补,得到其相反数的补码 (-Y)=11110011B2)启动)启动CPU中的加法器,计算中的加法器,计算X+(-Y)00100000B+11110011B=000010011B思考:计算思考:计算Y-X应怎样处理?应怎样处理?M M位二进制数能够表示的无符号数范围为:位二进制数能够表示的无符号数范围为:0 02 2M M-1-1 M M位二进制数能够表示的有符号数范围为:位二进制数能够表示的有符号数范围为:原码原码 -2-2M-1M-1+1+12 2M-1M-1-1-1 反码反码 -2-2M-1M-1+1+12 2M-1M-1-1-1 补码补码 -2-2M-1M-12 2M-1M-1-1-16
38、、无符号数和有符号数的表示范围、无符号数和有符号数的表示范围典型典型8 8位二进制数的码值位二进制数的码值 数值数值原码原码反码反码补码补码 1271277FH7FH7FH7FH7FH7FH 126 1267EH7EH7EH7EH7EH7EH 1 101H01H01H01H01H01H 0 000H/80H00H/80H00H/0FFH00H/0FFH00H00H -1 -181H81H0FEH0FEH0FFH0FFH -2 -282H82H0FDH0FDH0FEH0FEH -127 -1270FFH0FFH80H80H81H81H -128 -128/80H80H如上所述,一定位数的二进制数
39、能够表示的如上所述,一定位数的二进制数能够表示的数值范围是有限的。数值范围是有限的。两数相加或相减,结果超过该数字位能够表两数相加或相减,结果超过该数字位能够表示的示的无符号数无符号数范围(最高位产生进位),称范围(最高位产生进位),称为为进位进位。两数相加或相减,结果超过该数字位能够表两数相加或相减,结果超过该数字位能够表示的示的有符号数有符号数范围(与进位无关),称为范围(与进位无关),称为溢溢出出。进位和溢出是互不相干的两种情况。进位和溢出是互不相干的两种情况。课后自己结合进位和溢出概念给出具体算例。课后自己结合进位和溢出概念给出具体算例。7、进位与溢出、进位与溢出第二章第二章 Inte
40、l-8086微处理器结构微处理器结构2-1 Intel-80 x86系列微处理器概述系列微处理器概述型号型号发布发布年份年份字字长长晶体管晶体管数数(万)万)主频主频(MHz)数据数据总线总线外部外部总线总线地址地址总线总线寻址寻址空间空间高速高速缓存缓存80861978162.94.771616201MNo80881979162.94.77168201MNo8028619821613.46-2016162416MNo8038619863227.512.5-333232324GYes80486198932120-16025-1003232324G8KPentium(586)199332310-
41、33060-1666464324G8K8KPentiumPro(P6)199532550150-20064643664G8K8KPentium II199732750233-35064643664G32K512K 19711971年推出年推出Intel 4004Intel 4004芯片,被认为是世界芯片,被认为是世界上第一个上第一个微处理器微处理器(CPU)(CPU)。19781978年年Intel Intel 公司推出公司推出8086 CPU8086 CPU,1616位。位。19791979年又推出年又推出80888088,8 8位数据线,以满足与当时的位数据线,以满足与当时的8 8位机间的
42、兼容性。位机间的兼容性。IBMIBM公司进入个人计算机领域,采用公司进入个人计算机领域,采用Intel Intel 80888088芯片,使芯片,使Intel CPUIntel CPU成为主流。成为主流。2-2 Intel-8086微处理器结构微处理器结构1、8086概况概况 1616位微处理器位微处理器 地址总线地址总线2020条,寻址能力条,寻址能力2 22020=1MB=1MB DIP-40 DIP-40(双列直插式(双列直插式4040脚)封装脚)封装 2、8086的功能结构的功能结构 传统传统CPUCPU执行指令的过程是:取指令执行指令的过程是:取指令 执行指令执行指令 再取指令再取指
43、令,串行操作。,串行操作。而而80868086的取指令与执行指令操作是由两个不同的部的取指令与执行指令操作是由两个不同的部件完成,可同时进行。目的是提高件完成,可同时进行。目的是提高CPUCPU的执行速度。的执行速度。80868086从功能上可分成两部分:从功能上可分成两部分:总线接口部件总线接口部件BIU(BusBIU(Bus Interface Unit);Interface Unit);执行部件执行部件EU(ExecutionEU(Execution Unit)Unit)。总线接口部件总线接口部件BIUBIU负责与内存或负责与内存或I/OI/O端口进行端口进行指指令和数据传送;执行部件指
44、指令和数据传送;执行部件EUEU负责指令执行。负责指令执行。BIUBIU从内存中取指令送到指令队列;从内存中取指令送到指令队列;当当EUEU执行指令时,执行指令时,BIUBIU要配合要配合EUEU从指定的从指定的内存单元或内存单元或I/OI/O端口中读取数据,或者把端口中读取数据,或者把EUEU的的操作结果送到指定的内存单元或操作结果送到指定的内存单元或I/OI/O端口去。端口去。3、8086的存储器组织的存储器组织1)80861)8086寻址能力的扩展寻址能力的扩展 存储器由很多个存储器由很多个8 8位的存储单元组成,每个存储单位的存储单元组成,每个存储单元对应于一个元对应于一个地址地址编码
45、。编码。CPUCPU要访问某存储单元,要访问某存储单元,需将该单元地址发到地址总线需将该单元地址发到地址总线。80868086内部与地址有关的寄存器均为内部与地址有关的寄存器均为1616位,只能位,只能寻址寻址2 21616=64KB=64KB的存储器空间。的存储器空间。为了扩大为了扩大CPUCPU可访问的存储器容量,可访问的存储器容量,8086 CPU8086 CPU采用采用两个寄存器来形成地址:两个寄存器来形成地址:段地址寄存器、偏移地址段地址寄存器、偏移地址寄存器寄存器。这样,这样,80868086实际上有实际上有2020条地址线,能够访问的存储条地址线,能够访问的存储单元数(即单元数(
46、即寻址能力寻址能力)为)为2 22020=1MB=1MB;地址范围:地址范围:00000H00000H0FFFFFH0FFFFFH2)80862)8086中中2020位地址的生成位地址的生成 将将1MB1MB存储空间分成若干个不超过存储空间分成若干个不超过64KB64KB的区段,称的区段,称为存储器的为存储器的段段(SegmentSegment)。)。每个存储段有一个每个存储段有一个1616位的基准地址,称为位的基准地址,称为段地址段地址;以段地址为基准,段内各存储单元的相对地址称为以段地址为基准,段内各存储单元的相对地址称为偏移地址偏移地址(1616位);位);段地址存放在段地址存放在CPU
47、CPU的的段寄存器段寄存器中;偏移地址存放在中;偏移地址存放在偏移地址寄存器偏移地址寄存器中。中。2020位物理地址位物理地址=16 16位段地址位段地址2 24 4(左移四位)(左移四位)+16+16位偏移地址位偏移地址例如:段地址为例如:段地址为2500H2500H,偏移地址,偏移地址9700H9700H 则形成的物理地址为则形成的物理地址为250025000 0H+9700H=2E700HH+9700H=2E700H16位段地址16位段地址0000000016位偏移地址16位偏移地址0 015150 0151520位物理地址20位物理地址0 01919+3)3)物理地址、逻辑地址物理地址
48、、逻辑地址 物理地址物理地址:存储器中各存储单元的实际地址。:存储器中各存储单元的实际地址。逻辑地址逻辑地址:用段地址和偏移地址表示的相对:用段地址和偏移地址表示的相对地址。地址。表示形式表示形式为为 段地址段地址:偏移地址偏移地址 如如 2000H:1340H2000H:1340H 一个物理地址可对应多个逻辑地址;一个物理地址可对应多个逻辑地址;如物理地址如物理地址12345H12345H,逻辑地址可以是,逻辑地址可以是 1234H:0005H1234H:0005H;1200H:0345H1200H:0345H;1100H:1345H1100H:1345H4 4)段的种类)段的种类 有了段寄
49、存器,可将有了段寄存器,可将1M1M的存储空间分成很多的存储空间分成很多个段;个段;为便于管理,为便于管理,80868086设计上将不同的存储内容设计上将不同的存储内容存放在不同的段中;分为存放在不同的段中;分为代码段代码段、数据段数据段、堆栈段堆栈段和和附加段附加段。用户编写的程序放在代码段中,使用的数据用户编写的程序放在代码段中,使用的数据放在数据段中。放在数据段中。4、8086的寄存器组的寄存器组 数据寄存器:数据寄存器:AX、BX、CX、DX 指针及变址寄存器:指针及变址寄存器:SP、BP、SI、DI 段寄存器:段寄存器:CS、DS、ES、SS 指令指针指令指针IP (Instruct
50、ion Pointer)状态标志寄存器状态标志寄存器PSW(Program State Word)说明说明 数据寄存器和指针及变址寄存器又统称数据寄存器和指针及变址寄存器又统称通用通用寄存器寄存器;指令指针与状态标志统称控制寄存器;指令指针与状态标志统称控制寄存器;所有寄存器均为所有寄存器均为16位位。1)数据寄存器)数据寄存器 AXAX:通用寄存器;算术运算的主寄存器:通用寄存器;算术运算的主寄存器累加器(累加器(AccumulatorAccumulator);BXBX:通用寄存器:通用寄存器;一些指令中作为一些指令中作为基址基址(Base)(Base)寄存器寄存器;CXCX:通用寄存器:通
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。