计算机组成原理(2)
运算器和运算方法
如何以加法器为基础,实现各种运算处理
解决思路:
复杂运算->四则运算->加法运算
解决方法:
在加法器的基础上,增加移位传送功能,并选择输入控制条件
运算器组织
寄存器组
独立结构(有独立的输入,输出)
小型存储器结构
单口:只有一个地址输入端,一个数据端口
双口:两个地址输入端,两个数据端口
独立R,双口RAM用多路选择器作为ALU的输入逻辑
单口RAM用锁存器作为ALU的输入逻辑
带多路选择器的运算器
R(寄存器)各自独立
可同时向ALU提供两个操作数;
采用单向内总线
带输入锁存器的运算器
单口RAM不能同时向ALU提供两个操作数
用锁存器暂存操作数
采用双向内总线
位片式运算器
用双口作通用寄存器组,可同时提供数据
用多路选择器存操作数
ALU增加乘除功能,用乘商寄存器放乘数,乘积或商
定点加减运算
补码加减法
数据用补码表示,符号位参加运算
基本关系式
(x+y)补 = x补 + y补
操作码为加时,两数直接相加
(x-y)补 = x补 + (-y)补
当操作码为减时,将减转换为加
y补转为(-y)补(讲y补变补):不管y补 为正或负,将其符号连同尾数一起各位变反,末尾加一
注意:某数的补码表示与某数变补的区别
补码表示 : 符号位不变,复数的尾数要改变,正数尾数不变
变补:符号位改变,尾数改变(尾数指符号位后面的所有) 补码的机器负数
算法流程操作数用补码便是,符号位参加运算 ADD既x补+y补 SUB既x补+(-y)补 结果为补码表示,符号位指示结果正负
逻辑实现
控制信号
加法器输入端 将两个数送入ALU算数逻辑运算部件
加法器输入端 讲运算结果送入输入端
溢出判断
硬件判断逻辑一
两个数据的符号与结果的符号不一致
硬件判断逻辑二
尾数最高位 符号位与尾数最高位的进位不一致
硬件判断逻辑三
双符号位不一致
移位操作
移位类型
逻辑移位:数码的位置变化,数值不变
算数移位:数码位置变化,数值变化,符号位不变
正数补码移位规则
单符号位 00111 01110 00111 00011
双符号位 000111 001110 011100 001110 000111
移位规则
数位不变(单:符号位不变; 双:第一符号位不变)
空位补0(右移时第二符号位移至尾声最高位)
负数补码移位规则
单符号位 11011 10110 11011 11101
双符号位 110110 101100 110110 111011
移位规则
数符不变(单:符号位不变;双:第一符号位不变)
左移空位补0
右移空位补1(第二符号位移到尾数最高位)

浙公网安备 33010602011771号