我有一个项目,仅使用c中的32位有符号/无符号整数来计算64位无符号整数加,乘和减。 这样重新定义了64位无符号整数:
typedef struct {
unsigned integer hi;
unsigned integer lo;
} Integer64;
所以64位整数只是一个将高32位存储在高位而将低32位存储在低位的结构。
现在我得到了这两个Integer64,我还必须以Integer64类型产生乘法和减法。 在乘法和减法函数中,只允许我使用Integer64类型,unsigned int类型,并且只能使用整数算术和逻辑运算。
我解决了如何编写加法函数,但不知道如何进行乘法和减法。你们可以帮忙吗?