基于Keil51汇编与C语言混合编程方法研究.pdf

基于Keil51汇编与C语言混合编程方法研究.pdf

ID:57731741

大小:188.35 KB

页数:5页

时间:2020-03-25

基于Keil51汇编与C语言混合编程方法研究.pdf_第1页
基于Keil51汇编与C语言混合编程方法研究.pdf_第2页
基于Keil51汇编与C语言混合编程方法研究.pdf_第3页
基于Keil51汇编与C语言混合编程方法研究.pdf_第4页
基于Keil51汇编与C语言混合编程方法研究.pdf_第5页
资源描述:

《基于Keil51汇编与C语言混合编程方法研究.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、计算机与现代化2010年第10期JISUANJIYUXIANDAIHUA总第182期文章编号:10062475(2010)10004304基于Keil51汇编与C语言混合编程方法研究张志科,王振喜(忻州师范学院电子系,山西忻州034000)摘要:分析基于Keil51汇编与C语言混合编程的基本方法,给出每种方法的具体操作步骤。在应用实践中,为了充分发挥两种语言的优势,提高程序的执行效率,可根据问题的特殊性选择相应的编程方案,以期达到缩短程序设计过程的目标。关键词:Keil51;混合编程;参数传递中图分类号:TP311文献标识码:Ado:i10.

2、3969/.jissn.10062475.2010.10.011ResearchonMixedProgrammingMethodofCLanguageandAssembleLanguageBasedonKeil51ZHANGZhike,WANGZhenxi(DepartmentofElectronics,XinzhouTeachersCollege,Xinzhou034000,China)Abstract:ThispaperanalyzesthebasicmethodofmixedprogrammingofClanguageandassemblelangu

3、agebasedonKeil51,givesthespecificstepsofeachmethod.Intheapplicationpractice,forgivingfullplaytotheadvantagesofbothlanguagesandimprovingtheexecutedefficiencyofprograms,itcanselecttheappropriateprogrammingschemeaccordingtothespecialissue.Soitcanachievethegoalofshorteningtheprocessofpro

4、gramming.Keywords:Keil51;mixedprogramming;parametertransfer跳转时采用,它是通过使用C51中的一组预处理指0引言令来实现的,具体方法如下:[1]汇编与C语言优点各异,前者对硬件控制方便、(1)格式要求。程序代码简练、执行效率高,后者功能丰富、可移植性#pragmaasm好、可读性强。为了充分发挥两种语言的优点,使程;汇编程序代码#pragmaendasm序更加优化,在单片机程序设计中常会涉及到汇编与[2](2)工程选项设置。C语言混合编程问题。汇编与C语言混合编程的方在Project窗口中,右键点击包

5、含汇编代码的C法可分为两类,一类是在C程序中嵌入汇编代码,另文件,选择Optionsfor...,然后在弹出的窗口中选一类是两种程序以函数的形式相互调用。C程序调中GenerateAssemblerSRCFile和AssembleSRC用汇编和汇编调用C函数是两种基本的调用方式,File两项,使检查框由灰色变成黑色。选中这两项具体采用何种方式主要取决于工程对程序的要求。Keil才会将asm与endasm中的代码复制到输出根据应用实践的具体情况,可将混合编程的基本方法的SRC文件中,SRC文件为C文件中对应的汇编文分为以下5种情况。件,也可通过分析SRC

6、文件了解函数的封装规则。1在C语言程序段中内嵌汇编代码(3)内嵌汇编代码C文件实例。#include在C51中嵌入汇编代码主要是用于实现延时或voidmain(void)中断处理,通常是在汇编程序简练,且内部没有复杂{收稿日期:20100618基金项目:山西省教育厅普通高等学校大学生创新性实验基金资助项目(2008[105])作者简介:张志科(1962),男,山西翼城人,忻州师范学院电子系副教授,本科,研究方向:自动控制技术。44计算机与现代化2010年第10期p2=1;数名)语句来声明所调用的C函数即可。实例如下:#pr

7、agmaasmEXTRNCODE(DELAY);声明所要调用的C函数;汇编延时程序ORG0000H#pragmaendasmMOVP2,#00Hp2=0;CALLDELAY;调用C函数}MOVP2,#FFH对于在C程序中通过#pragmaasm和#pragmaENDendasm嵌入的汇编程序,Keil在编译时不做其它处(2)C文件格式。理,因此不存在参数传递和返回值问题。在该文件中只需写出所要调用的C函数即可。#include2无参数传递的混合调用vioddelay()//在汇编文件中所要调用的延时函数在Keil集成开发环境中进行混合编程时,

8、需要{//C函数语句在工

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

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

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