新建
上传
首页
助手
最?/div>
资料?/div>
工具

龙源期刊?/p>

 http://www.qikan.com.cn 

汇编语言?/p>

C

语言混合编程的接口技?/p>

 

作者:金微

 

来源:《无线互联科技?/p>

2013

年第

09

?/p>

 

        

?/p>

 

要:随着网络与通信技术的发展,正在涌现出大量新的嵌入式系统,通常情况?/p>

C

?/p>

?/p>

C++

完成大部分的编程任务,仅有初始化部分用汇编语言完成。本文主要研究汇编语言?/p>

C

语言混合编程,在当前程序开发领域提供了新的途径?/p>

 

        

关键词:汇编程序?/p>

C

语言;编排技?/p>

 

        1 

引言

 

        

在平常编写程序时,我们一般都希望选择

C

?/p>

Pascal

?/p>

Basic

等这样的高级语言来编写,?/p>

级语言由于有编译器的支持,它们的语法更接近于自然语言,表达能力强,使用灵活,具有?/p>

大的库函数,更重要的是高级语言与机器无关,可移殖性较好,这样使程序开发周期比较短?/p>

省时省力。为了提高程序运行速度,或直接访问硬件,用汇编语言编程可以提高程序的运行效

率。为了既能缩短程序开发周期,又能保证程序的执行效率,较好的解决办法是程序的框架或

主体部分?/p>

C

语言编写,要求执行效率高的部分用汇编语言编写。这里就涉及到了混合编程?/p>

问题,这种混合编程的方法?/p>

C

语言和汇编语言的优点结合起来,所以成为目前单片机开发最

流行的编程方法。混合编程的关键是解决好高级语言与汇编语言的接口问题,可采用两种方

法:一是使用嵌入式汇编,即在高级语言的语句中直接使用汇编语句,这种方法比较简洁直

观,但功能较弱;另一种方法是独立编程,分别产生各自的目标文件,然后经过连接,形成一

个完整的程序?/p>

 

        2 

汇编语言?/p>

C

语言程序的变量相互调?/p>

 

        

在一个工程中,一般都会由多个汇编文件和多?/p>

C/C++

程序文件有机组成。在这些汇编?/p>

件和

C/C++

文件之间就存在变量相互访问和函数相互调用的问题。内嵌汇编不用单独编辑汇?/p>

语言文件,比较简洁,但是有诸多限制,当汇编的代码较多时一般放在单独的汇编文件中。这

时就需要在汇编?/p>

C

之间进行一些数据的传递,最简便的办法就是使用全局变量?/p>

 

        2.1 

汇编程序中访?/p>

C

程序变量

 

        

?/p>

C/C++

程序中声明的全局变量可以被汇编程序通过地址间接访问。具体访问方?/p>

/

步骤

如下?/p>

 

        

?/p>

C/C++

程序中声明全局变量;②在汇编程序使?/p>

IMPORT/EXTERN

伪指令声明引用该

全局变量;③使用

LDR

伪指令读取该变量的内存地址;④根据该数据的类型使用相应?/p>

LDR

?/p>

STR

指令读取或设置该变量的值。对于无符号变量,使?/p>

LDRB/STRB

访问

char

;使?/p>

LDRH/STRH

訪问

short

;使?/p>

LDR/STR

访问

integer

。对于有符号数,使用

LDRSB/LDRSH

?/p>

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

龙源期刊?/p>

 http://www.qikan.com.cn 

汇编语言?/p>

C

语言混合编程的接口技?/p>

 

作者:金微

 

来源:《无线互联科技?/p>

2013

年第

09

?/p>

 

        

?/p>

 

要:随着网络与通信技术的发展,正在涌现出大量新的嵌入式系统,通常情况?/p>

C

?/p>

?/p>

C++

完成大部分的编程任务,仅有初始化部分用汇编语言完成。本文主要研究汇编语言?/p>

C

语言混合编程,在当前程序开发领域提供了新的途径?/p>

 

        

关键词:汇编程序?/p>

C

语言;编排技?/p>

 

        1 

引言

 

        

在平常编写程序时,我们一般都希望选择

C

?/p>

Pascal

?/p>

Basic

等这样的高级语言来编写,?/p>

级语言由于有编译器的支持,它们的语法更接近于自然语言,表达能力强,使用灵活,具有?/p>

大的库函数,更重要的是高级语言与机器无关,可移殖性较好,这样使程序开发周期比较短?/p>

省时省力。为了提高程序运行速度,或直接访问硬件,用汇编语言编程可以提高程序的运行效

率。为了既能缩短程序开发周期,又能保证程序的执行效率,较好的解决办法是程序的框架或

