10.07.2015 Views

MPLAB® C30 C 编译器用户指南

MPLAB® C30 C 编译器用户指南

MPLAB® C30 C 编译器用户指南

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

编 译 器 概 述1.5 MPLAB <strong>C30</strong> 的 功 能MPLAB <strong>C30</strong> C 编 译 器 是 一 个 全 功 能 的 优 化 编 译 器 , 可 将 标 准 的 ANSI C 程 序 翻 译 为dsPIC 汇 编 语 言 源 代 码 。 同 时 它 还 支 持 许 多 命 令 行 选 项 和 语 言 扩 展 , 可 以 对 dsPIC 器件 的 硬 件 功 能 进 行 完 全 访 问 , 以 便 更 好 地 控 制 代 码 的 生 成 。 这 一 节 介 绍 了 编 译 器 的 主要 功 能 。1.5.1 ANSI C 标 准MPLAB <strong>C30</strong> 编 译 器 是 一 个 完 全 经 过 验 证 的 编 译 器 , 符 合 ANSI C 标 准 , 该 标 准 由ANSI 规 范 定 义 并 在 Kernighan 和 Ritchie 的 C Programming Language ( 第 二 版 ) 中有 详 细 说 明 。 ANSI 标 准 包 括 对 原 始 C 定 义 的 扩 展 , 这 些 扩 展 现 在 成 为 C 语 言 的 标 准功 能 。 这 些 扩 展 增 强 了 C 语 言 的 可 移 植 性 , 同 时 增 强 了 功 能 。1.5.2 代 码 优 化编 译 器 使 用 一 套 采 用 多 种 先 进 技 术 的 高 级 优 化 , 将 C 源 代 码 编 译 为 高 效 而 紧 凑 的 代码 。 优 化 包 括 适 用 于 所 有 C 代 码 的 高 级 优 化 , 以 及 利 用 dsPIC 器 件 架 构 特 征 专 门 针 对dsPIC 器 件 的 优 化 。1.5.3 ANSI 标 准 函 数 库 支 持MPLAB <strong>C30</strong> 带 有 一 个 完 整 的 ANSI 标 准 函 数 库 。 所 有 这 些 库 函 数 都 经 过 验 证 并 遵 循ANSI C 库 标 准 。 这 个 函 数 库 包 括 字 符 串 处 理 、 动 态 存 储 器 分 配 、 数 据 转 换 、 计 时 和 数学 函 数 ( 三 角 、 指 数 和 双 曲 线 函 数 )。 还 包 括 用 于 文 件 处 理 的 标 准 I/O 函 数 , 支 持 通过 命 令 行 模 拟 器 对 主 机 文 件 系 统 进 行 完 全 的 访 问 。 同 时 编 译 器 还 提 供 底 层 文 件 I/O 函数 的 完 整 功 能 性 源 代 码 , 这 可 以 作 为 需 要 这 些 底 层 功 能 的 应 用 程 序 开 发 的 一 个 起 点 。1.5.4 灵 活 的 存 储 器 模 型编 译 器 可 同 时 支 持 大 型 和 小 型 两 种 代 码 和 数 据 模 型 。 小 代 码 模 型 利 用 调 用 和 分 支 指 令的 更 有 效 形 式 , 同 时 小 数 据 模 型 支 持 使 用 紧 凑 指 令 对 SFR 空 间 的 数 据 进 行 存 取 。编 译 器 支 持 两 种 模 型 来 存 取 常 量 。“constants in data” 模 型 使 用 数 据 存 储 器 , 由 运 行时 库 初 始 化 。“constants in code” 模 型 使 用 程 序 存 储 器 , 通 过 程 序 空 间 可 视 性 (Program Space Visibility, PSV) 窗 口 访 问 。1.5.5 编 译 器 驱 动 程 序MPLAB <strong>C30</strong> 包 括 一 个 强 大 的 命 令 行 驱 动 程 序 。 通 过 这 个 驱 动 程 序 , 应 用 程 序 的 编 译 、汇 编 和 链 接 可 以 一 步 完 成 ( 参 见 图 1-1)。© 2005 Microchip Technology Inc. DS51284C_CN 第 9 页

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!