APP下载

C 语言与汇编语言混合编程声明规则

2014-11-28庞新法PANGXinfa

价值工程 2014年26期
关键词:汇编语言调用声明

庞新法PANG Xin-fa

(陕西省委党校科技教研部,西安 710061)

(Technology Research Department,Shaanxi Province Party School of the CPC,Xi'an 710061,China)

1 绪论

C 语言是目前流行很广的一种高级语言,它可编写出灵活和多功能的用户界面,汇编语言程序可直接控制硬件,运行速度快,占用存储空间小,如何发挥各自优势,取长补短,提高程序的开发效率和运行效率,让C 语言与汇编语言混合编程是一种非常有效的方法,混合编程必然涉及到二者相互调用时的接口、语法规则、语义规则。本文结合实例予以详细分析。

2 名字声明规则

①汇编、C 模块对自己未定义但要用的别的模块的名字要声明。

C 模块声明格式:函数声明格式:extern 类型 函数名(形参表);

变声明格式:Extern 类型 变量;

汇编模块声明格式:函数声明格式:extern 函数名:属性(near,far);

变声明格式:Extern 变量名:属性(byte,word,dword 等)。

②自己定义的不但自己可用,而且可供别的模块引用的也必须声明。

汇编模块声明格式:PUBLIC 名字(变量名或函数名)。

C 模块声明格式:全局变量,函数名前不加static 即可。

③C 语言与汇编语言的变量对应关系。

表1

④C 语言的存贮模式与汇编语言函数类型对应关系。C 存贮模式是微型、小型和紧凑时,则汇编程序把函数声明、定义成near 属性;C 是中型、大型和巨型时,则汇编程序把函数声明、定义成far 属性。

2.1 C 程序调用汇编程序

2.1.1 C 调汇编中的变量

运行结果是:B

2.2 汇编程序调用C 程序

2.2.1 汇编调C 的变量

运行结果是:70

2.2.2 汇编调C 的函数

end 运行结果是:ABC

2.3 汇编程序、C 程序相互调用

运行结果是:ABC 和61

3 结语

混合编程,必然涉及接口,汇编如何调C 的函数、全局变量。C 如何调汇编的函数、变量。本文对此做了详尽分析。

[1]谭浩强.C 语言程序设计[M].清华大学出版社,2004.

[2]丁爱萍.C 语言程序设计实例教程[M].西安电子科技大学出版社,2006.

[3](美)布鲁姆著.编语言程序设计[M].马朝晖译.北京:机械工业出版社,2006.

猜你喜欢

汇编语言调用声明
本刊声明
本刊声明
高等学校计算机专业课程教学改革实践——以汇编语言与接口技术课程为例
核电项目物项调用管理的应用研究
本刊声明
本刊声明
汇编语言与C语言的混合程序设计技术研究
LabWindows/CVI下基于ActiveX技术的Excel调用
提高《汇编语言程序设计》教学效率的思考与实践
基于系统调用的恶意软件检测技术研究