前面介绍过无符号数相乘的电路:点击查看。 因为原码的数值位相乘时,也要使用这种无符号数相乘的算法,所以,在计算机教材中,就把无符号数相乘称之为:原码一位乘法。 但是,教材中所介绍的原码乘法,也就是小学学过的乘法而已,并无任何新意。 而且,在教材上,只是介绍了乘法算法,也没有提供电路。
计算机教材所介绍的原码乘法,在求乘积的绝对值时,是使用无符号数来相乘。 在求乘积的符号位时,是用两个因数符号位的值,做了异或运算。 但是,这两个因数的符号位,也并不是原码所特有的。 所以,在原码乘法的整个计算过程中,并没有原码来参与。 原码,没有计算功能,这是早有定论的。 在原码乘法中,当然也就没有原码来参加运算。 那么所谓的 “原码一位乘、二位乘”, 这种说法,并不符合实际。 教材上这么乱写,确实是混淆了概念,误导学生以为 “原码也能进行计算”。
实际上,计算机中各种算术运算,都是用无符号数和带符号数的补码来完成的。
今天,做而论道打算介绍一下补码相乘(校正法)的方法及其实现的电路。
先看