第九章 编译器用户手册.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Keil Software– Cx51编译器用户手册— 第八章 库参考 209 Cx51 运行库提供超过 100 个可用在 8051 C 程序中的预定义函数和宏 通过库所提供 程序执行公共的程序任务 例如字符串和缓冲区操作 数据转换 和浮点算术运算 使得内嵌软件开发更容易 典型的 本库的程序符合ANSI C 标准 但是 为了利用 8051 结构的特性 一些程序 有些不同 例如 函数isdigit 返回一个 bit 值而不是一个 int 如有可能 函数的返回 类型和参数类型调整为更小的数据类型 另外 unsigned data 类型比 signed 更有利 这些对标准库的改变可以提供最好的性能 同时减少程序的大小 库中的所有程序和函数使用什么寄存器组无关 固有程序 Cx51 编译器支持许多固有的库函数 非固有函数用ACALL 或LCALL 指令调用库程 序 固有函数生成内嵌代码运行库程序 生成的内嵌代码比调用一个程序更快 更有 效 下面的函数就是固有函数 _crol_ _iror_ _nop_ _cror_ _lrol_ _testbit_ _irol_ _lror_ 在下面各节中详细这些程序 Keil Software– Cx51编译器用户手册— 第八章 库参考 210 库文件 Cx51 库包括六个编译库 对各种功能性要求进行优化 这些库支持大多数的 ANSI C 函数调用 库文件 说明 C51S.LIB SMALL 模式库 没有浮点运算 C51FPS.LIB SMALL 模式 浮点运算库 C51C.LIB COMPACT 模式库 没有浮点运算 C51FPC.LIB COMPACT 模式浮点运算库 C51L.LIB LARGE 模式库 没有浮点运算 C51FPL.LIB LARGE 模式浮点运算库 80C751.LIB SIGNETICS 8xC751 和派生系列库 PHILIPS 80C51MX DALLAS390 连续模式和可变代码BANKING 要求一个不同的Cx51 运行库 LX51 连接/定位器自动把相应的库加到PROJECT 中 几个库模块以源代码形式提供 这些程序用来运行和低级硬件相关的I/O 的流I/O 函数 可以在 LIB 目录发现这些程序的源文件 可以修改这些源文件 替换库中的程序 应 用这些程序 可以快速的使用库来运行 用任何目标可用的硬件 I/O 设备 流 I/O 参 考224 页的 流输入和输出 Keil Software– Cx51编译器用户手册— 第八章 库参考 211 标准类型 Cx51 标准库包含许多标准类型的定义 它们可以用在库程序中 这些标准类型在包含 文件中声明 可以被C 程序访问 jmp_buf jmp_buf 类型在SETJMP.H 中定义 指定了setjmp 和longjmp 程序用来保存和恢复程 序环境的缓冲区 jmp_buf 类型如下定义 #define _JBLEN 7 typedef char jmp_buf[_JBLEN]; va_list va_list 数组类型在STDARG.H 定义 本类型保存va_arg 和va_end 程序所需的数据 va_list 类型如下定义 typedef char *va_list; Keil Software– Cx51编译器用户手册— 第八章 库参考 212

文档评论(0)

0520 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档