首页 > 其他 > 详细

AT&T学习笔记汇编之函数

时间:2015-04-03 19:23:58      阅读:121      评论:0      收藏:0      [点我收藏+]
步骤
1定义需要的输入值
2定义对输入值执行的操作
3定义如何生成输出值以及如何把输出值传递给发出调用的程序。

定义输入值
    使用寄存器
    使用全局变量
    使用堆栈

    .type    func1,    @function
    func1:

返回主程序
    把结果放在一个或者多个寄存器
    把结果放在全局变量内存位置。

    .type area    , @function
    area:
        fldpi
        imull    %ebx    ,    %ebx
        movl    %ebx    ,    value
        filds    value    
        fmulp    %st(0)    ,    %st(1)
        ret

linux给程序分配运行的虚拟内存地址从0x80480000开始,到0xbfffffff结束。低地址
处是程序数据和指令。指令不仅包含汇编程序的代码,而且还包含linux运行程序的链
接过程所需的指令信息。
上边是堆栈地址块。

AT&T学习笔记汇编之函数

原文:http://blog.csdn.net/u011185633/article/details/44858729

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!