问题描述
已知x是16位无符号整数,求x除以255的余数和商。尽量降低实现方式的硬件开销(包括面积和时序)
思路
由于除数255是一个常数,因此,直观上给人的感觉就是应该有相应的优化方法,即相对于除数可变的实现方式,在面积、时序方面应该有所改善。
 对于该问题,本文给出了如下所示的解决方式:
 记
 hi = x[15:8]
 lo = x[7:0]
 则有:
 x = hi * 256 + lo
 对上式稍做变换,有
 x = 255 * hi + (hi + lo)
 我们假设x除以255的商和余数分别为q和r,则
 当hi + lo < 255时
q=hi
r=hi+lo
当hi+lo>=255时
q=hi+1
r=hi+lo