求助:at&t汇编中调用c子程序的疑问
如果被at&t汇编调用的c子程序有返回值,将具体怎么返回给调用他的汇编的。 X86?通过%eax返回试试? 如果高于32位用%edx:%eax,浮点数用%st(0) 多谢各位。各位如果有at&t汇编的书的话也不吝传个吧。受之于鱼不如受之于渔啊 原帖由 ahhhhwang 于 2007-4-28 11:33 发表于 4楼
多谢各位。各位如果有at&t汇编的书的话也不吝传个吧。受之于鱼不如受之于渔啊
下面有个帖子<请教at&t伪指令>
http://linux.chinaunix.net/bbs/thread-896587-1-1.html
找mik要。 先编一个很简单的C程序。主程序调用一个函数,该函数只返回一个值。编译生成汇编码。分析这个代码,里面就有一个汇编调用C程序并返回值的框架。把它搬到你的程序里。
高级语言调用汇编语言,或汇编语言调用高级语言,没有接口技术资料,大都这样做。
回复 #6 beepbug 的帖子
由C生成的汇编代码复杂一些,因为是通用的,不利于学习的吧;《汇编语言程序设计》
【原 书 名】 Professional Assembly Language
【原出版社】 John Wiley & Sons
【作 者】 (美)Richard Blum [同作者作品] [作译者介绍]
【译 者】 马朝晖[同译者作品] 等
【出 版 社】 机械工业出版社
【书 号】 7-111-17532-8
【开 本】 16开
【页 码】 409
【出版日期】 2006年1月
【版 次】 1-1
http://www.china-pub.com/computers/common/info.asp?id=28024
这本书不错,网上也有pdf扫描版,不过文件很大,现在公司也没有;
网上也有英文原版的,可自由下载;
想要的话给我发消息hshqcn@gmail.com;
配合《gnu assembler》不错,可惜偶英文不太好,呵呵;
网上linuxforums.org有以前版本的翻译。 http://linux.chinaunix.net/bbs/thread-886208-1-1.html
页:
[1]