




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理与接口技术 主讲:陆强 信息工程学院计算机结构教研室 l 第一章 微处理器技术基础 1.1 微处理器的发展简史 1.2 微处理器有关的技术名词 1.3 计算机编码及总线的概念 1.4 8086/8088微处理器内部结构 1.3 计算机编码及总线的概念 1.3.1 计算机中常用的进制数 人们最常用的数是十进制数,计算机中采用的是二 进制数,同时有的时候为了简化二进制数据的书写,也 采用八进制和十六进制表示方法。下面将分别介绍这几 种常用的进制。 一、 十进制数 十进制数是大家熟悉的,用0,1,2,8,9十个 不同的符号来表示数值,它采用的是“逢十进一,借一当 十”的原则。 1.3.1 计算机中常用的进制数 二、二进制表示法 基数为2的记数制叫做二进制。 二进制数的计算规则是“逢二进一,借一当二”。 例:二进制数1011.1表示如下: (1011.1)B= 1 * 23 + 0 * 22 + 1 * 21 + 1 * 20 +1 * 2-1 1.3.1 计算机中常用的进制数 运算规则: 加法运算: 0+0 = 0 0+1 = 1 1+0 = 1 1+1 =10 (逢二进一) 减法运算: 0-0 = 0 10-1 =1 (借位) 1-0 = 1 1-1 =0 乘法运算: 0 * 0 =0 0 * 1 =0 1 * 0 =0 1 * 1 =1 除法运算 0 / 1 =0 1 / 1 =1 1.3.1 计算机中常用的进制数 三、 八进制表示法 八进制数是基数为八的计数制。八进制数主要采用 0,1,2,7这八个阿拉伯数字。 八进制数的运算规则为“逢八进一,借一当八”。 例:(467.6)O=4 * 82 + 6 * 81 + 7 * 80 + 6 * 8-1 1.3.1 计算机中常用的进制数 四、 十六进制表示法 基数为16,用0 - 9 、A - F 十六个字符来数值,逢十六进 一。各位的权值为 16i 。 例:(56D.3)H = 5 * 162 + 6 * 161 + 13 * 160 + 3 * 16-1 1.3.2 进制间的转换 一 、 二进制数和十进制数之间的转换 (1)二进制数转换为十进制数 方法:按二进制数的位权进行展开相加即可。 例:11101.101 =124+123+122+021+120+12-1+02-2+12-3 =16+8+4+0+1+0.5+0.25+0.125 =29.875 1.3.2 进制间的转换 (2)十进制数转换为二进制数 方法: A、将整数部分和小数部分分别进行转换,然后再把转换结 果进行相加。 B、整数转换采用除2取余法:用2不断地去除要转换的数, 直到商为0。再将每一步所得的余数,按逆序排列,便可得转 换结果。 C、小数转换采用乘2取整法:每次用2与小数部分相乘,取 乘积的整数部分,再取其小数部分乘2直到小部分为0。将所 取整数顺序放在小数点后即为转换结果。 1.3.2 进制间的转换 2 136 余数(结果) 低位 2 68 - 0 2 34 - 0 2 17 - 0 2 8 - 1 2 4 - 0 2 2 - 0 2 1 - 0 0 - 1 高位 例:将(136)D转换为二进制数。 转换结果:(136)D=(10001000)B 1.3.2 进制间的转换 转换结果:(87)D=(01010111)B 例:将(87)D转换为二进制数。 2 87 余数(结果) 低位 2 43 - 1 2 21 - 1 2 10 - 1 2 5 - 0 2 2 - 1 2 1 - 0 0 - 1 高位 1.3.2 进制间的转换 例:将(0.625)D转换为二进制数。 0.625 * 2 1.25 * 2 0.5 * 2 1.0 取整: 高位 低位 转换结果:(0.625)D = (0.101)B 例:将(0.1)D转换为二进制数。 0.1 * 2 0.2 * 2 0.4 * 2 0.8 * 2 1.6 * 2 1.2 * 2 (循环) 取整: 高位 低位 转换结果:(0.1)D (0.00011)B 1.3.2 进制间的转换 二、 二进制数和八进制数、十六进制数间的转换 (1)二进制数到八进制数、十六进制数的转换 A、二进制数到八进制数转换采用“三位化一位”的方法。从小数 点开始向两边分别进行每三位分一组,向左不足三位的,从左 边补0;向右不足三位的,从右边补0。 B、二进制数到十六进制数的转换采用“四位化一位”的方法。从 小数点开始向两边分别进行每四位分一组,向左不足四位的, 从左边补0;向右不足四位的,从右边补0。 例:将(1000110.01)B转换为八进制数和十六进制数。 1 000 110 . 01 001 000 110 . 010 ( 1 0 6 . 2 )O 1.3.2 进制间的转换 二进制数到十六进制数的转换: (1000110.01)B = 100 0110 . 01 0100 0110 . 0100 (4 6 . 4)H (2)八进制、十六进制数到二进制数的转换 方法:采用“一位化三位(四位)”的方法。按顺序写出每位八 进制(十六进制)数对应的二进制数,所得结果即为相应的二 进制数。 例:将(352.6)o转换为二进制数。 3 5 2 . 6 011 101 010 110 =(11 101 010 . 11)B 1.3.3 带符号数的表示方法 1.3.3 带符号数的表示方法 计算机中的带符号的数,用二进制编码表示,数的符号 也用二进制表示。 带符号的数有三种表示方法: 1、原码 2、反码 3、补码 数X的原码记作X原 反码记作X反 补码记作X补 一、原码表示法: 原码用数的最左边一位(MSB)表示数的正负, 即在D7或D15位加0或1。 符号位:0表示正,1表示负; 数值位:真值的绝对值。 1.3.3 带符号数的表示方法 X原= X 0 X 2n-1-1 2 n-1 + X -(2 n-1-1) X 0 1.3.3 带符号数的表示方法 例:求X1=+1101011,X2=-0111011的原码表示。 (8位) X1原 = X1 = 01101011 X2原 = X2 = 10111011 例:求X1=1011,X2=-1011的原码。(8位) X1原=00001011 X2原=10001011 练习: 求+18和-18的原码。 1.3.3 带符号数的表示方法 0的表示形式(8位) +0原=00000000 -0原=10000000 特点: A、原码与真值的对应关系简单。 B、0的编码不唯一,处理运算不方便。 1.3.3 带符号数的表示方法 问题: A、一个负数和一个正数相加,和的符号位不是两符号直接运算 的值:0+1=1,而是由两数的大小决定。即由两数中绝对值大的 数决定。 B、两个负数相加,由于1+1=10,因此和的符号也不是由两符号 位直接运算的结果决定的。 二、反码表示法: 若X0 ,则 X反=X原 若X0, 则 X反= 对应原码的符号位不变,数值部 分按位求反。 1.3.3 带符号数的表示方法 练习: 求-52的原码和反码。 特例:0的反码也不唯一! +0 反= 0 0000000B - 0 反= 1 1111111B +1100111反=01100111 -1100111反=10011000 三、补码表示法: 1.3.3 带符号数的表示方法 方法:正数的补码和原码相同。 负数的补码=相应反码+1。 X补= X 0X 2n-1-1 2 n + X -2 n-1 X 0 1.3.3 带符号数的表示方法 练习: 求-52的补码。 例:求+127和 -128的补码。(8位) +127补=01111111原=01111111 -128补=28-128=100000000-10000000=10000000 -0补=-0000000反+1=11111111+1=00000000 0补=+0补=-0补=00000000 四、注意的问题: 1.3.3 带符号数的表示方法 1、两个运算原则: X反反=X原 X补补=X原 X+Y补=X补+Y补 X-Y补=X补- Y补 2、补码运算的性质: 3、补码运算时,其符号位要与 数值部分一起参加运算,但结果 不能超出范围,否则会出现溢出 错误。 4、符号运算后如有进位,则把 这个进位舍掉不要。 1.3.3 带符号数的表示方法 五、补码运算: 例: 用补码进行下列运算: (+33)+(+15) (-33)+(+15) (+33)+(-15) (-33)+(-15) 1.3.3 带符号数的表示方法 00100001B+33补 11011111B-33补 + 00001111B+15补 + 00001111B +15补 00110000B+48补 11101110B-18补 1.3.3 带符号数的表示方法 00100001B+33补 11011111B-33补 + 11110001B-15补 + 11110001B-15补 1 00010010B+18补 111010000B-48补 进位,丢掉进位,丢掉 1.3.3 带符号数的表示方法 1、已知X原=01101000B,Y原=10001000B, 求X+Y补=? 2、已知X原=10001101B,Y原=10000001B, 求X+Y补=? 练习: 在计算机内, 任何信息都是用代码表示的,字母、数 字和符号(以后简称为字符)也是用代码表示的。一般情况 下,计算机依靠输入设备把要输入的字符编成一定格式的 代码,然后才能接收进来。输出则是相反过程,为了在输 出设备输出字符,计算机要把相应的字符的编码送到外部 输出设备。 目前国际上使用的字符编码系统有许多种。 1.3.4 计算机中常用编码 一、编码介绍: 二、 ASCII字符编码 1.3.4 计算机中常用编码 全称是“美国信息交换标准代码”。 见ASCII码字符表。 说明: 用8位表示字符代码,其基本代码占7位,第8位用作 奇偶校验位,用以检测字符在传送过程中是否出错。 (奇校验:1的个数是奇数;偶校验:1的个数是偶数; ) ASCII码采用 7 位二进制代码来对字符进行编码。 它 包括 32 个通用控制符号,10 个阿拉伯数字, 52 个英文大 、小字母, 34 个专用符号, 共 128 个。例如阿拉伯数字 0 9 的ASCII码分别为 30H39H, 英文大写字母A、 B、 、Z的ASCII码是从 41H开始依次往下编排。并非所有 的ASCII字符都能打印, 有些字符为控制字符用来控制退 格,换行和回车等。 ASCII代码还包括几个其它的字符, 例如文件结束(EOF)、 传送结束(EOT), 用作传送和存储 数据的标志。 1.3.4 计算机中常用编码 通常,7 位ASCII代码在最高位添加一个“0”组成 8 位代码。因 此,字符在计算机内部按 8 位一组存储,正好占一个字节。 在存 储和传送信息时,最高位常用作奇偶校验位, 用来检验代码在存 储和传送过程中是否发生错误。偶校验时,每个代码的二进制形 式中应有偶数个 1。例如传送字母“G”,其ASCII码的二进制形式为 1000111,因有 4 个 1, 故偶校验位为 0, 8 位代码将是 01000111 。 奇校验每个代码中应有奇数个 1。 若用奇校验传送字符“G”,则 8 位代码为 11000111。 奇偶校验只具有发现代码在存储和传送过 程中出现奇数个位出现错误 的能力。 由于它简单可行, 所以在计 算机中, 广泛地被用于信息的存储和传送过程。 1.3.4 计算机中常用编码 1.3.4 计算机中常用编码 三、压缩BCD码 1.3.4 计算机中常用编码 定义: 用4位二进制数表示一位十进制数,也叫8-4-2-1码。 例题:十进制数4256的压缩BCD码表示为: 0100 0010 0101 0110 B 四、非压缩BCD码 定义: 用8位二进制数表示一位十进制数,这时高4位无意义 ,低4位是一个BCD码。 注意:数字的ASCII码是一种非压缩的BCD! xxxx0100 xxxx0010 xxxx0101 xxxx0110 B 例题:十进制数4256的压缩BCD码表示为: 1.3.4 计算机中常用编码 1.3.5 微型计算机系统的三总线 一、几个概念的介绍: 1、总线:传递信息的一组公用导线。 2、系统总线:从处理器引出的若干信号线,CPU通过它们 与存储器或I/O设备进行信息交换。 系统总线分为: 数据总线、地址总线和控制总线。 二、数据总线(DB): 作用:传送数据或代码。 其条数与处理器字长相等。 如:8086的内、外数据线均为16位,记作D0D15。 1.3.5 微型计算机系统的三总线 在CPU进行读操作时,内存或外设的数据通过 数据总线送往CPU; 在CPU进行写操作时,CPU数据通过数据总线 送往内存或外设,数据总线是双向总线。 CPU在地址总线上输出将要访问的内存单元 或I/O端口的地址,该总线为单向总线。 三、地址总线(AB): 作用:传送地址信息。 其条数与微处理器寻址存储器单元的范围有关。 如:8086的地址线为20位,可以寻址220=1048576B1M 的存储单元,地址范围为00000HFFFFFH。 1.3.5 微型计算机系统的三总线 1.3.5 微型计算机系统的三总线 四、控制总线(CB): 作用:传送控制信号。(输出控制信号和输入控制信号) 一部分是从CPU输出:通过对指令的译码,由CPU 内部产生,由CPU送到存储器、输入/输出接口电路和其 它部件。如时钟信号、控制信号等。 另一部分是由系统中的部件产生,送往CPU,如: 中断请求信号、总线请求信号、状态信号。 控制总线的方向: 1.4 8086/8088微处理器内部结构 1.4.1 8086的基本结构 8086CPU的内部由两个独立的工作部件组成,即执行部件 EU(Execution Unit)和总线接口部件BIU(Bus Integerface Unit) 其中EU不与系统总线连接,只负责指令的执行, BIU则 根据EU的请求,完成CPU与存储器或I/O设备之间的数据传送 。 两部分各自执行自己的功能并行工作,这种工作方式与 传统的计算机在执行指令时的串行工作相比极大的提高了工 作效率。 20位 AH AL BH BL CH CL DH DL SP BP DI SI 通 用 寄 存 器 运算寄存器 ALU 标志 执行部分 控制电路 1 2 3 4 5 6 CS DS SS ES IP 内部寄存 器 I/O 控制 电路 地址加 法器 16位 8位指令队列缓冲器 外 总 线 执行部件总线接口部件 8086CPU结构图 1.4.1 8086的基本结构 一、执行部件EU: 功能:从BIU的指令队列中取出指令代码,经指令译码 器译码后执行指令所规定的全部功能。执行指令所得结果或 执行指令所需的数据,都由EU向BIU发出命令,对存储器或 I/O接口进行读/写操作。 1.4.1 8086的基本结构 1、算术逻辑单元(ALU): 核心是16位的二进制加法器。 功能: (1)进行所有的算术和逻辑运算。 (2)按指令的寻址方式计算出寻址单元的16位的偏移 地址或有效地址EA(Effecy Address),并将此偏移地址送到 BIU中形成一个20位的实际地址,以实现1M字节的存储空 间寻址。 1.4.1 8086的基本结构 2、状态标志寄存器(Flags): 该寄存器为16位,用来反映CPU运算后的状态特征或 存放控制标志。 D0D15 OF DF IF TF SF ZF AF PF CF/ 其中9位有效位(6位状态标志位,3位控制标志位), 7位无效位。 1.4.1 8086的基本结构 (1)状态标志位:用来反映EU执行算术或逻辑运算以后的结果特征。 CF:进位标志。 CF=1表示指令执行结果在最高位产生了一个进位或借位; CF=0表示无进位或借位产生。 AF:辅助进位标志(又叫半进位标志)。 AF=1表示字节操作时,结果的低4位产生了一个进位或借位; AF=0表示无进位或借位产生。 OF:溢出标志 。 OF=1表示带符号数在进行算术运算时产生了算术溢出; OF=0表示无溢出。 1.4.1 8086的基本结构 功能:当运算结果超出了范围, 8位为-128-+127, 16位为-3276832767, 那样就会产生溢出,即OF为1。 备注:溢出只能出现在两个同号数相加 或两个异号数相减的情况下。 OF的判断:次高位向最高位进位与最高位进位的异或, 如果值为1,溢出,否则没有溢出。 1.4.1 8086的基本结构 具体地讲, 对于加运算, 如果次高位(数值部分最高位)形成 进位加入最高位,而最高位(符号位)相加(包括次高位的进位 )却没有进位输出时;或者反过来,次高位没有进位加入最高 位,但最高位却有进位输出时,都将发生溢出。 因为这两种 情况分别是:两正数相加,结果超出了范围,形式上变成了 负数;两负数相加,结果超出了范围,形式上变成了正数。 对于减运算,当次高不需从最高位借位,但最高位却需借位( 正数减负数,差超出范围); 或者反过来,次高位需从最高 位借位, 但最高位不需借位(负数减正数,差超出范围), 也会出现溢出。 1.4.1 8086的基本结构 SF:符号标志。 SF=1表示运算结果为 负数; SF=0表示运算结果不为负数。 PF:奇偶标志 。 PF=1表示运算结果的低八位所含1的个数为偶数。 PF=0表示指令执行结果中有奇数个1。 ZF:零标志 。 ZF=1表示运算结果为零; ZF=0表示运算结果不为零。 1.4.1 8086的基本结构 举例: 0101 0100 0011 1001 + 0100 0101 0110 1010 1001 1001 1010 0011 显然,运算结果最高位为1,所以,SF=1;由于运算结果 本身部位0,所以ZF=0;由于低8位所包含的1的个数为 4,为偶数,所以PF=1;由于 最高位没有向前进位,所 以CF=0;运算过程中,第3位向第4位产生了进位,所以 AF=1;由于低位向最高位产生了进位,而最高位没有向 前产生进位,所以OF=1。 1.4.1 8086的基本结构 练习: 分析01100110+01010110运算对标志的影响. (2)控制标志位:用来控制CPU的操作,它由程序设置或由程序 清除。 DF:方向标志。用来控制数据串操作指令的地址步进方向。 DF=1表示数据串指令将以地址的递减顺序对数据串数据进行处理; DF=0表示数据串指令将以地址的递增顺序对数据串数据进行处理。 。 IF:中断允许标志 。 IF=1表示8086CPU开中断; IF=0表示8086CPU关中断。 TF:陷阱标志或单步操作标志 。 TF=1表示8086CPU处于单步工作方式; TF=0表示8086CPU正常执行程序。 1.4.1 8086的基本结构 3、数据暂存寄存器: 1.4.1 8086的基本结构 功能:协助ALU完成运算,对参加运算的数据进行暂存。 4、通用寄存器组: (1)通用寄存器(数据寄存器) : AX、BX、CX、DX 。可以作16位或作两个8位来使用。 (2)专用寄存器: SP-堆栈指针寄存器 BP-基址指针寄存器 DI-目的变址寄存器 SI- 源变址寄存器 指针寄存器 变址寄存器 1.4.1 8086的基本结构 5、控制单元: 功能:接收从BIU的指令流队列中来的指令,经过指令 译码器译码,形成各种控制信号,对EU的各个部件实现 完成规定的操作。 总线接口部件BIU内部设有四个16位段地址寄存器 :代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS 和附加段寄存器ES,一个16位指令指针寄存器IP,一个6 字节(对8086而言)指令队列缓冲器,20位地址加法器 和总线控制电路。 二、总线接口部件BIU : 1.4.1 8086的基本结构 主要功能:根据执行部件EU的请求,负责完成CPU 与存储器或I/O设备之间的数据传送。 1.4.1 8086的基本结构 1、指令队列缓冲器: 功能:用来暂存一组预取指令,即在执行指令的同时, 从内存中取下一条指令,并放入指令队列缓冲器中。采用 “先进先出”原则,顺序存放,顺序被取到EU中去执行。 2、指令指针寄存器IP: 它是一个16位的寄存器,存放EU要执行的下一条指令 (预取指令)的偏移地址(段内地址),用以控制程序中指 令的执行顺序,实现对代码段指令的跟踪 。 1.4.1 8086的基本结构 3、地址产生器: 由于指令指针和通用寄存器都是16位,因而寻址范围只有 64K字节。8086为了实现1MB的存储单元的寻址,采用分段管 理方式。由段寄存器提供段地址,指令(IP)提供偏移地址, 经地址产生器(加法器)运算产生20位的物理地址PA(Physical Address),此地址也称为实际地址。 逻辑地址LA(Logic Address):是在程序中使用的 地址,它由段地址和偏移地址两部分组成(16位)。 表示形式为:“段地址偏移地址” 1.4.1 8086的基本结构 补充: 物理地址PA:就是存储器的实际地址,它是指CPU和 存储器进行数据交换时所使用的地址(20位)。 物理地址=段地址10H偏移地址 存储器中的每个存储单元都可以用两个形式的地址 来表示:实际地址(或称物理地址)和逻辑地址。 1.4.1 8086的基本结构 段寄存器值 偏移量 + 物理地址 16位 4位 16位 20位 存储器物理地址的计算方法 段基址:CS、DS、ES、SS。 偏移地址:IP、DI、SI、BP、SP等。 1.4.1 8086的基本结构 例题: 计算逻辑地址035AH:32B8H的物理地址PA。 练习: 计算逻辑地址1645H:3BA0H的物理地址PA。 4、总线控制逻辑: 1.4.1 8086的基本结构 功能:用来分时传送20位地址信号和16位数据信号、4位 状态信号以及其他控制信号的输入与输出。 5、段寄存器: CS:16位代码段寄存器 DS:16位数据段寄存器 ES:16位附加段寄存器 SS:16位堆栈段寄存器 CS 0000 IP 代码段 DS或ES 0000 SI、DI或BX SS 0000 SP或BP 数据段 堆栈段 存储器 段寄存器和偏移地址寄存器组合关系 1.4.1 8086的基本结构 1、20位地址的形成,并将此地址送至程序存储器指定单元 ,从该单元取出指令字节,依次放入指令队列中。 2、每当8086的指令队列中有2个空字节,8088指令队列中 有1个空字节时,总线接口部件就会自动取指令至队列中。 3、执行部件从总线接口的指令队列首取出指令代码,执行 该指令。 4、当队列已满,执行部件又不使用总线时,总线接口部件 进入空闲状态。 5、执行转移指令、调用指令、返回指令时,先清空队列内 容,再将要执行的指令放入队列中。 三、补充-8086/8088CPU执行程序的操作过程: 1.4.2 8086的内部寄存器功能 8086CPU中可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制衣小厂转让合同范例
- 制砂厂加工合同样本
- 与艺人合作合同样本
- 个人资金赠予合同样本
- 代理酒厂产品合同样本
- 农业肥料代理销售合同标准文本
- 会计软件合同范例
- 中介合同合同样本
- 办公家具买卖合同标准文本
- 加盟健康中心合作合同样本
- 2025年科普知识竞赛题及答案(共100题)
- 地下混凝土水池蓄水试验方案20240401
- 头晕、抑郁与焦虑关系解析与应对策略
- 初中入团考试题型及答案
- 2025年北京卫生职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 2025年河南推拿职业学院单招职业技能考试题库含答案
- 深基坑工程施工中的自动化设备应用
- 烟草公司办公楼物业服务方案
- 口腔保健科普讲座(幼儿园)课件
- 2024-2025学年全国版图知识竞赛考试题库资料(含答案)
- (完整)交管12123学法减分试题库带参考答案
评论
0/150
提交评论