AVR单片机浮数运算程序设计.pdfVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AVR单片机浮数运算程序设计

第五章 浮点数运算程序设计 5.1 四字节浮点格式 进行数值运算时 采用定点数运算往往不能满足要求 例短整数 8 位带符号数 表示 数的范围为 -128 +127 整数 16 位带符号数 表示数的范围为 -32768 +32767 长整数 32 位带符号数 表示数的范围为 -231 231-1 每增加或减少 1 个数字单位恒为 1 这 样在绝对值很小的时候 表示的数的精度就很低 为了满足数的范围和精度的要求 常采用 浮点数的格式 二进制浮点数一般采用 M 2E 的形式表示 其中M 为尾数 是定点数 无符号数 为数符 E 为指数 若用 1 位二进制数表示符号位 0 为正 1 为负 位二进制数表示尾数24 0.1000 0.111 1 23 位 23 位 8位二进制数表示指数 取-125+128 则表示数的范围就可以扩大为 0.5 2-125 1.0×2128 -38 38 -24 -8 即 1.2 10 3.4 10 精度为 2 即 5.9 10 我们采用的 IEEE提出的四字节浮点数标准 恰好能很好表示这个范围的浮点数 其格式 为 数符 阶码 尾数 31 位 30 23 22 0 最高位 第31位 为数符位 0为正 1为负 低23位 0 22位 为尾数 实际尾数 为 0.100 0 0.111 1 23 位 23 位 第23 30 位这 8 位为阶码 由于指数取值范围为-125 +128 可正可负 为简单起见 阶码采用指数的移码 阶码 = 指数+$7E 这样阶码恒为正 阶码为 0 即浮点数为 0 小于 1.2 10-38 阶码为 $78 指数为$78-$7E=-6 阶码为 $88 指数为 $88-$7E=10 阶码为 $FF 指数为 $ff-$7E=$81 超出四字节浮点数的表示范围 表示溢出 即绝对值大 于3.4*1038 为了方便理解该符点数的格式 下面举几个实际例子 例 十进制数1=0.5*21 数符为 0 阶码为1+$7E=$7F 尾数 0.5=0.100 0b 去掉最高位 1 00 0 23 位 四字节浮点数为 0011 1111 10 0b 即为 $3F 80 00 00 例 0.5=0.5*20 数符为 0 阶码为 $7E 尾数去掉最高位 1 为0000 0b 23 位 四字节浮点数为 0011 1111 0000 0b 即为 $3F 00 00 00 例 5= 101= 0.101*23 数符为 1 阶码为3+$7E=$81 尾数去掉最高位 1 为0100 0b 23 位 四字节浮点数为 1100 0000 1010 0000 0b 即为$C0 A0 00 00 1 5.2 四字节浮点运算子程序库 AVR32FP.INC 该浮点运算子程序主要有最基本的数值计算 ( 加 减 乘 除运算 ) 和整数到浮点 浮 点到整数的转换 该浮点运算子程序库占 353 个字 共使用寄存器16 个并使用了 SRAM 五个 字节 注意 调用加减乘除子程序前必须将 Y 寄存器

文档评论(0)

jixujianchi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档