运算方法
定点数运算:
加减法:在计算机中,定点数的加减法通常采用补码形式进行,以简化运算过程。补码加减法的基本规则是“同号相加,异号相减,并将符号位参与运算”。 乘法:定点数的乘法运算可以通过“累加-左移”或“阵列乘法器”等方式实现。在“累加-左移”方法中,每次将乘数的某一位与被乘数相乘,并将结果累加到部分积上,然后左移一位,重复此过程直至乘数的所有位都被处理完毕。 除法:定点数的除法运算通常采用“恢复余数法”或“加减交替法”。在“恢复余数法”中,每次试商后,若余数不够减除数,则恢复余数并调整商值;在“加减交替法”中,则通过交替进行加法和减法来逼近商值。
浮点数运算:
浮点数的加减运算需要先进行对阶操作,使两个操作数的阶码相同,然后进行尾数的加减运算,最后调整阶码和规格化结果。 浮点数的乘除运算则相对简单,乘法运算时阶码相加,尾数相乘;除法运算时阶码相减,尾数相除。
运算电路
算术逻辑单元(ALU):
ALU是计算机中执行算术和逻辑运算的核心部件,能够完成加、减、乘、除等基本运算以及逻辑与、或、非等逻辑运算。 ALU通常由多个全加器、寄存器以及控制逻辑组成,通过不同的控制信号实现不同的运算功能。
乘法器与除法器:
乘法器:乘法器可以分为组合逻辑乘法器和时序逻辑乘法器两种。组合逻辑乘法器能够在一个时钟周期内完成乘法运算,但电路复杂度较高;时序逻辑乘法器则通过多个时钟周期逐步完成乘法运算,电路复杂度较低。 除法器:除法器的实现方式与乘法器类似,也可以分为组合逻辑除法器和时序逻辑除法器两种。在计算机中,除法运算通常比乘法运算更复杂,因为需要考虑商的确定、余数的恢复或调整等问题。