x64 linux 下C语言、AT&T格式…
2016-01-17 16:48
519 查看
1、main.c
#include <stdio.h>
int test(int x);
int main ()
{
printf ("调用汇编语言编写的函数test()结果为:%d\n",test(5));
}
2、test.C
.data
.align 16
.text
.global test
# integer parameters: rdi, rsi, rdx, rcx, r8, r9
# buff -> rdi
# buffSize -> rsi
test:
pushq %rbp # push base pointer of caller to stack
movq %rsp, %rbp # put stack pointer of caller to base pointer
movq %rdi, %rax # return value should be put in rax register
leaveq # mov %rbp, %rsp
# pop %rbp
retq # return
3、编译
$ gcc -o test main.c test.S
4、运行
$ ./test
调用汇编语言编写的函数test()结果为:5
#include <stdio.h>
int test(int x);
int main ()
{
printf ("调用汇编语言编写的函数test()结果为:%d\n",test(5));
}
2、test.C
.data
.align 16
.text
.global test
# integer parameters: rdi, rsi, rdx, rcx, r8, r9
# buff -> rdi
# buffSize -> rsi
test:
pushq %rbp # push base pointer of caller to stack
movq %rsp, %rbp # put stack pointer of caller to base pointer
movq %rdi, %rax # return value should be put in rax register
leaveq # mov %rbp, %rsp
# pop %rbp
retq # return
3、编译
$ gcc -o test main.c test.S
4、运行
$ ./test
调用汇编语言编写的函数test()结果为:5
相关文章推荐
- UNetbootin&nbsp;for&nbsp;Linux制…
- linux&nbsp;下如何打开core&nbsp;d…
- Linux下批量修改文件名
- 使用ssh远程登录linux
- linux习惯每天一个命令之ps
- linux 解压文件
- ssh免密码登录
- op07-SELinux op
- linux 文件夹操作
- centos添加路由
- linux 单引号,双引号,反引号的小总结。
- kali linux 笔记
- linux vi命令详解
- linux wget下载java jdk
- CentOS笔记——配置DNS服务器
- CentOS笔记——配置DNS服务器
- CentOs中触摸板配置
- Linux查看硬件信息
- Linux巡检
- Linux用户行为日志审计