主体部分?/p>

C

语言编写,要求执行效率高的部分用汇编语言编写。这里就涉及到了混合编程?/p>

问题,这种混合编程的方法?/p>

C

语言和汇编语言的优点结合起来,所以成为目前单片机开发最

流行的编程方法。混合编程的关键是解决好高级语言与汇编语言的接口问题,可采用两种方

法:一是使用嵌入式汇编,即在高级语言的语句中直接使用汇编语句,这种方法比较简洁直

观,但功能较弱;另一种方法是独立编程,分别产生各自的目标文件,然后经过连接,形成一

个完整的程序?/p>

 

        2 

汇编语言?/p>

C

语言程序的变量相互调?/p>

 

        

在一个工程中,一般都会由多个汇编文件和多?/p>

C/C++

程序文件有机组成。在这些汇编?/p>

件和

C/C++

文件之间就存在变量相互访问和函数相互调用的问题。内嵌汇编不用单独编辑汇?/p>

语言文件,比较简洁,但是有诸多限制,当汇编的代码较多时一般放在单独的汇编文件中。这

时就需要在汇编?/p>

C

之间进行一些数据的传递,最简便的办法就是使用全局变量?/p>

 

        2.1 

汇编程序中访?/p>

C

程序变量

 

        

?/p>

C/C++

程序中声明的全局变量可以被汇编程序通过地址间接访问。具体访问方?/p>

/

步骤

如下?/p>

 

        

?/p>

C/C++

程序中声明全局变量;②在汇编程序使?/p>

IMPORT/EXTERN

伪指令声明引用该

全局变量;③使用

LDR

伪指令读取该变量的内存地址;④根据该数据的类型使用相应?/p>

LDR

?/p>

STR

指令读取或设置该变量的值。对于无符号变量,使?/p>

LDRB/STRB

访问

char

;使?/p>

LDRH/STRH

訪问

short

;使?/p>

LDR/STR

访问

integer

。对于有符号数,使用

LDRSB/LDRSH

?/p>

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

龙源期刊?/p>

 http://www.qikan.com.cn 

汇编语言?/p>

C

语言混合编程的接口技?/p>

 

作者:金微

 

来源:《无线互联科技?/p>

2013

年第

09

?/p>

 

        

?/p>

 

要:随着网络与通信技术的发展,正在涌现出大量新的嵌入式系统,通常情况?/p>

C

?/p>

?/p>

C++

完成大部分的编程任务,仅有初始化部分用汇编语言完成。本文主要研究汇编语言?/p>

C

语言混合编程,在当前程序开发领域提供了新的途径?/p>

 

        

关键词:汇编程序?/p>

C

语言;编排技?/p>

 

        1 

引言

 

        

在平常编写程序时,我们一般都希望选择

C

?/p>

Pascal

?/p>

Basic

等这样的高级语言来编写,?/p>

级语言由于有编译器的支持,它们的语法更接近于自然语言,表达能力强,使用灵活,具有?/p>

大的库函数,更重要的是高级语言与机器无关,可移殖性较好,这样使程序开发周期比较短?/p>

省时省力。为了提高程序运行速度,或直接访问硬件,用汇编语言编程可以提高程序的运行效

率。为了既能缩短程序开发周期,又能保证程序的执行效率,较好的解决办法是程序的框架或

主体部分?/p>

C

语言编写,要求执行效率高的部分用汇编语言编写。这里就涉及到了混合编程?/p>

问题,这种混合编程的方法?/p>

C

语言和汇编语言的优点结合起来,所以成为目前单片机开发最

流行的编程方法。混合编程的关键是解决好高级语言与汇编语言的接口问题,可采用两种方

法:一是使用嵌入式汇编,即在高级语言的语句中直接使用汇编语句,这种方法比较简洁直

观,但功能较弱;另一种方法是独立编程,分别产生各自的目标文件,然后经过连接,形成一

个完整的程序?/p>

 

        2 

汇编语言?/p>

C

语言程序的变量相互调?/p>

 

        

在一个工程中,一般都会由多个汇编文件和多?/p>

C/C++

程序文件有机组成。在这些汇编?/p>

件和

C/C++

文件之间就存在变量相互访问和函数相互调用的问题。内嵌汇编不用单独编辑汇?/p>

语言文件,比较简洁,但是有诸多限制,当汇编的代码较多时一般放在单独的汇编文件中。这

时就需要在汇编?/p>

C

之间进行一些数据的传递,最简便的办法就是使用全局变量?/p>

 

        2.1 

汇编程序中访?/p>

C

程序变量

 

        

