展开全部
_asm mov ax,0;
_asm{
mov ax,0
mov bx,0
}
两种写法都行,VC++6.0编译通过
_asm{
mov ax,0
mov bx,0
}
两种写法都行,VC++6.0编译通过
追问
我看到过这样一来的语句是什么意思呢 头文件中包含有 #define DINT asm('clrc INTM')
然后就可以在主程序中直接使用DINT,是不是代表 asm可以这样用:asm('clrc INTM')
追答
用#define意思就是在程序里的DINT在编译的时候都会被替换成asm('clrc INTM')
相当于起了个别名
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
汇编啊!那是哦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
汇编语言(Assembly Language)是面向机器的程序设计语言.汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。因此汇编语言亦称为符号语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为汇编。
汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。
在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。因此汇编语言亦称为符号语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为汇编。
汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
引用鲨鱼的代码。
__asm mov ax,0;
__asm char myfonc(char a,char b)//像C语言那样命名函数名,也可以不要
{
mov xx,r0
mov xx,r1
mov ax,0
mov bx,0mov r0,xx//r0返回函数值
bx lr//返回主函数
}
__asm的作用就是告诉编译器这是汇编代码,第1个是在C程序中内联汇编的形式(asm后面直接跟汇编语句),第二个是在C程序内嵌汇编的形式;内嵌汇编的好处就是在C程序中可以通过函数名调用,而且还可以带参数,第一个参数a传给CPU通用寄存器r0(函数的返回值也是通过它返回),第二个参数b传给CPU通用寄存器r1以此类推,以实现对CPU寄存器的操作,如果是对STM32 Cortex-M3进行操作,只能用第2种内嵌汇编的形式操作,另外Cortex-M3中的特殊寄存器可以像CPU寄存器r0那样直接引用其寄存器名字来操作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询