我一直在尝试创建一个程序,该程序将两个正定点数相加,其整数部分为5位,而其小数部分为3位,但是我没有成功,我知道可以通过处理位字段和并集来实现,但是我还没有找到目标。如果有人可以帮助我,我将不胜感激。

最佳答案

假设a是一个整数对象,它使用具有三个分数位的定点表示形式来表示数字a。然后a = 8•a,或者相反,a = a / 8。

同样,让b是一个整数对象,该整数对象表示具有相同表示形式的数字b。

然后,由于a = a / 8和b = b / 8,我们得到a + b = a / 8 + b / 8 = a+b / 8。

因此,可以用a来计算由b表示的数字和由a+b表示的数字之和的表示。

关于c - 如何管理 union 和位域,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59005631/

10-09 03:37