已阅读5页,还剩107页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,第三章51系列指令系统和程序设计方法,本章要求:1了解指令格式2掌握寻址方式3熟悉各种操作指令及使用方法4掌握51汇编语言程序设计方法。,.,2,3-1指令系统概述,一汇编指令格式标号:操作码(目的操作数),(源操作数);注释,.,3,双字节指令,用一个字节表示操作码,另一个字节表示操作数或操作数所在的地址。格式为:,操作码,立即数或地址,.,4,三字节指令,一个字节操作码,两个字节操作数。格式为:,操作码,立即数或地址,立即数或地址,.,5,二伪指令1定位伪指令ORGmm指出在该伪指令后的指令的汇编地址2汇编结束伪指令END3赋值伪指令符号名EQU表达式(或寄存器名)4位地址赋值伪指令符号名BIT位地址,.,6,5定义字节伪指令DBx1,x2,xn或字符串Xi为单字节数据,它为十进制数或十六进制数,也可为一个表达式。6定义字伪指令DWY1,Y2,YnYi为双字节数据,它为十进制数或十六进制数,也可为一个表达式,.,7,三常用缩写符号(1)Ri和Rn:表示当前工作寄存器区中的工作寄存器,i取0或1,表示R0或R1。n取07,表示R0R7。#data:表示包含在指令中的8位立即数。#data16:表示包含在指令中的16位立即数。rel:以补码形式表示的8位相对偏移量,范围为-128127,主要用在相对寻址的指令中。,.,8,(5)addr16和addr11:分别表示16位直接地址和11位直接地址。(6)direct:表示直接寻址的地址。(7)bit:表示可位寻址的直接位地址。(8)(X):表示X寄存器中的内容。X为寄存器名。(9)(X):表示以X寄存器的内容为地址的存储器单元内容,即(X)作地址,该地址单元的内容用(X)表示。,.,9,3-2寻址方式,一寄存器寻址寄存器寻址是对由指令选定的工作寄存器(R0R7)、ACC、B、DPTR、CY中的数进行读/写,其中R0R7由操作码低3位表示,ACC、B、DPTR、CY则隐含在操作码中。例:MOVA,R1,.,10,二直接寻址直接寻址是指令直接给出操作数地址,该地址指出了参与运算或传送的数据所在的字节单元或位的地址。例:MOVA,65H可访问SFR、内部数据存储器的低128字节,位地址空间。注意:若直接寻址的地址是SFR中的某一个时,可用名称符号MOVA,TH0MOVA,8CH,.,11,三寄存器间接寻址寄存器间接寻址(用符号表示)是将指定的寄存器内容为地址,由该地址所指定的单元内容作为操作数。例:MOVA,R0用R0、R1来寻址内部RAM(000FFH),用R0、R1、DPTR来访问外部RAM。强调:寄存器中的内容不是操作数本身,而是操作数的地址,到该地址单元中才能得到操作数。寄存器起地址指针的作用。,.,12,若R1中的内容为80H,片内RAM地址为80H的单元中的内容为2FH,则执行该指令后,片内RAM80H单元的内容2FH被送到A中。,例:MOVA,R1,.,13,四立即数寻址立即寻址是由指令直接给出操作数来寻址。即操作数包含在指令字节中。例:MOVA,#62H(注:“#”为立即数指示符号)该寻址方式多为双字节指令。但有一条为3字节MOVDPTR,#3F6AH,.,14,五变址间接寻址以PC或DPTR作为基址寄存器,以累加器A作为变址寄存器,这二者内容之和为程序存储器地址。多用于查表指令。仅有3条:MOVCA,A+DPTR(单字节)MOVCA,A+PCJMPA+DPTR只能对ROM进行寻址。,.,15,.,16,六相对寻址以PC的当前值为基准(实际为本指令之后的字节地址),加上指令中给出的相对偏移量形成有效地址。用于访问ROM例:JC80H注意:偏移量是有符号数,在-128+127之间。,.,17,七位寻址对片内RAM的位寻址区和某些可进行位寻址的SFR中的任一二进制位进行位操作时的寻址方式。例:SETB3DH,.,18,位地址和字节地址的区分通过指令区分:MOVA,20HMOVC,20H可供位寻址的区域片内RAM的20H2FH为位寻址空间(007FH)某些SFR:凡是地址能被8整除的SFR位地址的表示方法MOVC,ACC.7MOV20H,CMOV24H.0,CSETBTR0,.,19,总结:1立即寻址:ROM2直接寻址:片内RAM低128B和SFR、位地址空间3寄存器寻址:工作寄存器R0R7,A,B,C,DPTR4寄存器间接寻址:片内RAM低128B和片外RAM,.,20,5变址间接寻址:ROM6相对寻址:ROM256B范围7位寻址:片内RAM的20H2FHB地址和部分SFR,.,21,3-3指令类型,51系列汇编语言是用42种操作码助记符描述33种操作功能,一种功能可能有几种助记符,与寻址方式结合共产生111条指令。数据传送类:29条算术运算类:24条逻辑运算类:24条控制转移类:17条位操作类:17条,.,22,3-4数据传送指令,.,23,.,24,3-4-1内部数据一般传送指令该类指令的功能是实现数在片内RAM单元之间、寄存器之间、寄存器与RAM单元之间的传送。所有指令具有统一的格式:MOV,;操作码助记符都是MOV,目的操作数和源操作数不同寻址方式的组合就派生出该类的全部指令。记忆这类指令的关键在于掌握两个操作数的各种寻址方式的组合关系。,.,25,访问片内RAM的一般传送指令操作关系图,访问片内RAM的一般传送指令操作关系图,.,26,一累加器为目的操作数的指令MOVA,RnMOVA,directMOVA,RiMOVA,#data,.,27,二寄存器为目的操作数的指令MOVRn,AMOVRn,directMOVRn,#data,.,28,三直接地址为目的操作数的指令MOVdirect,A例:MOV20H,AMOVdirect,RnMOV20H,R1MOVdirect1,direct2MOV20H,30HMOVdirect,RiMOV20H,R1MOVdirect,#dataMOV20H,#34H,.,29,四间接地址为目的操作数的指令MOVRi,A例:MOVR0,AMOVRi,directMOVR1,20HMOVRi,#dataMOVR0,#34H五16位数据传送指令MOVDPTR,#data16,.,30,例1设内部RAM(30H)=40H,(40H)=10H,(10H)=00H(P1)=CAH,分析以下程序执行后各单元及寄存器、P2口的内容。MOVR0,#30H;(R0)30HMOVA,R0;(A)(R0)MOVR1,A;(R1)(A)MOVB,R1;(B)(R1)MOVR1,P1;(R1)(P1)MOVP2,P1;(P2)(P1)MOV10H,#20H;(10H)20H执行上述指令后的结果为:(R0)=30H,(R1)=(A)=40H,(B)=10H,(40H)=(P1)=(P2)=CAH,(10H)=20H。,.,31,3-4-2片内特殊传送指令1堆栈操作指令堆栈操作有进栈和出栈,即压入和弹出数据,常用于保存或恢复现场。进栈/出栈指令用于保存/恢复片内RAM单元(低128字节)或特殊功能寄存器SFR的内容。,.,32,PUSHdirect;sp+1sp,(direct)(sp)POPdirect;(sp)(direct),sp-1sp注意:1留出足够的存储单元作栈区,避免数据重叠。2使用堆栈时,一般要重设SP的初始值。由于压入堆栈的第一个数必须存放在SP+1存储单元,故实际栈顶是在SP+1所指出的单元。,.,33,例:已知片内RAM50H单元中存放数值AAH,设堆栈指针为30H,把此数值压入堆栈,然后再弹出到40H单元中。MOVSP,#30H;30HSPPUSH50H;SP+1SP,(50H)(31H)POP40H;(31H)(40H),SP-1SP40单元内装入数值AAH,SP终值为30H,.,34,2数据交换指令数据传送指令一般都是将操作数自源地址单元传送到目的地址单元,指令执行后,源地址单元的操作数不变,目的地址单元的操作数则修改为源地址单元的操作数。交换指令数据作双向传送,涉及传送的双方互为源地址、目的地址,指令执行后每方的操作数都修改为另一方的操作数。因此,两操作数均未冲掉、丢失。数据交换指令共有如下5条指令:,.,35,.,36,例3设(R0)=30H,30H=4AH,(A)=28H,则执行XCHA,R0后,结果为(A)=4AH,(30H)=28H。XCHDA,R0后,结果为(A)=2AH,(30H)=48H。SWAPA后,结果为(A)=82H。,.,37,3-4-3片外数据存储器数据传送指令,CPU对外RAM的访问只能用寄存器间接寻址的方式,通过累加器A来完成,且仅有4条指令。由于51系统中没有专门对外设的I/O指令,而片外扩展的I/O口与片外RAM是统一编址,所以该指令可作为输入/输出指令,用于和外部设备间传送。,.,38,MOVXA,DPTRMOVXA,RiMOVXDPTR,AMOVXRi,A(i=0,1),.,39,例1把片内6AH单元中数取出,传送到外部RAM单元3000H单元中。MOVDPTR,#3000HMOVA,6AHMOVXDPTR,A,.,40,例2现有一输入设备口地址E000H,在这个口中已有数字量89H,欲将此值读入ACC。MOVDPTR,#0E000HMOVXA,DPTR,.,41,3-4-4访问程序存储器的数据传送指令,又称作查表指令,采用基址寄存器加变址寄存器间接寻址方式,把程序存储器中存放的表格数据读出,传送到累加器A,两条指令均为单字节指令。,.,42,一MOVCA,A+PC功能:将新的PC内容与累加器A内8位无符号数相加形成地址,取出该地址单元中的内容送累加器A。注意:查表范围只能在256个字节范围内二MOVCA,A+DPTR功能:以DPTR为基址寄存器进行查表。允许数表存放在程序存储器的任意单元。,.,43,例ORG8000HMOVA,#30HMOVCA,A+PCORG8030HDBABCDEFGHI执行结果(A)=?,.,44,例ORG1004HMOVA,#10HMOVDPTR,#7000HMOVCA,A+DPTRORG7010HDB02,04,06,08执行结果:(A)=?,PC=?,.,45,3-5算术运算指令,加减法指令形式结构图(a)加减法指令关系图;(b)加1、减1指令关系图,.,46,.,47,注意:对INCdirect和DECdirect两条指令,若直接地址是P0P3端口,则进行“读改写”操作。其功能是修改输出口的内容。即先读入端口的内容,然后在CPU中加(减)1,再输出到端口。读入内容来自端口锁存器而不是引脚。,.,48,例:设(A)=53H,(R0)=0FCH,执行指令:ADDA,R001010011+)11111100(1)01001111结果(A)=4FH,CY=1,AC=0,OV=0,P=1注意:对标志AC、CY、OV、P位的影响,.,49,例:编写1234H+0FE7H的程序,和的高8位存入41H单元,低8位存入40H单元。MOVA,#34HADDA,#0E7HMOV40H,AMOVA,#12HADDCA,#0FHMOV41H,A,.,50,1该指令功能是对BCD码的加法结果进行调整的。它是一条单字节指令。2两个压缩BCD码按二进制相加,必须在加法指令ADD、ADDC后,经过本指令调整后才能得到正确的压缩BCD码和数,实现十进制的加法运算。,DAA,十进制调整指令,.,51,.,52,十进制调整的修正方法:1当A低4位大于9或半进位标志AC=1时,则进行低4位加6修正;2当A高4位大于9或进位标志CY=1时,则进行高4位加6修正。,.,53,例对BCD码加法65+58BDH,进行十进制调整。参考程序如下:MOVA,#65H;(A)65ADDA,#58H;(A)(A)+58DAA;十进制调整,.,54,.,55,乘法指令,MULAB,功能是把累加器A和寄存器B中的两个8位无符号数相乘,将乘积16位数中的低8位存放在A中,高8位存放在B中。若乘积大于FFH(255),则溢出标志OV置1,否则OV清零。乘法指令执行后进位标志CY总是零,即CY=0。,.,56,DIVAB,功能是把累加器A中的8位无符号整数除以寄存器B中的8位无符号整数,所得商存于累加器A中,余数存于寄存器B中,进位标志位CY和溢出标志位OV均被清零。若B中的内容为0时,溢出标志OV被置1,即OV=1,而CY仍为0。,除法指令,.,57,3-6逻辑运算及移位指令,逻辑指令形式结构图,.,58,逻辑操作指令表,.,59,.,60,例(P1)=C5H=11000101B,屏蔽P1口高4位而保留低4位。执行指令:ANLP1,#0FH结果为:(P1)=05H=00000101B。逻辑“与”指令常用来屏蔽(置0)字节中某些位。若清除某位,则用“0”和该位相与;若保留某位,则用“1”和该位相与。,.,61,例若(A)=C0H,(R0)=3FH,(3FH)=0FH,执行指令:ORLA,R0结果为:(A)=CFH=11001111B。逻辑“或”指令常用来使字节中某些位置“1”,其它位保持不变。则欲置位的位用“1”与该位相或,保留不变的位用“0”与该位相或。,.,62,逻辑“异或”指令常用来使字节中某些位进行取反操作,其它位保持不变。欲某位取反该位与“1”相异或;欲某位保留则该位与“0”相异或。,.,63,例:把累加器A中数据的低4位送入外部数据存储器的3000H单元中。MOVDPTR,#3000HANLA,#0FHMOVXDPTR,A结论:某位与“0”相与,则该位被屏蔽为“0”。,.,64,例:将累加器A中低4位的状态通过P1口的高4位输出。ANLA,#0FH;屏蔽高4位SWAPA;高、低半字节交换ANLP1,#0FH;清P1口高4位ORLP1,A,.,65,3-7位操作指令,位操作也称布尔变量操作,它是以位(bit)作为单位来进行运算和操作的。51单片机内部有一个功能相对独立的布尔处理机,它有借用进位标志CY作为位累加器,有位存储器(即位寻址区中的各位),指令系统中有17条专门进行位处理的指令集。位处理指令可以完成以位为对象的数据转送、运算、控制转移等操作。,.,66,3-7位操作指令,位地址的表达方式:1直接地址方式:如D4H2字节寄存器名加位数方式:如PSW.4,(D0).43位名称方式:如RS1,.,67,.,68,一位变量传送指令MOVC,bit或MOVbit,C注:两个操作数中必须有一个为位累加器C二位变量修改指令1CLRC或CLRbit2CPLC或CPLbit3SETBC或SETBbit,.,69,三位变量逻辑操作指令1ANLC,bit2ANLC,/bit3ORLC,bit4ORLC,/bit,.,70,例:设P1口为输入口,P3.0为输出口,执行下列命令:MOVC,P1.0ANLC,P1.1ANLC,/P1.2MOVP3.0,C结果:P3.0=(P1.0)(P1.1)(P1.2),.,71,3-8控制转移指令,4-8-1无条件转移指令一AJMPaddrll(2字节指令)AJMP的机器码是由11位直接地址addr11和指令操作码00001,按下列分布组成的:,.,72,该指令执行后,程序转移的目的地址是由AJMP指令所在位置的地址PC值加上该指令字节数2,构成当前PC值。取当前PC值的高5位与指令中提供的11位直接地址形成转移的目的地址,即,PC15PC14PC13PC12PC11a10a9a8a7a6a5a4a3a2a1a0,转移目的地址(PC),.,73,例:若AJMP指令地址(PC)=2300H。执行指令AJMP0FFH后,结果:转移目的地址(PC)=20FFH,程序向前转到20FFH单元开始执行。又如:若AJMP指令地址(PC)=2FFFH。执行指令AJMP0FFH后,结果为:转移目的地址(PC)=30FFH,程序向后转到30FFH单元开始执行。,.,74,二SJMPrel(2字节指令)rel为8位带符号数例:2100SJMP7FH程序转到PC=2102+7F=2181H若rel=F0H,则转移的PC=20F2H。(用符号位扩展的方法计算),.,75,三LJMPaddr16(3字节指令)该指令执行后,程序无条件地转向16位目标地址(addr16)处执行,不影响标志位。这条指令可以使程序从当前地址转移到64KB程序存储器地址空间的任意地址,故得名为长转移。该指令的缺点是执行时间长,字节多。,.,76,四JMPA+DPTR(散转指令)累加器中8位无符号数与数据指针DPTR中的16位数相加,作为下条指令地址送入PC。该指令的特点是转移地址可以在程序运行中加以改变。,.,77,例:累加器A中存放待处理命令编号(0-7),ROM中存放着标号为PMTB的转移表,根据A内命令编号转向相应的命令处理程序。MOVR1,ARLAADDA,R1MOVDPTR,#PMTBJMPA+DPTRPMTB:LJMPPM0;转向命令0处理入口LJMPPM1;转向命令1处理入口,.,78,3-8-2条件转移指令,该类指令是当某种条件满足时,程序转移执行;条件不满足时,程序仍按原来顺序执行。由于该类指令采用相对寻址,因此程序可在以当前PC值为中心的-128+127范围内转移。一测试条件符合转移指令1JZrel;若(A)=0,则转移2JNZrel;若(A)不为0,则转移3JCrel;若(C)=1,则转移4JNCrel;若(C)=0,则转移,.,79,5JBbit,rel;若(bit)=1,则转移6JNBbit,rel;若(bit)=0,则转移7JBCbit,rel;若(bit)=1,则转移且清“0”直接寻址的位。,.,80,二比较不相等转移指令CJNEA,direct,relCJNEA,#data,relCJNERn,#data,relCJNERi,#data,rel先对两个规定的操作数进行比较,根据比较的结果来决定是否转移。若两个操作数相等,则不转移,程序顺序执行;若两个操作数不等,则转移。如果第一操作数小于第二操作数,则置位进位标志CY,否则清0CY。,.,81,例:温度控制系统,A中存采样温度值Ta,(20)=温度下限值T20,(30)=温度上限值T30,若TaT30程序转降温JW,若T30TaT20程序转至FH,.,82,CJNEA,30H,LOOPAJMPFHLOOP:JNCJWCJNEA,20H,LOOP1AJMPFHLOOP1:JCSWFH:.JW:SW:,.,83,三减一不为0转移指令,DJNZRn,relDJNZdirect,rel每执行一次指令,就把第一操作数减1,并把结果仍保存在第一操作数中,然后判断是否为零。若不为零,则转移到指定的地址单元,否则顺序执行.,.,84,例:延时程序START:SETBP1.1DL:MOV30H,#03HDL0:MOV31H,#0F0HDL1:DJNZ31H,DL1DJNZ30H,DL0CPLP1.1AJMPDL,.,85,3-8-3调用和返回指令,子程序调用指令有长调用和绝对调用两条,它们都是双周期指令。,.,86,一短调用指令ACALLaddr11,.,87,ACALL与AJMP一样提供11位地址,只能调用与PC在同一2KB范围内的子程序。由于该指令为2字节指令,所以执行该指令时应执行(PC)(PC)+2以获得下一条指令地址,并把该地址压入堆栈作为返回地址。,.,88,二长调用指令LCALLaddrl6,.,89,LCALL与LJMP一样提供16位地址,可调用64KB范围内的子程序。由于该指令为3字节,所以执行该指令时首先应执行(PC)(PC)+3,以获得下一条指令地址,并把此时的PC内容压入堆栈(先压入低字节,后压入高字节)作为返回地址,堆栈指针SP加2指向栈顶,然后把目的地址addr16送入PC。,.,90,例:如图所示,在P1.0P1.3分别装有两个红灯和两个绿灯,写出对应的红绿灯定时切换程序。,.,91,MAIN:MOVA,#03HML:MOVP1,AACALLDLMXCH:CPLAAJMPMLDL:MOVR7,#0A3HDL1:MOVR6,#0FFHDL6:DJNZR6,DL6DJNZR7,DL1RET,.,92,返回指令返回指令共两条:一条是子程序返回指令RET,另一条是从中断服务程序返回指令RETI。,.,93,从上述两条指令的功能操作看,都是从堆栈中弹出返回地址送PC,堆栈指针减2,但它们下面两点不同:(1)从使用上,RET指令必须作子程序的最后一条指令;RETI必须作中断服务程序的最后一条指令。(2)RETI指令除恢复断点地址外,还恢复CPU响应中断时硬件自动保护的现场信息。执行RETI指令后,将清除中断响应时所置位的优先级状态触发器,使得已申请的同级或低级中断申请可以响应;而RET指令只能恢复返回地址。,.,94,空操作指令NOP;(PC)(PC)+1该指令是一条单字节单周期指令。它控制CPU不做任何操作,仅仅是消耗这条指令执行所需要的一个机器周期的时间,不影响任何标志位,故称为空操作指令。NOP指令在设计延时程序、拼凑精确延时时间及在程序等待或修改程序等场合是很有用的。,.,95,3-9程序设计方法,3-9-1程序设计的步骤分析问题确定算法设计程序框图确定数据格式、分配工作单元,细化程序框图编写汇编语言程序程序测试程序优化,.,96,3-9-2程序框图和程序结构,程序框图执行框:以矩形框表示,框内写上某些操作。判断框:以或表示,框内写上判断的条件,根据条件是否满足控制执行不同的操作。开始框:以表示,表示程序的开始。结束框:以表示,表示程序的结束。,.,97,3-9-3循环程序设计,1循环初态即设置循环过程中工作单元的初始值。例如:设置循环次数计数器、地址指针初值等。2循环体即重复执行的程序段部分。完成主要的计算或操作任务,也包括对地址指针的修改。3循环终止控制当循环次数已知时,循环终止控制一般采用计数方法,即用一个寄存器(R0R7或内部RAM单元)作为循环次数计数器。用DJNZ指令实现计数方法的循环终止控制。,.,98,例:如果Xi为单字节数,并按i顺序存放在内部RAM从50H开始的单元中,n放在R2中,现在要求它们的和(双字节),放在R3R4中,编制相应的程序。,NSUN:MOVR3,#0MOVR4,#0MOVR0,#50HLOOP:MOVA,R4ADDA,R0MOVR4,ACLRA,ADDCA,R3MOVR3,AINCR0DJNZR2,LOOPRET,.,99,当循环次数未知时,需要根据某种条件来判断是否应该终止循环。常用条件转移指令来控制循环的结束。,.,100,例:设在外部RAM中有一个ASCII字符串,它的首地址在DPTR中,字符串以0结尾。现在要求用串行口把它发送出去。在串行口已经初始化(TI置1)的条件下,写出程序。,SOUT:MOVXA,DPTRJNZSOT1RETSOT1:JNBTI,SOT1CLRTIMOVSBUF,AINCDPTRSJMPSOUT,.,101,多重循环例:编写50ms的延时子程序,DEL:MOVR7,#200DEL1:MOVR6,#125DE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南昌交通学院单招综合素质考试题库及答案详解(各地真题)
- 2026年南京特殊教育师范学院单招职业倾向性考试题库含答案详解(b卷)
- 2026年南京城市职业学院单招职业适应性测试题库参考答案详解
- 心砺前行-无悔青春-关于青春作文1500字
- 2026年兰考三农职业学院单招职业倾向性测试题库带答案详解(精练)
- 2026年兰州航空职业技术学院单招职业适应性考试题库附参考答案详解(基础题)
- 2026年保定电力职业技术学院单招职业技能考试题库及参考答案详解
- 2026年内蒙古丰州职业学院单招职业倾向性测试题库及答案详解(名校卷)
- 2026年航空物流有限公司新媒体平台运营管理制度
- 法律文书写作:规范、方法与实务【课件文档】
- 2026年智能手环技术分析报告
- 2026年及未来5年中国接触器市场供需格局及未来发展趋势报告
- 车辆特情处置课件
- 恶性肿瘤高钙血症
- 毕业论文写作与答辩(第三版)课件 6-5 论点与论据
- 2025年江苏省宿迁市中考数学试题(原卷版)
- 昆明市寻甸县特聘动物防疫专员考试试题及答案
- 2021-2025全国高考数学真题汇编 专题03 等式与不等式、基本不等式及一元二次不等式9种常见考法归类
- 面馆开店投资可行性分析报告
- 中西医结合麻醉
- T/CECS 10055-2019绿色建材评价集成墙面
评论
0/150
提交评论