运算前X、Y寄存器分别存储被加(减)数 和 加(减)数,计算结果存回X寄存器;F为加法器能在命令X→F和Y→F信号的控制下接收两个寄存器中的数据并完成加法运算,运算結果在F→X命令信号的控制下接收回X寄存器中
为实现减运算,应将Y寄存器中补码数据的负数表示送到加法器F这可以通过送Y寄存器中烸位数据的反码并在F的最低位给出进位1输入信号变通完成,用/Y→F和1→F控制命令实现
运算前X、Y寄存器分别存储被加(减)数 和 加(减)数,计算结果存回X寄存器;F为加法器能在命令X→F和Y→F信号的控制下接收两个寄存器中的数据并完成加法运算,运算結果在F→X命令信号的控制下接收回X寄存器中
为实现减运算,应将Y寄存器中补码数据的负数表示送到加法器F这可以通过送Y寄存器中烸位数据的反码并在F的最低位给出进位1输入信号变通完成,用/Y→F和1→F控制命令实现
浮点运算器 计算机实现浮点运算 軟件实现:利用定点运算部件根据算法流程图,编写浮点四则运算子程序供用户调用 低档机结构简单,速度慢 设置可选浮点协处理器 80287和80387,速度较快 将协处理器与CPU集成 80486以后的CPU。 采用浮点流水运算部件形成流水作业。 进一步加快浮点运算的速度 奔腾以后的CPU。 浮点运算器80X87 美国Intel公司生产的专用浮点数运算的处理器配合80X86CPU进行工作,所以又称为协处理器 80X87与主CPU的并行工作 80X87有自己的浮点运算指令,但不能读寫主存真正的读写主存的工作是由主CPU执行。 主CPU从主存读取浮点运算指令送80X87,由80X87译码并执行 80X87运算期间,主CPU取下一条其他指令予以执行因而实现了并行工作。 如80X87执行过程中主CPU又送来了一条浮点指令,则80X87给出“忙”信号 当80X87完成浮点运算,取消“忙” 信号主CPU才发送下┅条浮点运算指令。 80X87可处理多种数据类型 整数、浮点数、压缩十进制数等 80X87的内部结构 第六次课+习题 * * * * * * * * * * * * * * * * * * * * 阵列除法器 逻辑结构图 被除数 x=0.x1x2x3x4x5x6 (双倍长) 除数 y=0.y1y2y3 (X<Y) 商数 q=0.q1q2q3 余数 r=0.00r3r4r5r6 字长 n+1=4 第一行做减法(P=1),由于X<Y余数<0,商的个位q0上0 第二行做加法,余数加上右移一位后的Y 由余数的正负决定第二位商q1是1或0。 由q1控制第三行做加法或减法依次类推。 余数 r=(0.00r3r4r5r6)=0.000110 阵列除法器完成除法运算示例 第四次课结束 2.5 定点运算器的组成 ALU 算术逻辑单元实现基本算术、逻辑运算。 寄存器组 提供操作数与暂存运算结果 多路选择器或锁存器 向ALU提供操作数。 内部总线 运算器内部的数据通路用来传输运算过程中的数据。 判别逻辑和控制电路 多功能算逻单元ALU ALU:算逻单元是運算器的核心。 是由多个全加器构成的并行加法器; 既可以完成算术运算 加、减、乘、除 又可以完成逻辑运算 与、或、非、异或 每一位都昰逻辑数无符号位、数值位、阶码、阶符之分。 简单位运算:位与位之间没有进/借位关系 P51 为完成多种算/逻运算,由4位控制参数S0~S3的不同組合对Ai 、Bi进行控制产生函数Xi和Yi ,送全加器运算 ALU的基本思想 全加器 函数发生器 S0~S3 Xi Yi