keil c51 中文教程(转载)3.doc

keil c51 中文教程(转载)3.doc

ID:51438868

大小:38.00 KB

页数:6页

时间:2020-03-24

keil c51 中文教程(转载)3.doc_第1页
keil c51 中文教程(转载)3.doc_第2页
keil c51 中文教程(转载)3.doc_第3页
keil c51 中文教程(转载)3.doc_第4页
keil c51 中文教程(转载)3.doc_第5页
资源描述:

《keil c51 中文教程(转载)3.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、作者: 来源于: 发布时间:2007-3-2813:52:00C51优化的C语言交叉编译器      KeilC51交叉编译器是一个基于ANSIC标准的针对8051系列MCU的C编译器,生成的可执行代码快速、紧凑,在运行效率和速度上可以和汇编程序得到的代码相媲美。n        和汇编语言相比,用C语言这样的高级语言有很多优势,比如:n        对处理器的指令集不必了解,8051CPU的基本结构可以了解,但不是必须的。n        寄存器的分配以及各种变量和数据的寻址都由编译器完成。n        程序拥有了正式的结构(由C语言带来的),并且能被分成多个单独的子函

2、数。这使整个应用系统的结构变得清晰,同时让源代码变得可重复使用。n        选择特定的操作符来操作变量的能力提高了源代码的可读性。n        可以运用和人的思维很接近的词汇和算法表达式。n        编写程序和调试程序的时间得到很大程度的缩短。n        C运行连接库包含一些标准的子程序,如:格式化输出,数字转换,浮点运算。n        由于程序的模块结构技术,使得现有的程序段可以很容易的包含到新的程序中去。n        ANSI标准的C语言是一种丰常方便的,获得广泛应用的,在绝大部分系统中都能够很容易得到的语言。      因此,如果需要,现有的

3、程序可以很快地移植到其他的处理器上,节省投资。和汇编语言的接口      你可以很容易在C程序中调用汇编程序,反之依然。函数参数通过CPU寄存器传递,或使用NOREGPARMS参数指示编译器通过固定的存储器传递。从函数返回的值总是通过CPU寄存器传递。除了直接产生目标代码外,你还可以用SRC编译参数指示编译器产生汇编源代码文件(供A51   汇编器使用)。例如下面的C语言源代码:       unsignedintasmfunc1(unsignedintarg)      {             return(1+arg);      }            用SRC指示

4、C51编译器编译时产生以下汇编文件:                   ?PR?_asmfunc1?ASM1 SEGMENTCODE      PUBLIC               asmfunc1                    RSEG    ?PR?_asmfunc1?ASM1                    USING0       asmfunc1:      ;----Variable'arg?00'assignedtoRegister'R6/R7'----                    MOVA,R7           ;loadLSB

5、oftheint                    ADDA,#01H        ;add1                    MOVR7,A           ;putitbackintoR7                    CLRA                    ADDCA,R6         ;addcarry&R6                    MOVR6,A      ?C0001:                    RET                    ;returnresultinR6/R7            

6、                                  你可以用#pragmaasm和#pragmaendasm预处理指示器来在你的C语言程序中插入汇编指令。和PL/M-51的接口      Intel的PL/M-51是一种流行的编程语言,在很多方面和C语言类似。你很容易就可以将C程序和PL/M-51程序联接起来。       在你用alien声明PL/M-51函数后,你就可以从C语言中调用它们。所有在PL/M-51模块中定义的全局变量都可以在C语言程序中使用。例如:                          externaliencharplm_func(

7、int,char);                   PL/M-51编译器和KeilSoftware工具都产生OMF51格式的目标文件。连接程序使用OMF51文件来处理外部字符变量,而不管它们在什么地方声明和使用。代码优化         C51是一个杰出的优化编译器,它通过很多步骤以确保产生的代码是最有效率的(最小和/或最快)。编译器通过分析初步的代码      产生最终的最有效率的代码序列,以此来保证你的C语言程序占用最少空间的同时运行的快而有效。       C51编译器提供9个优

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。