📄 readme.txt
字号:
//若要使用此用算库,请把库文件和头文件复制到C51编译器目录下;
//请在源文件中写上#include <f3math.h>;
//浮点数数据格式为index,valueH,valueL,其中index为阶码和数符,value为尾数;
//index.7为尾数的数符,index.6为阶码的数符,阶码以补码表示,尾数以双字节纯小数的原码表示;
//阶码范围为-64至+63,尾数的有效位数为16位二进制纯小数
//与用户的接口函数为FloatToInt和IntToFloat,若初始或最终运算值在 (unsigned int)的范围之外,
//用户可用乘除加以解决;只提供无符号双字节整数与浮点之间的相互转换,若用户要把有符号整数转化为
//浮点数,请先用IntToFloat,然后再把它取反(使用FloatRev),若使用FloatToInt,请注意CY的值,若CY为1,
//表明转换结果是负数,转换结果为16位原码加一位数符(CY);
//若运算结果溢出,则OV自动置1,请用户自行检查;
//由于内部参加运算的均为左规浮点数,但由于尾数的最高位恒为1,因此完全可以略去不写而用作别的用途,
//但此运算库使用了补码作为阶码(最好用移码表示),为了运算上的方便,暂且保留这个冗余位;
//所有函数不支技重入;
//只保留一次中间运算结果,因此每做完一次运算后,请用FloatMov把结果赋给三字节浮点变量,当然也
//可用C的指针对浮点结构进行赋值,C可不支持运算符重载;
//由于本人不知道如何才能在C51的库中加入一个可重定位的纯粹的数据段,因此在定义公用数据段时,加了
//一个代码段nothing,不过只有一句话:RET,C编译器会自动忽略,不过会有一个警告:
// *** WARNING 16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
// SEGMENT: ?PR?NOTHING?DATADEF
// 这当然无关紧要
//运算程序的核心来自别处(公开的),原来应该是无错的,但本人在改写过程中可能引入错误;
//如有必要,用户可自行用改进的快速牛顿迭代法做开平方,泰勒展开式做一些超越函数;
/***********************说明******************************************/
//extern sfloat data *FloatAdd(sfloat data *p1,sfloat data *p2);
//*result=*p1+*p2;
//extern sfloat data *FloatSub(sfloat data *p1,sfloat data *p2);
//*result=*p1-*p2;
//extern sfloat data *FloatMul(sfloat data *p1,sfloat data *p2);
//*result=(*p1)*(*p2);
//extern sfloat data *FloatDiv(sfloat data *p1,sfloat data *p2);
//*result=(*p1)/(*p2);
//extern sfloat data *FloatAbs(sfloat data *p1);
//*result=|*p1|;
//extern sfloat data *FloatRev(sfloat data *p1);
//*result=-(*p1);
//extern sfloat data *FloatInt(sfloat data *p1);
//*result=(float)((unsigned int)*p1);
//extern sfloat data *IntToFloat(unsigned int val);
//*result=(float)val;
//extern unsigned int FloatToInt(sfloat data *p1);
//result=(unsigned int)(*p1); CY为结果数符
//extern unsigned char FloatCmp(sfloat data *p1,sfloat data *p2);
//result=0,*p1=*p1;result=1,*p1>*p2;result=0xff,*p1<*p2;result=others,error;
//extern void FloatZer(sfloat data *p1);
//*p1=0;
//void FloatMov(sfloat data *dest,sfloat data *src);
//*dest=*src;
/******************************李森达****************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -