
用低划线_后接关键字asm指示后面的语句是汇编语句。汇编语句既可以是单句,例如__asm mov bx,1;也可以是复合语句,即,用花括号对包含的多条单句,例如:
__asm
{ mov al, 3
mov dx, 0xE008
add ax,dx
}
在语法规则中,这些语句与C语言的语句完全等价。因此,可以直接进行编译。
你是指内联汇编吧?比如下面这个例子:
#include <stdio.h>int func(int a, int b)
{
return a - b
}
int main()
{
//计算 12-5
int a = 12, b = 5 //给定两个数
int res //用来记录结果
__asm{ //内联汇编
push b //b压栈
push a //a压栈,注意C中函数接受参数的时候入栈是反着的
call func //调用函数func, 返回值保存在eax里
mov res, eax //将eax里的值赋给res
}
printf("%d\n", res) //输出结果,得到7
return 0
}
高级数控编程:子程序调用及编程举例
一次装夹加工多个形状相同或刀具运动轨迹相同的零件,即一个零件有重复加工部分的情况下,为了简化加工程序,把重复轨迹的程序段独立编成一程序进行反复调用, 这重复轨迹的程序称为子程序,而调用子程序的程序称主程序。
子程序的调用
子程序的`调用方法如图1-2所示。需要注意的是,子程序还可以调用另外的子程序。从主程序中被调用出的子程序称一重子程序,共可调用四重子程序,如图1-3所示。
在子程序中调用子程序与在主程序中调用子程序方法一致。
格式:M98 P L
说明:P:子程序名
L:重复调用次数,省略重复次数,则认为重复调用次数为1次
例:M98 P123 L3
表示程序号为123的子程序被连续调用3次,如图1-4所示。
子程序中必须用M99指令结束子程序并返回主程序。
应用举例:
加工如图1-5所示轮廓,以知刀具起始位置为(0,0,100),切深为10mm,试编制程序。
图1-6
相关知识点:
●在使用子程序编程时,应注意主、子程序使用不同的编程方式。一般主程序中使用G90指令,而子程序使用G91指令,避免刀具在同一位置加工。
●当子程序中使用M99指令指定顺序号时,子程序结束时并不返回到调用子程序程序段的下一程序段,而是返回到M99指令指定的顺序号的程序段,并执行该程序段。
编程举例:如图1-6所示。
子程序执行完以后,执行主程序顺序号为18的程序段。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)