?/p>

C/C++

程序中声明的全局变量可以被汇编程序通过地址间接访问。具体访问方?/p>

/

步骤

如下?/p>

 

        

?/p>

C/C++

程序中声明全局变量;②在汇编程序使?/p>

IMPORT/EXTERN

伪指令声明引用该

全局变量;③使用

LDR

伪指令读取该变量的内存地址;④根据该数据的类型使用相应?/p>

LDR

?/p>

STR

指令读取或设置该变量的值。对于无符号变量,使?/p>

LDRB/STRB

访问

char

;使?/p>

LDRH/STRH

訪问

short

;使?/p>

LDR/STR

访问

integer

。对于有符号数,使用

LDRSB/LDRSH

?/p>

 

Ͼλ">
Ͼλ
Ŀ

汇编语言与C语言混合编程的接口技?- 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

龙源期刊?/p>

 http://www.qikan.com.cn 

汇编语言?/p>

C

语言混合编程的接口技?/p>

 

作者:金微

 

来源:《无线互联科技?/p>

2013

年第

09

?/p>

 

        

?/p>

 

要:随着网络与通信技术的发展,正在涌现出大量新的嵌入式系统,通常情况?/p>

C

?/p>

?/p>

C++

完成大部分的编程任务,仅有初始化部分用汇编语言完成。本文主要研究汇编语言?/p>

C

语言混合编程,在当前程序开发领域提供了新的途径?/p>

 

        

关键词:汇编程序?/p>

C

语言;编排技?/p>

 

        1 

引言

 

        

在平常编写程序时,我们一般都希望选择

C

?/p>

Pascal

?/p>

Basic

等这样的高级语言来编写,?/p>

级语言由于有编译器的支持,它们的语法更接近于自然语言,表达能力强,使用灵活,具有?/p>

大的库函数,更重要的是高级语言与机器无关,可移殖性较好,这样使程序开发周期比较短?/p>

省时省力。为了提高程序运行速度,或直接访问硬件,用汇编语言编程可以提高程序的运行效

率。为了既能缩短程序开发周期,又能保证程序的执行效率,较好的解决办法是程序的框架或

主体部分?/p>

C

语言编写,要求执行效率高的部分用汇编语言编写。这里就涉及到了混合编程?/p>

问题,这种混合编程的方法?/p>

C

语言和汇编语言的优点结合起来,所以成为目前单片机开发最

流行的编程方法。混合编程的关键是解决好高级语言与汇编语言的接口问题,可采用两种方

法:一是使用嵌入式汇编,即在高级语言的语句中直接使用汇编语句,这种方法比较简洁直

观,但功能较弱;另一种方法是独立编程,分别产生各自的目标文件,然后经过连接,形成一

个完整的程序?/p>

 

        2 

汇编语言?/p>

C

语言程序的变量相互调?/p>

 

        

在一个工程中,一般都会由多个汇编文件和多?/p>

C/C++

程序文件有机组成。在这些汇编?/p>

件和

C/C++

文件之间就存在变量相互访问和函数相互调用的问题。内嵌汇编不用单独编辑汇?/p>

语言文件,比较简洁,但是有诸多限制,当汇编的代码较多时一般放在单独的汇编文件中。这

时就需要在汇编?/p>

C

之间进行一些数据的传递,最简便的办法就是使用全局变量?/p>

 

        2.1 

汇编程序中访?/p>

C

程序变量

 

        

?/p>

C/C++

程序中声明的全局变量可以被汇编程序通过地址间接访问。具体访问方?/p>

/

步骤

如下?/p>

 

        

?/p>

C/C++

程序中声明全局变量;②在汇编程序使?/p>

IMPORT/EXTERN

伪指令声明引用该

全局变量;③使用

LDR

伪指令读取该变量的内存地址;④根据该数据的类型使用相应?/p>

LDR

?/p>

STR

指令读取或设置该变量的值。对于无符号变量,使?/p>

LDRB/STRB

访问

char

;使?/p>

LDRH/STRH

訪问

short

;使?/p>

LDR/STR

访问

integer

。对于有符号数,使用

LDRSB/LDRSH

?/p>

 



ļ׺.doc޸Ϊ.docĶ

  • п桿2016п IJ д ר ǧ,ʵһ
  • ůĵ
  • 2018Ƕšѧְҵչҵָκϰ
  • Դѧ빤ѧԺ
  • Ӣ뼼.
  • Ŀо
  • 2016Ⱥʡ蹤̡ݱʡʹ̣񽱹
  • ר
  • չƵ·ʵָ
  • ֻETSTSIϵͳԴʩ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)