![(8).3数据处理指令及应用_第1页](http://file4.renrendoc.com/view/8761ceac1c99f477594d6f60c1abcff4/8761ceac1c99f477594d6f60c1abcff41.gif)
![(8).3数据处理指令及应用_第2页](http://file4.renrendoc.com/view/8761ceac1c99f477594d6f60c1abcff4/8761ceac1c99f477594d6f60c1abcff42.gif)
![(8).3数据处理指令及应用_第3页](http://file4.renrendoc.com/view/8761ceac1c99f477594d6f60c1abcff4/8761ceac1c99f477594d6f60c1abcff43.gif)
![(8).3数据处理指令及应用_第4页](http://file4.renrendoc.com/view/8761ceac1c99f477594d6f60c1abcff4/8761ceac1c99f477594d6f60c1abcff44.gif)
![(8).3数据处理指令及应用_第5页](http://file4.renrendoc.com/view/8761ceac1c99f477594d6f60c1abcff4/8761ceac1c99f477594d6f60c1abcff45.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2篇可编程控制器应用技术
教学课件红河学院徐绍坤
442902133@8.1功能指令概述8.2传送比较指令及应用8.3数据处理指令及应用8.4控制类指令及应用第八章功能指令及应用8.5数据处理指令及应用8.6FX2N可编程控制器通讯技术一、四则及逻辑运算指令内容提要:数据处理类指令通常指编、解码,复位、求平均值等。为方便将四则运算及逻辑运算、移位指令归于一类。数据处理指令是编制数据运算及数据控制的主要指令。编码、移位指令方便于一些控制规律。本章介绍数据处理指令的使用方法及应用。二、移位控制指令三、数据处理指令四、数据处理类指令的应用及编程8.3FX2系列可编程控制器数据处理指令四则运算及逻辑运算指令说明指令名称助记符指令代码位数操作数范围程序步S1(*)S2(*)D(*)加法ADDADD(P)FNC20(16/32)K、HKn
X、Kn
Y、Kn
M、Kn
ST、C、D、V、ZKn
X、Kn
MKn
S、T、C、D、V、ZADD7步DADD13步减法SUBSUB(P)FNC21(16/32)SUB7步DSUB13步FCN20D12D10X0ADDD14[S1*][D*][S2*]FCN21D12D10X1SUBD14[S1*][D*][S2*]加法指令(Addition):X0由OFF转ON时,[D10]+[D12]传[D14]运算是代数运算,如5+(-8)=-3减法指令(Subtraction):X1由OFF转ON时,[D10]-[D12]传[D14]运算是代数运算,如5-(-8)=13图8-1加、减法指令的使用一、四则及逻辑运算指令指令名称助记符指令代码位数操作数范围程序步S1(*)S2(*)D(*)乘法MULMUL(P)FNC22(16/32)K、HKn
X、Kn
Y、Kn
M、Kn
ST、C、D、ZKn
Y、Kn
MKn
ST、C、DMUL7步DMUL13步除法DIVDIV(P)FNC23(16/32)DIV7步DDIV13步FCN22D2D0X0MULD4[S1*][D*][S2*]FCN23D2D0X1DIVD4[S1*][D*][S2*]图8-2乘、除法指令的使用乘法Multiplication:16位运算32位X0由OFF转ON时,[D0]*[D2]传[D5,D4]如:[D0]=8,[D2]=9,[D5,D4]=7232位运算32位64位[D1,D0]*[D3,D2]传[D7,D6,D5,D4]如:[D1,D0]=238,[D3,D2]=189[D1,D0]*[D3,D2]=[D7,D6,D5,D4]=44892除法(Division)运算16位:[D0]=19,[D2]=3,商[D4]=6,余数[D5]=132位:[D1,D0]÷[D3,D2]商[D5,D4]余数[D7,D6]最高位总是符号位。指令名称助记符指令代码位数操作数范围程序步D(*)加1INCINC(P)FNC24(16/32)Kn
Y、Kn
M、Kn
ST、C、D、V、ZINC7步DINC13步减1DECDEC(P)FNC25(16/32)DEC7步DDEC13步FCN24D10X0INC[D*]FCN25D10X1DEC[D*]加1指令(Increment):X0由OFF转ON时,[D10]中的二进制数自动加1。若用连续指令时,每扫描周期加1。16位运算:+32767再加1就变成-32768,标志不置位;32位运算:+2147483647再加1就变成-2147483648,标志不置位;减1指令(Decrement):
X1由OFF转ON时,[D10]中的二进制数自动减1。若用连续指令时,每扫描周期减1。16位运算:-32768再减1就变成+32767,标志不置位;32位运算:-2147483648再减1就变成+2147483647,标志不置位;图8-3加1、减1指令的使用指令名称助记符指令代码位数操作数范围程序步S1(*)S2(*)D(*)逻辑字与ANDAND(P)FNC26(16/32)K、H
Kn
X、Kn
Y、
Kn
M、Kn
ST、C、D、V、Z
Kn
Y、
Kn
M
Kn
S、T、C、D、V、ZWAND7步DANDC13步逻辑字或OR0R(P)FNC27(16/32)WOR7步DORC13步逻辑字异或XORXOR(P)FNC28(16/32)WXOR7步DXORC13步与或异或M=A·BM=A+BM=A(+)BABMABMABM000000000010011011100101101111111110
逻辑运算关系表FCN26D12D10X0WANDD14[S1*][D*][S2*]FCN27D12D10X1WORD14[S1*][D*][S2*]FCN28D12D10X2WXORD14[S1*][D*][S2*]X0=ON,(D10)与运算(D12)送D14如:1×1=1,0×1=0,1×0=0,0×0=0X1=ON,(D10)或运算(D12)送D14如:1+1=1,0+1=1,1+0=1,0+0=0X2=ON,(D10)异或运算(D12)送D14如:1(+)1=0,0(+)1=1,
1(+)0=1,0(+)0=0图8-4字逻辑运算指令的使用
X0M1X11MOV(P)BCD(P)INC(P)CMP(P)K0Z0C0Z0K4Y0Z0K10Z0M1图8-5综合运算举例X0=ON,K0传Z0,Z0被置0X11=ON,计数器C0-C9当前值转为BCD码后输出到K4Y0。Z0寄存器加1;常数10与Z0当前值比较,10>Z0,M1为ON;10=Z0,M2为ON;10<Z0M3为ON。FNC12FNC10FNC18FNC24X10MOV(P)K2X0D0MOV(P)K38D1MOV(P)K255D2MOV(P)K2D3MUL(P)D0D1DIV(P)D4D2ADD(P)D5D3D4D5K2Y0END例:四则运算式的实现。进行下式运算+2,运算结果送输出口K2Y0。X0从OFF转ON,K2X0送入的数传D0常数38传D1FNC12常数2传D3D0×D1即38×X后传D4D4÷D2即(38×X)/255后传D5(余数传D6)D5+D3即[(38×X)/255]+2运算结果去驱动K2Y0。38X255FNC12FNC12FNC12FNC22FNC23FNC20K4Y0例:用乘除法运算实现灯组移位循环。灯组为Y0-Y17,每秒正序单个移位。M8002Y17SETY0RSTY0MUL(P)K4Y0K2K4Y0DIV(P)K4Y0K2
Y0X0X1Y0M8013M8013END
上电时Y0被置位(置初值)Y17Y16Y15Y14Y13Y12Y11Y10Y7Y6Y5Y4Y3Y2Y1Y0000000000000000100000000000000100000000000000100…………..正序移位……….FNC12FNC12M8034X1INC(P)INC(P)K4Y0ZZM1M8013X1DEC(P)DEC(P)K4Y0ZZM1M8013X1M8002Y14Y0M0RSTZSETM1PLSM0RSTM1ENDM1例:用加1、减1运算实现彩灯控制。灯组为Y0-Y17,彩灯状态变化的时间单元为1S,用M8013完成。上电时Z0被置位(置初值0)M8034为ON时,禁止所有输出上电时Z=0,K4Y0Z=0,即Y0输出;加1后Z=1,K4Y0Z=1,即Y1输出(Y0保持通状态);…..依次加1驱动当Y14=ON时,M1置位。断开加1、启动减1指令当Y0=OFF时,M0被上沿微分驱动。从Z=14,K4Y0Z=14,即Y14输出开始减1;依次减1驱动,直至Y0为OFF。当M0=ON时,M1复位(M1=OFF)断开减1、启动加1指令,反复循环执行。FNC24FNC24FNC25FNC25M8000K31709MOVK4Y0WOR(P)K4Y0K4M0K33826WXOR(P)K4Y0K4M0X0X1FNC12例:有12只指示灯,接于K4Y0。一般情况下,部分亮部分灭,有时全开或全闭。试用一只开关打开全部灯,用另一只开关熄灭所有的灯。ENDK4M0FNC27FNC26将K4Y0当前值传K4M0
将K31709与K4M0当前值按位进行逻辑或运算后传K4Y0(驱动)
将K33826与K4M0当前值按位进行逻辑异或运算后传K4Y0(驱动)Y17Y16Y15Y14Y13Y12Y11Y10Y7Y6Y5Y4Y3Y2Y1Y00111111111001110Y17Y16Y15Y14Y13Y12Y11Y10Y7Y6Y5Y4Y3Y2Y1Y01000000000110001开灯字(K31709)关灯字(K33826)指令名称助记符指令代码位数操作数范围程序步D(*)n循环右移RORROR(P)FNC30(16/32)Kn
Y、Kn
M、Kn
ST、C、D、V、ZK、H移位量n≤16、16位n≤32、32位ROR5步DROR13步01111111110011101101011101111110执行一次后右循环ROR(RotationNRight)[左循环ROL(RotationLeft)(FNC31)]X0由OFF变ON时,[D]内各位数据向右移n位,最后一次从最低位移出的状态也存于进位标志M8022中。FCN30D0X0ROR(P)K4[D*]n高位低位循环右移二、移位控制指令指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n1n2位右移SFTRSFTR(P)FNC34(16)X、YM、SY、M、SK、HSFTR9步X0FCN34SFTR(P)X0M0K16K4[S*][D*]n1n2SFTR(ShiftRight)位右移[SFTL(ShiftLeft)位左移
FNC35]M15M14M13M12M11M9M8M7M6M0M10M5M2M3M4M1X0X1X2X3M0~M15有n1位执行一次后,右移n2位执行一次后:(M3-M0)溢出;(M7-M4)(M3-M0);(M11-M8)(M7-M4);(M15-M12)(M11-M8);(X3-X0)(M15-M12)。指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n1n2字右移WSFRWSFR(P)FNC36(16)Kn
X、Kn
YKn
M、Kn
ST、C、DKn
Y、Kn
MKn
S、T、C、DK、Hn2≤n1≤512WSFR9步X0FCN36WSFR(P)D0D10K16K4[S*][D*]n1n2WSFR(WordShiftRight)字右移[WSFL(WordShiftLeft)字左移FNC37]D25D24D23D22D21D19D18D17D16D10D20D15D12D13D14D11D0D1D2D3D10~D25有n1位字执行一次后,右移n2位字执行一次后(D13-D10)溢出;(D17-D14)(D13-D10);(D21-D18)(D17-D14);(D25D22)(D21-D18);(D3-D0)(D25-D22)。指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n先进先出写入SFWRSFWR(P)FNC38K、HKn
X、Kn
Y
Kn
M、Kn
ST、C、DV、ZKn
Y、Kn
MKn
ST、C、DK、H2≤n≤512SFWR7步先进先出读出SFRDSFRD(P)FNC39SFRD7步X0FCN38SFWR(P)[S*][D*]nD0D1K10先写先出FIFO(FirstinFirstout)写入指令SFWR(ShiftRegisterWrite)读出指令SFRD(ShiftRegisterRead)D10D9D8D7D6D5D4D3D2D1D20n=10点D10D9D8D7D6D5D4D3D2D1D0n=10点
指针123X0FCN39SFRD(P)[S*][D*]nD1D20K10
指针123X0=ON,D0中的数据写入D2,而D1变成指针,其初值被值为1。X0再次为ON,D0中新的数据写入D3,D1中的数变为2。依次类推。
X0=ON,D2中的数据送D20,同时指针D1的内容减1,D3-D10的数据向右移一个字。X0再次为ON,D2中的内容实为D3内容读到D20,D1的内容再减1,依次类推当D1的内容为0时,不再执行,零标志M8020动作。(数据总是从D2读出)源移位指令的应用举例例:流水灯光控制。有8个灯接于K2Y0,当X0=ON时,灯先以正序每隔1S轮流点亮,当Y7亮后,停2S;反序每隔1S轮流点亮,当Y0再亮后,停2S,重复上述过程。X1为ON时,停止工作。FCN30K4Y0ROR(P)K1X0PLSM100FCN12K1M100MOV(P)K2Y0FCN12K0X1MOV(P)K2Y0FCN31K4Y0M0ROL(P)K1Y7SETM1RSTM1X0M0T1M1X1M0M8013M1T0K20T0M8013X1M2M1Y0T1K20M2ENDT1X1置初值,灯Y0亮程序起动运行停止工作。X1=ON,K2Y0回0位。没有灯亮
正序左循环移位,每隔1S移动K1位。K4Y0是16位有效格式。Y7=ON,左循环移位停,延时2S
右循环移位,每秒移K1位。Y0=ON,右循环移位停,延时2S后,重复上述。以位移指令实现步进电机正反转和调速控制。以三相三拍电机为例,脉冲列由Y0-Y12(晶体管输出)送出,作为步进电机驱动电源功放电路的输入。程序中采用积算定时器T246为脉冲发生器,设定值为K2-K500,定时为2ms-500ms,则步进电机可获得500步/s-2步/s的变速范围。X0为正反转切换开关(X0为OFF时,正转;X0为ON时,反转),X2为起动按钮,X3为减速按钮,X4为增速按钮。以正转为例,程序开始运行前,设M0为0。M0提供移入Y10、Y11、Y12的“1”或“0”,在T246的作用下最终形成011、110、101的三拍循环。T246为移位脉冲产生环节,INC指令及DEC指令用于调整T246产生的脉冲频率。T0为频率调整时间限制。调速时,按住X3(减速)或X4(增速)按钮,观察D0的变化,当变化值为所需速度值时,释放。如果调速需经常进行,可将D0的内容显示出来。例:步进电机控制X0T246FCN35SFTL(P)M0Y10K3K1SETM0RSTM0X0T246FCN34SFTR(P)M1Y10K3K1SETM1RSTM1RSTM4FCN12MOVK500D0RSTT246FCN24INC(P)D0FCN25DEC(P)D0SETM4PLFM10Y11Y10Y11Y12M8002T246X2T246D0X3M8012M4M8012X4M4T0X3X4T0X3X4M10T0K480END1、上电时,常数500送入D02、按X2起动,T246计时500ms3、T246计时500ms后,M0为1;执行第一次位左移,Y10为1。T246第二次计时后,执行第二次位左移,Y11为1。4、T246计时500ms后,T246置0并重新计时。5、Y10、Y11均为1时,M0置0。在T246作用下形成011、110、101的Y三拍循环。6、按X4,执行减1指令,下调T246计时数D0。7、按X3,执行加1指令,上调T246计时数D0。8、上、下调T246计时数限时48秒。9、T0计时48S,M4为1切断INC或DEC指令。10、X3、X4下沿时PLF产生脉冲使M10为1,并使M4置0,INC或DEC投入待运行状态。(T246~T249为1ms定时器)例:产品的进出库控制。先进先出控制指令应用于仓库产品进出记录控制中取出产品入库地址号程序。产品地址号为4位以下数字,最大库存量为99点以下,采用十六进制。当入库按钮X20按下时,输入口K4X0输入数据到D256,并存入D257开始的100个字元件组成的堆栈中。当出库按钮X21按下时,从D257开始的100个元件组成的堆栈中取出一个数据送至输出口K4Y0。X21FCN12MOVK4X0D256X20FCN12MOVK4Y0D356M8000FCN38SFWR(P)D256D257K100FCN39SFRD(P)D256D357K100
需出库按钮
需入库按钮1、运行标志(RUN)PLC运行时监控接通,D356送输出口K4Y0。2、X20为ON,入库产品地址由K4X0键入并送D256;再入库,D256数据变
3、D256的数传D258,指针内容D257成为1;D256数据传D259,指针D257成为2(指针最长为100-1=99)4、SFRD与SFWR相反(略)数据处理指令说明指令名称助记符指令代码位数操作数范围程序步D1(*)D2(*)区间复位ZRSTZRST(P)FNC40(16)Y、M、S、T、C、D(D1≤D2)ZRST5步FCN40M500M8002ZRSTM599[D1*][D2*]FCN40C235ZRSTC255FCN40S0ZRSTS127ZRST(ZoneReset):将[D1*]、[D2*]中的同类元件成批复位。[D1*]的元件号小于[D2*]的元件号(否则只有[D1*]指定的元件被复位)。除了ZRST指令外,可以用RST指令复位单个元件。用多点写入指令FMOV将K0写入Kn
X、Kn
Y、Kn
M、Kn
S、T、C、D也可以将它们复位。图例中,上电时M500-M599、C235-C255、S0-S127同时成批复位。三、数据处理指令指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n解码DECODECO(P)FNC41(16)K、HX、Y、M、ST、C、D、VZY、M、ST、C、DK、H1≤n≤8DECO7步X10FCN41DECO[S*][D*]nX0M10K3DECO(Decode)解码指令:将源[S*]中的X2-X0组成的3位(n=3)二进制数为011,相当于十进制数3(21+20=3),由目标[D*]M17-M10组成的8位二进制数的第三位(M10为第0位)M13被置1,其余各位为0。如源数据全0,则M10置1。若n=0,程序不执行;n=0-8以外,出现运算错误。当n=8,[D*]位数为28=256。驱动输入为OFF时,不执行指令。上次解码输出置1的位保持不变。[S*]011X2X1X0[D*]M17M16M15M14M13M12M11M10b7b6b5b4b3b2b1b0000000010×22+1×21+1×20=32n位(23=8)X10FCN41DECO[S*][D*]nD0D1K32n位(23=8)D01111111100000000b15b0[S*]n位(n=3)0010000000000000[D*]D1当[D]是字元件时,以源[S]所指定字元件的低n位所表示的十进制码Q,DECO指令将以[D]所指定目标元件的第Q位(不含最低位)置1,其它位置0。源数据Q=21+20=3,因此D1的第三位为1。当源数据为0时,第0位为1。若n=0,程序示执行;n=0-4以外时,出现运算错误。若n=4时,[D]位数为24=16。驱动输入OFF时,不执行指令,上一次解码输出置1的位保持不变。若指令是连续执行型,则在各个扫描周期都会执行,必须注意。0×22+1×21+1×20=3M8000FCN41DECO[S*][D*]nD0M0K42n位(24=16位)D00101111100000011b15b0[S*]n位(n=4)0000000100000000[D*]M71×23+1×22+1×21+0×20=14DECO指令的应用M0M1M2M14M15
根据D0所存储的数值,将M组合元件的同一地址号接通。在D0中存储0-15的数值。取n=K4,则与D0(0-15)的数值对应,M0-M15有相应1点接通。
n在K1-K8间变化,则可以与0-255的数值对应。但是为此解码所需的目标软元件范围被占用,务必要注意,不要与其它控制重复使用。指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n编码ENCOENCO(P)FNC42(16)X、Y、M、ST、C、D、VZT、C、DV、ZK、H1≤n≤8ENCO7步X10FCN41ENCO[S*][D*]nM10D10K3[S*]M17M16M15M14M13M12M11M100000000012n位(23=8)1234567D100100000000000001b15b0[D*]n位(n=3)ENCO(Encode)解码指令:当[S]是位元件时,以源[S]为首地址、长为2n的位元件中,最高置1的位置被存放到目标[D]所指定的元件中去,[D]中数值范围由n确定即源长度为2n位(23=8)M10-M17,其最高置1位是M13即第三位,将“3”位置数(二进制)存放到D10的低3位中。
当源数的第一个(即第0位)位元件为1,则[D]中存放0。当源数中无1,出现运算错误。若n=0时,程序不执行;n=1~8以外时,出现运算错误。若n=8时,[S]位数为28=256。驱动输入为OFF时,不执行指令。上次编码输出保持不变。X10FCN41DECO[S*][D*]nD0D1K32n位(23=8位)D01100111100000010b15b0[S*]n位(n=3)1100000000000000[D*]D1b1b2b3b4b5b6b7b0b15当[S]是字元件时,在其可读长度为2n位中,最高置1的位被存放到目标[D]所指定的元件中去,[D]中数值的范围由n确定。上图中源字元件可读长度为2n=23=8位,其最高置1位是第3位。将“3”位置数(二进制)存放到D1的低3位中。当源数的第一个(即第0位)位元件为1,则[D]中存放0。当源数中无1,出现运算错误。若n=0时,程序不执行;n=1~4以外时,出现运算错误。若n=4时,[S]位数为24=16。驱动输入OFF时,不执行指令,上次编码输出保持不变。若指令是连续执行型,则在各个扫描周期都执行,必须注意。指令名称助记符指令代码位数操作数范围程序步S(*)D(*)n平均值MEANMEAN(P)FNC45(16)Kn
X、Kn
Y、
Kn
M、Kn
ST、C、DKn
Y、Kn
M、Kn
ST、C、D、V、ZK、H1~64MEAN7步MEANP7步X10FCN45MEAN[S*][D*]nD0D10K3
(D0)+(D1)+(D2)3D10MEAN平均值指令:将[S]开始的n个源操作数据的平均值(用n除代数和)存入目标操作数[D]中,舍去余数。如超出元件规定地址号范围,n值自动减小。n为1~64以外时,会发生错误。橡胶机械顺序控制的应用举例SA1置“自动”SA1置“手动”主机起动运行指示结束指示主机停止工序1工序2工序3工序4工序1工序2工序3工序4SB1SB3SB3SB3SB3SB24S4S3S3S2S
主机由SB1按钮起动,SB2按钮停止,SA为控制状态选择开关,有“自动”、“手动”控制。I/O分配如下:SB1—X0,SB2—X1,SA1自动—X2,SA1手动—X3,热保护FR—X4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年12月黄山屯溪区事业单位公开招聘急需紧缺人才17人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 《时尚北京》杂志2023年第11期
- 新上岗护士医院感染知识培训课件
- 第5课《黄河颂》课件【高效课堂】统编版语文七年级下册
- 《时尚北京》杂志2024年第10期
- 二零二五年度土石方爆破作业安全培训与考核合同
- 第2节 生活中的透镜(备课讲义)-2021-2022学年八年级物理上册同步备课讲义和课后训练(人教版)
- 2025危重孕产妇转诊专家共识解读课件
- (高清版)JJF(皖) 206-2025 前向散射能见度仪校准规范
- 《定量预测方法》课件
- 《水电站继电保护》课件
- 沈阳市第一届“舒心传技 莘绅向阳”职业技能大赛技术工作文件-27-全媒体运营师
- 2025年三方运输合作协议经典版(三篇)
- 2025年《赢在执行》心得体会(4篇)
- 2025年华润燃气投资中国有限公司招聘笔试参考题库含答案解析
- 2025年多彩贵州航空有限公司招聘笔试参考题库含答案解析
- 安全生产网格员培训
- 2025年江苏泰州市住房和城乡建设局下属事业单位公开招聘工作人员历年高频重点提升(共500题)附带答案详解
- 深圳建筑工程公司财务管理制度
- 小红书搜索推广营销师认证考试题(附答案)
- 符合TSG07-2019 B级锅炉制造质量手册首版
评论
0/150
提交评论