都告诉你round to nearest even了,就是用那种方式做。你提的3个都不是老师要求的你得到G,R,S后,要根据他们的值额外做进位,最后依然是23bits不是,rounding 是算完在做的。以位移来说,次方数差超过25位是不会影响rounding的结果。比方说,你减完得到G是1、R是1,你这结果还要进位才是round to nearest even 的值超过的部分在进位前做保留,以硬件来说多几位元存不是很大的问题。像是32位元的无号整数乘法,他会乘完得出64位元的值再取32位元我上面的部分有地方讲错,round to nearest even需要看4个地方,第23位、G、R、S,rounding完会让第23位为0。更正,第23位不一定为0进位规则是G and (R or S or 第23位),1的话进位,0的话舍去是这样算没错