汇编和c语言混合使用案例,汇编语言与C语言的混合使用(转)

本文探讨了在C语言中如何嵌入汇编语言,包括单句和模块格式的嵌入方法,以及如何在C语言中调用汇编语言子程序。通过实例展示了参数传递规则和调用汇编程序时的注意事项,如堆栈管理、参数顺序和返回值处理。同时提到了GCC中的内嵌汇编语法和与Borland、Microsoft编译器的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在C语言中如何使用汇编语言呢?这个问题在不同的编译器中,具体实现方法是不同的。不过在实现大方上也不过就是有两种,而且各种编译器的实现方法也是大同小异。一种是在C语言中嵌入汇编语言代码,另一种是让C语言从外部调用汇编。下面我们就以

Borland格式为例来说一说具体用法。但是,GCC与Microsoft的实现方法的与Borland只在格式上有点区别。当然,GCC的嵌入汇编是

AT&T格式的。还好,不管什么格式,只是表达形式的不同而已,其内在含义是一模一样的。还是那句话各种编译器的实现方法是大同小异的,并没有本质的区别。另外在最后还附带了一篇介绍在GCC中使用内嵌汇编的文章。

一、两种实现方式

首先,我们看一看在C语言中如何嵌入汇编语言代码。在C语言中嵌入汇编语言代码,也有两种格式,一种是单句的,一种是模块的。

我们来看看一些简单的例子。

例子1:

单句格式的:

main()

asm mov ah,2;

asm mov bh,0;

asm mov dl, 20;

asm mov dh,10;

asm int 10h;

模块格式的:

main()

asm{

mov ah,2

mov bh,0

mov dl, 20

mov dh,10

int 10h

在这个小程序里面并没有突出“嵌入”二字。不过从这

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值