从C调用英特尔8086汇编程序

从C调用英特尔8086汇编程序,c,assembly,intel,x86-16,C,Assembly,Intel,X86 16,我需要为汇编语言开发一个过程,并从C语言调用该过程(传递一个字符串并返回一个整数值)。我的组装程序“独立”运行良好。我需要帮助把它们连接起来 该程序应该在英特尔8086上运行。我需要使用MASM或emu8086作为汇编程序/模拟器。请推荐一个C编译器,以及一种制作能够调用汇编程序并获取返回值的简单C程序的方法 如何将字符串传递到此外部函数? 如何连接ASM文件和C文件?(编译器如何知道此过程的定义/代码在哪里? 如何在汇编语言中获取从C发送的字符串,以及如何将整数返回给C 推荐一个C编译器 没有

我需要为汇编语言开发一个过程,并从C语言调用该过程(传递一个字符串并返回一个整数值)。我的组装程序“独立”运行良好。我需要帮助把它们连接起来

该程序应该在英特尔8086上运行。我需要使用MASM或emu8086作为汇编程序/模拟器。请推荐一个C编译器,以及一种制作能够调用汇编程序并获取返回值的简单C程序的方法

如何将字符串传递到此外部函数?
如何连接ASM文件和C文件?(编译器如何知道此过程的定义/代码在哪里?
如何在汇编语言中获取从C发送的字符串,以及如何将整数返回给C

推荐一个C编译器

没有足够的信息,但是如果您的平台足够重要,那么GCC可能已经支持它了

也是一种制作简单C程序的方法,能够调用汇编程序并获取返回值

编写简单C程序的方法是使用文本编辑器。(哦,等等,你对代码感兴趣吗?下面是:

#include <stdio.h>

extern int foo();

int main()
{
    int i = foo();
    printf("%d\n", i);
    return 0;
}
#包括
extern int foo();
int main()
{
inti=foo();
printf(“%d\n”,i);
返回0;
}

感谢您的及时回复。是的,这正是我所需要的。只是一些澄清/建议。很抱歉,首先没有提供足够的信息。如何将字符串传递给此外部函数?如何连接ASM文件和C文件?(编译器如何知道这个过程的定义/代码在哪里?)我如何用汇编语言从C中获取字符串,以及如何将整数返回到C?非常感谢!@user1969973在提问之前阅读了C教程?
foo(“HelloWorld”);
因为你没有投票,甚至没有评论,所以我删除了我的答案。