32位CPU中,实现32位无符号乘法,返回64位无符号数据。原理解析。
大家看看我们两位数的乘法是如何计算的呢,方法也是类似的,可以把64bit的数据看做作是两位十进制数相乘,十位是u1和v1,个位是u0和v0,两个最大2位数相乘不会超过4位数,所以两个32bit的数相乘不会超过64bit,方法也就可行。//u低16bit与v高16bit相乘的结果,加上w0的进位(进位到bit16~bit31)结果。//更新为低 16 bit与高 16 bit相乘的结果加上之前的 w1。//t的高16bbit,t的进位(进位到bit32~bit47)。//取u的低16bit。
原创
2024-09-03 00:28:22 ·
335 阅读 ·
0 评论