首页
社区
课程
招聘
[求助]汇编函数和C函数的相互调用
发表于: 2008-9-12 10:52 4485

[求助]汇编函数和C函数的相互调用

2008-9-12 10:52
4485
现在我有两个文件1.asm 2.c
怎样才能让1.asm中的函数调用2.c中的函数,然后2.c中的函数再调用1.c中的另外一个函数呢?
我写了一个程序,但总是调不通。请各位大虾帮忙!!!非常感谢!!!

源码:
;1.asm
extern _choose
global _start
global _dispstr

[section .data]
num1        db 1
num2        db 2
bootmessage db "hello, world",'$'
msglen      dw $-bootmessage

[section .text]
_start:
        mov ax, cs
        mov ds, ax
        mov es, ax
        call _choose
;        jmp $
        mov ax, 04c00h
        int 21h

_dispstr:
        mov dl, 'a'
        int 21h
        ret

//2.c
void dispstr() ;

void choose()
{
        dispstr() ;
        return ;
}

编译链接命令:
nasm -f win32 1.asm
cl -c 2.c
alink -s -o test.exe 1.obj 2.obj

运行环境:
Windows XP

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
顶一下,难道就没有一个人知道么?
2008-9-12 19:32
0
雪    币: 242
活跃值: (418)
能力值: ( LV11,RANK:188 )
在线值:
发帖
回帖
粉丝
3
其实是大家都觉得搜索就可以解决问题罢

extren
2008-9-13 11:42
0
雪    币: 117
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢楼上回复,能否试一下我这个代码,在windows下编译C文件的时候用的是什么编译器啊
2008-9-17 10:01
0
雪    币: 200
活跃值: (154)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
MASM与VC互调、C标准函数.rar (23.0 KB)
上传的附件:
2008-9-17 13:02
0
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
6
不管是在汇编中 用C代码,还是在C代码里用汇编,只需要将代码编写成标准的LIB,然后声明一下就可以了 。
2008-9-17 13:15
0
游客
登录 | 注册 方可回帖
返回
//