我一直在尝试创建一个程序,该程序将两个正定点数相加,其整数部分为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/