运算方法与运算部件
一.ALU(算数逻辑部件)
什么是ALU:算术逻辑部件(ALU)来完成基本逻辑运算和定点数加减运算,各类定点乘除运算和浮点数运算可以利用加法器或ALU和移位器来实现,基本运算部件是ALU,加法器和移位器,ALU的核心是加法器
进行基本算术运算与逻辑运算
无符号整数加、减
带符号整数加、减
与、或、非、异或等逻辑运算
核心电路是整数加/减运算部件
输出除和/差等,还有标志信息
有一个操作控制端(ALUop),用来决定ALU 所执行的处理功能。ALUop的位数k决定了操 作的种类例如,当位数k为3时,ALU最多只有 23=8种操作。
接下来,我们将结合习题,学会定点数一位乘法(原码一位乘法、补码一位乘法[布斯公式])。定点数的加减不作重点,贴上一些例题,以供大家参考
二.定点数一位乘法(原码一位乘法、补码一位乘法[布斯公式])
1.原码一位乘法
用原码实现乘法运算时,符号位与数值位分开计算,因此原码乘法运算分为两步:
①确定成积的符号位,由两个乘数的符号位异或得到
②计算乘积的数值位,成绩的数值部分为两个乘数数值部分之积
改进手算方法,连加变为累加、部分积改为右移,
再来看个例子熟悉一下
2.补码一位乘法(布斯公式)
布斯公式:(推导过程略)
补码一位乘法和原码一位乘法的区别:
①补码一位乘法中符号位也参加运算,原码一位乘法符号位不参加
②补码一位乘法中的移位操作为算术右移,原码中为逻辑右移
好的,结合公式和与原码一位乘法的区别,我们直接来看一道例题,通过这个例题来熟悉布斯公式。
三.浮点数的加减乘除(特别注意尾数规格化)
浮点数加减:
浮点数乘除