diff --git a/fx_s4716_double.h b/fx_s4716_double.h index 1198721d4d85f699ff5f632122776b827bc7357b..cc41bbeca3f3df11a47cfc2a27e73a8372de7a73 100644 --- a/fx_s4716_double.h +++ b/fx_s4716_double.h @@ -20,6 +20,7 @@ typedef long long fx_s4716; #define F_POWER_2_16 65536.0 #define F_POWER_2_8 256.0 +<<<<<<< HEAD #define FX_TO_DOUBLE(a) (a)/(F_POWER_2_16) #define DOUBLE_TO_FX(a) ((a)*(F_POWER_2_16)) //#define DOUBLE_TO_FX(a) (long long)((a)*(F_POWER_2_16)) @@ -34,3 +35,16 @@ typedef long long fx_s4716; #define FX_S4716_DOUBLE_SQRT(a) ((sqrt(a))/(F_POWER_2_8)) #define FX_S4716_DOUBLE_POW(a) ((pow((double)a, 2.0))*(F_POWER_2_16)) +======= +#define fx_to_double(a) ((a)/f_POWER_2_16) +#define double_to_fx(a) (long long)((a)*f_POWER_2_16) + +#define fx_s4716_double_add(a, b) ((a)+(b)) +#define fx_s4716_double_sub(a, b) ((a)-(b)) +#define fx_s4716_double_mul(a, b) (double_to_fx((fx_to_double(a))*(fx_to_double(b)))) +#define fx_s4716_double_div(a, b) (double_to_fx((fx_to_double(a))/(fx_to_double(b))) + +#define fx_PI double_to_fx(3.141592653) +#define fx_s4716_double_sqrt(a) (sqrt(a)/(f_POWER_2_16/2)) +#define fx_s4716_double_pow(a) (pow((double)a, 2.0)*f_POWER_2_16) +>>>>>>> df53c2167bf929e48681a774ce8e82a774ee80aa