首页/ 题库 / [问答题]说明C程序调用外部汇编模块的具体方法,并的答案

说明C程序调用外部汇编模块的具体方法,并总结参数传递和汇编模块返回值的接口约定。分析C程序调用汇编模块前后的堆栈变化情况。

问答题
2021-12-31 23:20
查看答案

正确答案

(1)C程序调用外部汇编模块的具体方法:调用程序和被调用的汇编过程必须使用相同的存储模型;汇编子程序的过程名和变量名都应说明为public且过程名和变量名前加下划线;在C中应将在本程序中用到的汇编子程序的过程名和变量名说明为外部过程和变量,并且不能在名字前加下划线。
(2)参数传递和汇编模块返回值的接口约定:通过堆栈传递参数(从右到左);传值时直接写出实际参数,传址时在extern说明语句中将参数类型说明成指针类型,并在调用时给出参数地址。返回值通过寄存器传递,16位返回值用AX,32位返回值用DX:AX,返回值大于32位则放到静态变量存储区(near调用时该数据的首地址存放在AX中,far调用时该数据的首地址存放在DX:AX中)。
(3)调用时将参数从右向左依次压入堆栈,再将返回地址压入堆栈;返回后将内容依次弹出即可。


试题解析

相关题目
编写计算机程序所用的语言称为(),分为机器语言、汇编语言和高级语言。
C语言程序可以嵌套加入汇编程序模块。
89C51/S51单片机访问外部程序存储器的汇编指令为:( )
说明C程序调用外部汇编模块的具体方法,并总结参数传递和汇编模块返回值的接口约定。分析C程序调用汇编模块前后的堆栈变化情况。
某ARM汇编语言程序要调用子程序,子程序名为MySubrutine,则调用该子程序的指令为(),子程序返回调用程序的指令为()。
一些重要的程序设计语言(in C语言和Pascal语言) 允许过程的递归调用,而实现递归调用中的存储分配通常用( )。
一些重要的程序设计语言(如C语言和Pascal语言)允许过程的递归调用,而实现递归调用中的存储分配通常用( )。
在C语言程序如何调用汇编语言程序?
简述在C语言程序中调用汇编语言程序的方法。
伪指令是()规定的汇编说明符,它在源程序汇编时进行说明。
可以调用零件型模块,同时也能调用方法和数据的模型程序模块的模型程序是()
汇编语言源程序须经汇编程序翻译成目标程序:解释性语言源程序须经解释程序解释执行;编译性源程序须经编译程序翻译成目标程序,而汇编程序和编译程序还须经______连接成可执行的目标程序。
下面对C语言的描述中,正确的是A.函数一定有返回值,否则无法使用函数B.C语言函数既可以嵌套定义,又可以递归调用C.在C语言中,调用函数时,只能将实参的值传递给形参D.C语言程序中有调用关系的所有函数都必须放在同一源程序文件中
简述汇编语言程序调用C语言程序。
把汇编语言程序翻译成机器语言程序的程序称为汇编程序。
何谓汇编语言、汇编语言源程序、汇编程序、汇编和汇编语言目标程序?汇编有几种方式?
汇编程序MASM何以用来汇编扩展名为()的8086或8088汇编语言源程序。
汇编程序MASM可以用来汇编扩展名为()的8086或8088汇编语言源程序。
程序设计语言可分为()类。计算机语言通常分为三类:即机器语言,汇编语言和高级语言。
计算机的语言处理程序有汇编程序、编译程序、解释程序。
广告位招租WX:84302438

免费的网站请分享给朋友吧