




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第一章
1-1請說明CPU的功能以及CPU是如何執(zhí)行指令和程序的。
答:CPU的功能是執(zhí)行程序和統(tǒng)籌處理計算機(jī)系統(tǒng)中各類事務(wù)。
CPU執(zhí)行指令分為3步:取指令、分析指令、執(zhí)行指令;計算機(jī)程序
是由一條條指令按一定的順序排列組成的,CPU執(zhí)行程序的過程就是
一條條指令累計執(zhí)行的過程,其方式分為串行作業(yè)方式和流水線作業(yè)
方式。
1-2請說明單片機(jī)內(nèi)部主要是由哪些部件組成的,并說明各部件的作
用。
答:CPU:由控制器和運算器構(gòu)成,控制器的作用是執(zhí)行指令和協(xié)調(diào)
系統(tǒng)各部件的工作;運算器的作用是進(jìn)行邏輯運算和算術(shù)運算。
存儲器:存儲計算機(jī)工作時使用的信息,即指令代碼和數(shù)據(jù)代碼。
I/O接口電路:具有數(shù)據(jù)緩沖、數(shù)據(jù)隔嚼及數(shù)據(jù)轉(zhuǎn)換的功能。
1-3請問對于容量位8K的存儲器芯片,它的地址線是多少根?
答:8K=8192=213,故地址線為13根。
另附:存儲器的數(shù)據(jù)線由存儲器的字長決定,例如一塊32Kxi6(存
儲器容量顯示格式:存儲單元數(shù)X存儲單元的字長)的存儲器,其地
址線為15根,數(shù)據(jù)線為16根。
1-4將十進(jìn)制數(shù)78,134,分別用二進(jìn)制數(shù)、十六進(jìn)制數(shù)和8421BCD
嗎表示。
答:(78)D=(1001110)B=(4E)H=(01111000)8421BCD
(134)D=(10000110)B=(86)H=(000100110100)842IBCD
i
注:8421BCD碼為4位表示一個十進(jìn)制數(shù)符,本質(zhì)是符號不是數(shù)值,
所以不可省略0。
1-5將下列真值分別轉(zhuǎn)化為用8位和16位二進(jìn)制數(shù)表示的原碼、補
碼和反碼。
X=1000100;
[XL位原=[Xh位反=[X]8位補=01000100;[X]16位原=[X]16位反=[XL位補
=0000000001000100
X=-1000100
兇$位原二11000100,兇8位反二10111011,兇8位補=10111100;
兇怖位原二1000000001000100,[X]16位反=1111111110111011,[X]15位補
=1111111110111100;
X=-0111111
位反位補
[XLM=10111111,兇8=11000000,兇8=11000001;
[X]16原=1000000000111111,兇歷位反=1111111111000000,[X]15位補
=1111111111000001;
1-6將下列補碼轉(zhuǎn)化成二進(jìn)制數(shù)的真值。
[X]補=00101100;
X=101100
[X]補=11111111;
X=-l
[X]補=10000000;
X=-10000000
1-7已知下列補碼兇補和[Y]補,分別求[X+Y]補、[X-Y]補。并判斷運算結(jié)果
是否出現(xiàn)溢出。
[X]補=10011001,[Y]補=00101100;
卜Y]補=11010100,[X+Y]4=[X]4+[Y]4=11000101不溢出;[X-Y]補二兇補H-Y]
補<X]補?[Y]產(chǎn)01101101溢出;
[Xj^llllllll,[Y]>t=10000000;
卜/9位補=010000000,[X+Y]補,X]補+[Y]補=0111X111溢出;[X?Y]補=兇補+卜丫]
補,X]補?[Y]補=01111111不溢出;
兇補二00110111,[Y]補=11100000;
卜Y]補=00100000,[X+Y]補=[X]補+[Y]補=00010111不溢出;[X-Y]補=[X]補+卜丫]
補<X]補-[Y]產(chǎn)01010111不溢出;
[X]補=10000111,[Y]補=11000000;
[Y]補=01000000,}+丫]補=兇補+[Y]補=01000111溢出;[X?Y]產(chǎn)兇補+卜Y]補
=兇補?[丫]產(chǎn)11000111不溢出;
方法提示:由于補碼是按序列排列的,所以可以直接進(jìn)行加和減,即
[X+Y]補,X]補+[Y]補;[X-Y]補,X]補?[修補
另補碼減法也可用加法實現(xiàn)[X-Y]補=[X]補+卜丫]補。上題的第2小題,由于
8
[Y]8^h=10000000=2,Y=28,所以(-Y)二28,已不能用8位補碼表示,可
以先擴(kuò)補位9位補瑪,然后進(jìn)行運算,或直接用[X-Y]產(chǎn)[X,-[Y]補進(jìn)行
計算。判斷結(jié)果是否溢出,可按下列方法:加法時,如果正負(fù)數(shù)相加
(即兩數(shù)的符號位不同),則結(jié)果肯定不溢出;如果同號數(shù)相加,結(jié)果
與被加數(shù)和加數(shù)異號的則溢出(即正正相加結(jié)果為負(fù)或負(fù)負(fù)相加結(jié)果
為正時)。減法時,如果同號數(shù)相減(即兩數(shù)的符號位相同),則結(jié)果肯
定不溢出;如果異號數(shù)相減,結(jié)果與被加數(shù)異號的則溢出(即正負(fù)相
減結(jié)果為負(fù)或負(fù)正相減結(jié)果為正時)。此法比用變形補碼直觀,加和
3
答:特殊功能寄存器(SFR)中存放的是一些專用信息,這些信息與
下列內(nèi)容有關(guān):計算機(jī)指令的執(zhí)行條件及狀態(tài)標(biāo)志,定時/計數(shù)器的
使用控制、中斷系統(tǒng)的使用、并行I/O及串行I/O接口的使用。
工作寄存器只是用于暫時存放指令執(zhí)行過程中一般的被操作數(shù)據(jù)。
2-6特殊功能寄存器的地址空間如何?
答:特殊功能寄存器(SFR)的地址為8為二進(jìn)制編碼,地址范圍為
80H?OFFH,但各特殊功能寄存器的地址并非連續(xù)分布的。指令通過
直接尋址的方式才能訪問到。
2-751單片機(jī)中的位尋址區(qū)在哪里?它們的地址空間如何?
答:51單片機(jī)的位尋址區(qū)分布在兩個地方。一部分位于內(nèi)部數(shù)據(jù)存
儲器中字節(jié)地址為20H-2FH的16個單元中,這部分包括128個位,
位地址空間為00H?7FH;另一部分位于字節(jié)地址能被8整除的特殊
功能寄存器中,位地址空間為80H?0FFH。
2-8請指出下列位地址所在的內(nèi)部數(shù)據(jù)存儲器單元的字節(jié)地址或
SFR名稱。
答:00H內(nèi)部RAM的20H單元;(2OH).O
20H內(nèi)部RAM的24H單元;(24H).O
0A0HP2;P2.0
0B0HP3;P3.0
5
64H內(nèi)部RAM的部H單元;(2CH).4
E6H累加器ACC;ACC.60
提示:1)內(nèi)部數(shù)據(jù)存儲器內(nèi)的可尋址位,其位地址(00H?7FH)與所在
單元的字節(jié)地址(20H?2FH)間的關(guān)系如下:
位地址=(字節(jié)地址一20H)X8+DX,DX—該位在字節(jié)單元中的位置
(DO?D7)
位地址+8,商+20H=字節(jié)地址,余數(shù)=DX
2)SFR中的可位尋址(位地址80H?OFFH)的寄存器,其最低位的位地
址與其字節(jié)地址相同。關(guān)系如下:
位地址+8,商*8=SFR的字節(jié)地址,余數(shù)=DX,DX—該位在SFR中
的位置(D0~D7)
2-9若某51單片機(jī)應(yīng)用系統(tǒng)將FOOOH-FFFFH地址空間分配給它外部
的I/O接口,那么該單片機(jī)應(yīng)用系統(tǒng)最多給外部數(shù)據(jù)存儲器分配多少
單元?地址空間如何?
答:51單片機(jī)的外部I/O接口和外部數(shù)據(jù)存儲器是統(tǒng)一編制的,占用
同一個地址空間,地址空間的容量為64KB,地址范圍為0000H?FFFFH。
據(jù)題意,系統(tǒng)已將FOOOH-FFFFH地址空間分配給它外部的I/O接口,
則只剩下0000H?EFFFH可分配給外部數(shù)據(jù)存儲器,容量為60KB。
2-10在圖2-9中的電容C,如果它取值太小,對復(fù)位電路有何影峋?
答:51單片機(jī)上電復(fù)位,需要在RST引腳上保持10ms以上的高電平。
6
如果C太小,則其充電時間變短,上電后,RST引腳上高電平保持的
時間太短,則單片機(jī)內(nèi)部復(fù)位將不能完全完成,有些寄存器內(nèi)容將變
得不確定。
2-11上電復(fù)位和人工按鈕復(fù)位后對內(nèi)部數(shù)據(jù)存儲器具有什么不同的
影響?
答:上電:上電復(fù)位后數(shù)據(jù)存儲據(jù)存儲器中的不確確定的狀態(tài)
人工按鈕工按鈕復(fù)位后數(shù)據(jù)存儲據(jù)存儲器中的變(因為沒有斷電)。
2-1251應(yīng)用系統(tǒng)中,為何要對堆棧指針SP重新設(shè)置?
答:復(fù)位后(SP)=07H,則堆棧是從08H開始存放數(shù)據(jù)的。而內(nèi)部數(shù)據(jù)
存儲器中00H?1FH單元為工作寄存器區(qū),而20H?2FH單元為位尋
址區(qū),在實際的應(yīng)用系統(tǒng)中,這些區(qū)域都可能使用到。故一般將堆棧
設(shè)置在地址30H以后的單元中,所以需要對堆棧指針SP重新設(shè)置。
2-1351單片機(jī)中的I/O接口中,那個接口在作為準(zhǔn)雙向口時需要外
接電阻?若對某一接口進(jìn)行讀引腳的操作,必須事先對該接口做什么
操作?
答:P0口需外接上拉電阻(因為P0是集電極開路結(jié)構(gòu))。
若需對某個接口讀引腳(即讀取外部輸入信號的狀態(tài)),需要對該接
口的口鎖存器寫入1(例如:若需要讀取P1.0、Pl.l、Pl.2、P1.3的
引腳狀態(tài)時,需要先執(zhí)行MOVP1,#OFH。這也是為什么復(fù)位后(P0)=
(Pl)=(P2)=(P3)=0FFH的道理。)
7
第三章
3-1指令的格式是由哪些部分組成的?每部分的含義是什么?
答:指令由操作碼和操作數(shù)組成。在形式上操作碼和操作數(shù)都是二進(jìn)
制代碼。操作碼用來表示指令的種類和功能,經(jīng)由控制器中的指令譯
碼器譯碼后產(chǎn)生控制信號。操作數(shù)是指令的操作對象,表示被操作數(shù)
據(jù)或數(shù)據(jù)所在的存儲單元地址。
3-2什么是尋址方式?51系列指令系統(tǒng)有哪些尋址方式?
答:指令中給出操作數(shù)的方式叫做尋址方式051系列機(jī)給出的尋址
方式一般有7中:立即尋址、直接尋址、寄存器尋址、寄存器間接尋
址、變址尋址、相對尋址、位尋址(直接尋址的一個特例一一地址指
向位單元)。
3-3對于內(nèi)部數(shù)據(jù)存儲器OOH~1FH區(qū)域的訪問有哪些尋址方式?對于
外部數(shù)據(jù)存儲器的訪問有哪些尋址方式?對于特殊功能寄存器的訪
問有哪些尋址方式?
答:對于內(nèi)部數(shù)據(jù)存儲器OOH~1FH區(qū)域的訪問有直接尋址、寄存器
尋址、寄存器間接尋址二種方式。
對于外部數(shù)據(jù)存儲器的訪問只有寄存器間接尋址一種方式(以DPTR
或RO、R1為指針)。
對于特殊功能寄存器的訪問只有直接尋址一種方式。同時對于內(nèi)部數(shù)
據(jù)存儲器80H?OFFH的128個單元的訪問只有寄存器間接尋址一種
8
方式(以RO、R1或SP為指針);借助于兩種不同的尋址方式,可以
將在地址上重合(80H?OFFH)的SFR和內(nèi)部RAM高128字節(jié)單元的
兩部分空間加以區(qū)分。
3-451系列單片機(jī)有哪些標(biāo)志位?這些標(biāo)志位存放在哪里?
答:51單片機(jī)在程序運行時通常需要一下標(biāo)志位:
Cy,AC,OV,P,RSI,RSO,它們都存放在特殊功能寄存器PSW(程
序狀態(tài)字寄存器)中。
3-5分析下列各指令的操作數(shù),指出它們的尋址方式。
MOVR4,38H;寄存器尋址,直接尋址
ADDA,@R1;寄存器尋址,寄存器間接尋址
MOVCA,@A+DPTR;寄存器尋址,變址尋址(又稱基址寄
存器加變址寄存器間接尋址)
MOVXA,@DPTR;寄存器尋址,寄存器間接尋址
DECB;直接尋址
SETB24H;位尋址(直接尋址的一種,只是給出的
直接地址是位地址)
CJNEA,#100,NEXT;寄存器尋址,立即尋址,相對尋址
ANL30H,#00H;直接尋址,立即尋址
PUSHPl;寄存器間接尋址(指針為SP,只是在堆棧
操作指令中省略了),直接尋址
9
堆棧操作除了用PUSH和POP指令,完全可以用其它指令來完成,
舉例如下:
PUSHPl
可用下列程序段完成
INCSP
MOVRO,SP
MOV@R0,Pl
POPPl
可用下列程序段完成
MOVRO,SP
MOVPl,@R0
DECSP
提示:上題答案中按操作數(shù)先后順序給出其對應(yīng)的尋址方式。
10
3-6下列各指令或指令組執(zhí)行前有關(guān)寄存器和存儲器的狀態(tài)如下表,
要求分析各指令或指令組執(zhí)行后有關(guān)寄存器、存儲器和標(biāo)志位的狀態(tài)。
內(nèi)部數(shù)據(jù)存儲器和特殊功能外部數(shù)據(jù)存儲程序存儲器
寄存器器
寄存內(nèi)容單元內(nèi)容單元地內(nèi)容單元地內(nèi)容程序計數(shù)器
器名地址址址內(nèi)容
B64H73H10H900BH12H1206H35H(PC)=1200H
ACC03H72H11H900AH83H1205H34H
PSW80H71H00H9009HD1H1204H33H標(biāo)號及標(biāo)號
值
DPL05H70H80H9008H79H1203H32HNEXTl=0800H
DPH90H9007HOCH1201H31HNEXT2=0900H
SP71H36HF8H9006H23H1200H30HNEXT3=1280H
R000H35H2BH9005H13HLOOP=1148H
R136H34H36H9004H4DH
R235H33H74H9003H2EH
R3B7H32H59H9002H7FH
R403H9001H54H
R5F6H26H66H9000H38H
R6E4H25H55H
R721H24H44H
P07CH
11
P290H
提示:在上表中需注意幾點:故
(PSW)=80H,BlCy=lzAC=OZRSI=RSO=0(
當(dāng)前工作寄存器區(qū)為0區(qū))。工作寄存器區(qū)為0區(qū)時,R0~R7指向內(nèi)部
數(shù)據(jù)存儲器的00H~07H,所以當(dāng)指令中出現(xiàn)直接地址OOH?07H中的
某個時,其初始條件即為R0?R7中某個對應(yīng)的寄存器的值。另,因
為(DPH)=90H,(DPL)二05H,所以(DPTR)二9005H。標(biāo)號值實質(zhì)上是代表標(biāo)
號所在處的指令在程序存儲器中的地址,標(biāo)號往往出現(xiàn)在程序轉(zhuǎn)移指
令中,指出轉(zhuǎn)移指令的目標(biāo)地址。
1)MOVR0,#32;(R0)=32=20H
2)MOV25H,@R1;(25H)=0F8H
3)MOVXA,@DPTR;(A)=13HP=1
4)MOVXA,@RO;(A)=38HP=1
5)MOVCA,@A+PC;(A)=33HP=0
6)MOVA,04H;(A)=03HP=0
7)XCHA,34H;(A)=36H(34H)=03H
8)XCHDA,@R1;(A)=08H(36H)=0F3H
9)PUSHDPL;(SP)=72H(72H)=05H
10)POPDPH;(DPH)=00H(SP)=70H
11)SUBBA,RI;(A)=OCCHCy=lP=0
AC=1ov=o
12)ADDA,R6;(A)=0E7HCy=OP=0
12
AC=OOV=0
13)ADDC:A,36H;(A)=OFCHCy=OP=0
AC=OOV=0
14)MULAB;(A)=2CH(B)=01H
15)INCRO;(R0)=01H
16)DECA;(A)=02HP=1
17)ADDA,#49H;
DA,A;(A)=52HCy=OP=1
18)ANLA,RI;(A)=02H(R1)=36HP=1
19)0RLA,32H;(A)=5BHP=1
20)ORL26H,#35H;(26H)=77HP=0
21)XRLA,@RO;(A)=03卜1P=0
22)XRLA,ACC;(A)=0P=C?
23)XRLA,#OFFH;(A)=OFCHP=0
24)CPLA;(A)=OFCHP=Ci
25)RLA;(A)=06HCy=l
26)RRCA;(A)=81HCy=l
27)MOVC,(25H).2;Cy=l
28)MOVFO,C;(PSW)=0A0H
29)SETBRSO;(PSW)=88H
30)CLRc;(PSW)=0
31)ANLC,(24H).0Cy=O
13
32)JZNEXT1;(PC)=1202H
33)JCNEXT2;(PC)=0900H
34)CJNEA,25H,NEXT3;(PC)=1280HCy=l
35)DJNZR7,L00P;(PC)=1148H(R7)=20H
36)LCALL1800H;(PC)=1800H(SP)=73H(72H)=03H
(73H)=12H
37)RET;(PC)=0080H(SP)=6FH
38)ANLC,/32H;Cy=O(32H)=1,提示此處32H為
位存儲器
39)STOP:JBCP0.3,STOP;(PC)=1200H(P0)=74H
40)JNBP0.4,NEXT1;(PC)=1203H
紅色部分為附加題,答案就在本期內(nèi)找八八,看看你們的本事了,
哈哈哈哈
3-7分析下列程序段的功能。
1)MOVA,R3
MOVR4,A
功能:將R3中的內(nèi)容送入R4,即(R3LR4
2)MOVA,R5
CPLA
MOVR5,A
14
功能:R5中的數(shù)據(jù)按位取反后送回R5
3)MOVA,R4
MOVB,R5
DIVAB
MOVR4ZB
MOVR5,A
功能:R4中的數(shù)除以R5中的數(shù),結(jié)果商送入R5,余數(shù)送
入R4
4)MOVC,P1.1
ANLC,Pl.2
ANLC,/Pl.3
MOVPl.6,C
功能:P1.1AP1.2APL3^P1.6
5)MOVC,0
ORLC,1
MOVFO,C
MOVC,2
ORLC,3
ANLC,FO
MOVPl.7,C
功能:((20H).0V(20H).l)A((20H).2V(20H),3)fPl.7
15
6)CLRC
MOVA,R4
RLCA
MOVR4,A
MOVA,R3
RLCA
MOVR3,A
功能:R3、R4中的內(nèi)容左移一位,R4最低位移入0,R4最高位
移入R3最低位,R3最高位移出至Cy。
7)CLRC
MOVA,R5
RLCA
ADDA,R5
MOVR5,A
功能:(R5)x37R5
8)CLRA
MOVRO,A
MOVR7,A
LOOP:MOV@RO,A
INCRO
DJNZR7,LOOP
STOP:SJMPSTOP
16
功能:將內(nèi)部數(shù)據(jù)存儲器OOH-OFFH256個單元全部清零。
9)PUSHACC
PUSHB
POPACC
POPB
功能:利用堆棧將ACC與B中的內(nèi)容互換,即(ACC)-(B)
10)MOVRO,#30H
XCHDA,@R0
SWAPA
INCRO
XCHDA,@R0
SWAPA
MOV40H,A
功能:將ACC的低四位送入30H單元低四位,ACC的高四位送入31H
的低四位,而原先30H單元的低四位送入40H單元的低四位,原31H
單元的低四位送入40H單元的高四位。
舉例說明如下,設(shè)程序段運行前有
(ACC)=12H,(30H)=34H,(31H)=56H;
則程序段運行后有(30H)=32H,(31H)=51H,(ACC)=(40H)=64H
3-8指出下列指令中哪些是合法指令,哪些是非法指令。
MOVPl,R4;合法
MOVR2,R4;非法
17
CLRR3;非法
RLCR5;非法
MOV30H,31H;合法
MOVOOH,P;非法
ORL40H,R7;非法
PUSHR6;非法
POPRO;非法
INCDPTR;合法
注:常見的錯誤還有類似:MOVRO,C;ADD3OH,31H;MOVA,@R5;
DECDPTR等,編程時切記勿錯!
3-9按要求編制下列各程序段。
將內(nèi)部數(shù)據(jù)存儲器30H和31H單元的內(nèi)容互換。
法一:
MOVA,30H
XCHA,31H
MOV30H,A
法二:
XCHA,30H
XCHA,31H
XCHA,30H
比較法一、法二的優(yōu)缺點,你認(rèn)為哪個方法更好?
將寄存器R7的內(nèi)容向右循環(huán)移位一次。
XCHA,R7
RRA
18
XCHA,R7
將寄存器R3的內(nèi)容乘以4(結(jié)果不超出8為二進(jìn)制數(shù)的范圍)。
法一:
MOVA,R3
MOVB,#4
MULAB
MOVR3,A
法二:
XCHA,R3
RLA
RLA
XCHA,R3
將寄存器DPTR的內(nèi)容減1。
法一:判斷DPL=O否?如是,法二:
減后,也減;否則,
DPL1DPH1(DPH)(DPL)-1-DPHZDPL(BPDPTR)
DPH不變。CLRC
XCHA,DPLXCHA,DPL
JNZNOBSUBBA,#1
DECDPHXCHA,DPL
NBO:XCHA,DPLXCHA,DPH
DECDPLSUBBA,#0
XCHA,DPH
法三:
(DPH)(DPL)+OFFFFH-DPTR
XCHA,DPL
ADDA,#OFFH
XCHA,DPL
XCHA,DPH
ADDCA,#OFFH
XCHA,DPH
比較以上各方法,其中法三利用了的補碼是OFFFFH的原理,將減
法改為了加法。
19
將寄存器R6的內(nèi)容壓入堆棧(設(shè)寄存器工作在3區(qū))
PUSH1EH
將R4,R5寄存器連接起來循環(huán)右移一位。(設(shè)R4為高8位,R5
為低8位;執(zhí)行完后R4R5中的內(nèi)容右移一位,R4的最低位移入R5
的最高位,同時R5的最低位移入R4的最高位)
XCHA,R4;將R4中的內(nèi)容送入ACC,同時將ACC的內(nèi)容放入
R4中暫存。
RRCA;ACC中原先R4的內(nèi)容右移一位,同時Cy移入最高位,
而原先R4的最低位移入Cv位
XCHA,R5;R5中的內(nèi)容送入ACC,上一步中產(chǎn)生的ACC的內(nèi)容
送入R5暫存
RRCA;ACC中原先R5的內(nèi)容右移一位,Cv(即原R4的最低
位)移入最高位,而原R5的最低位移入Cv位
XCHA,R5;將結(jié)果送入R5(R5移位已完成),同時將第三步暫
存在R5中的內(nèi)容取出。
MOVACC.7,C;將Cy位中存放的原R5的最低位送入ACC的最高位
(即送入R4的最高位)
XCHA,R4;將結(jié)果送入R4,同時取出ACC原來的值
20
第四章
4-1用偽指令將下列常數(shù)依次定義在1600H為首地址的程序存儲器
中。
0,1,4,9,16,25,36,49,64,81
答:ORG1600H
DB0,1,4,9,16,25,36,49,64,81
4-2用偽指令將下列常數(shù)依次定義在1700H為首地址的程序存儲器
中,要求數(shù)據(jù)類型一致C
0,1,8,27,64,125,216,343,512,729
答:提示:因為343,512,729為雙字節(jié)數(shù)據(jù)(>255),所以所有數(shù)據(jù)
均應(yīng)以雙字節(jié)存入C
ORG1700H
DW0,1,8,27,64,125,216,343,512,729
4-3用偽指令將字節(jié)型變量XI、X2定義在內(nèi)部數(shù)據(jù)存儲器30H、31H
單元中,將字節(jié)型變量Yl、Y2定義在外部數(shù)據(jù)存儲器2000H、2001H
單元中。
答:XIDATA30H
X2DATA31H
Y1XDATA2000H
Y2XDATA2001H
21
4-4用偽指令將ASCII碼字符串“Beijing用jtds!”定義在1200H為首地
址的程序存儲器中。
答:ORG1200H
DB'Beijing,tjjtds!'
4-5用偽指令將邏輯變量Al、A2定義在OOH、01H位單元中
答:AlBIT00H
A2BITO1H
4-6編一程序段,將1400H為首地址的外部數(shù)據(jù)存儲器中200個單字
節(jié)數(shù)據(jù)轉(zhuǎn)移至1500H為首地址的外部數(shù)據(jù)存儲器中。
MOVDPTR,#1400H;用DRTR指向源數(shù)據(jù)塊單元地址
MOVP2,#15H;用P2,R0指向目標(biāo)地址
MOVR0,#00H
MOVR7,#200;數(shù)據(jù)個數(shù)送入R7
LOOP:MOVXA,@DPTR
MOVX@R0,A
INCDPTR;修改源數(shù)據(jù)塊指針
INCRO;修改目標(biāo)單元地址指針
DJNZR7,LOOP
SJMP$
22
4-7編一程序段,將30H為首地址的內(nèi)部數(shù)據(jù)存儲器中20個單字節(jié)
補碼數(shù)據(jù)中的負(fù)數(shù)傳送至2400H為首地址的外部數(shù)據(jù)存儲器中。
MOVRO,#30H;用R0指向源數(shù)據(jù)塊首地址
MOVDPTR,#2400H;用DRTR指向目標(biāo)區(qū)首地址
MOVR7,#20;數(shù)據(jù)個數(shù)送入R7
LOOP:MOVA,@R0;取出源數(shù)據(jù)
JNBACC.7,NEXT;若源數(shù)據(jù)最高位=0,則表示數(shù)據(jù)
為非負(fù)數(shù),無需傳送,可直接取下個數(shù)據(jù)
MOVX@DPTR,A;若取出的數(shù)據(jù)為負(fù)數(shù),則傳送到外部RAM,同
時修改DPTR
INCDPTR
NEXT:INCRO
DJNZR7,LOOP
SJMP$
4-8編一程序段,將40H為首地址的內(nèi)部數(shù)據(jù)存儲器中25個單字節(jié)
數(shù)據(jù),依次下移一個單元。
提示:根據(jù)題意即將40H~58H中的數(shù)據(jù)依次送入41H~59H中
XCHA,40H;ACC內(nèi)容送入40H暫存保護(hù),同時取出40H單
元中內(nèi)容
MOVR0,#41H;R0指向目標(biāo)單元首地址
23
MOVR7,#25;數(shù)據(jù)長度送R7
LOOP:XCHA,@R0;前一個單元數(shù)送后一個單元,同時取
出后一個單元原先的數(shù)據(jù)暫存入ACC
INCR0
DJNZR7,LOOP
MOVA,40H;恢復(fù)ACC原來的內(nèi)容
STOP:SJMPSTOP
4-9編一程序段,完成函數(shù)y=x2+5x+6的計算。設(shè)OWxWlO。
提示:據(jù)題意6Wy<156,即結(jié)果為單字節(jié)數(shù)據(jù)。
XDATA30H
YDATA31H
MOVA,X
MOVB,X
MULAB
MOVY,A;X2->Y
MOVAZX
MOVB,#5
MULAB
ADDA,Y;X2+5XfACC
ADDA,#6;X2+5X+6ACC
MOVY,A;X2+5X+6Y
24
STOP:SJMPSTOP
討論:有時仔細(xì)分析問題,可以將程序變得更簡單,如上題中
2則程序為
y=x+5x+6=(x+2)(x+3)/
XDATA30H
YDATA31H
MOVA,X
ADDA,#2
MOVB,A;(x+2)
INCA;(x+3)
MULAB
MOVY,A;X2+5X+6fY
STOP:SJMPSTOP
4-10編一程序段,完成邏輯函數(shù)L=XVZ的計算。
提示:此程序按照51匯編程序標(biāo)準(zhǔn)格式編寫,整個程序構(gòu)成一個完
整結(jié)構(gòu),單片機(jī)運行時將反復(fù)執(zhí)行該程序,即當(dāng)輸入變量發(fā)生變化時,
輸出邏輯函數(shù)L將立刻發(fā)生相應(yīng)的變化。
XBITP1.0
YBITP1.1
ZBITP1.2;分別定義變量X,YZ由P1口的低三位
(P1.0,Pl.l,P1.2)輸入
LBITP1.7;定義函數(shù)L由P1.7輸出
25
ORG0;用戶程序第一條指令必須放在程序存儲器
0000H單元中
UMPMAIN;此處安排一條長調(diào)換指令,跳到主程序處,目
的:避開03H開始的中斷入口
ORG200H;主程序安排在程序存儲器200H單元開始
MAIN:MOVC,X
ANLC,/Y
ANLC,Z
CPLC
MOV
SJMPMAIN;真正的實用程序必須構(gòu)成一個死循環(huán)結(jié)構(gòu),使得單片
機(jī)可以反復(fù)地執(zhí)行
;用戶設(shè)定的功能
討論一:若上列函數(shù)改為1_=乂丫+乂2+丫乙如何編程,給兩個答案,自己
比較體會!
MOVc,x
ANLC,Y
MOVFO,C
MOVC,X
ANLc,z
ORLC,F0
MOVFO,C
MOVC,Y
ANLc,z
ORLC,F0
MOVL,C
26
MOVC,X
ANLC,Y
JCOUT
MOVc,x
ANLc,z
JCOUT
MOVC,Y
ANLc,z
OUT:MOVL,C
討論二:若上列函數(shù)改為L=(X+Y)(X+Z)(Y+Z),如何編程,給兩個答案,
結(jié)合討論一自己比較體會!
MOVC,X
ORLC,Y
MOVFO,C
MOVC,X
ORLc,z
ANLC,FO
MOVFO,C
MOVC,Y
ORLc,z
ANLC,FO
MOVL,C
MOVc,x
ORLC,Y
JNCOUT
MOVc,x
ORLc,z
JNCOUT
MOVC,Y
ORLc,z
OUT:MOVL,C
27
4-11閱讀下列各程序段,并說明其功能。
START:MOVDPTR,#1000H
MOVR7,#10
MOVXA,@DPTR
MOVB,A;取出外部RAM單元1000H單元中的數(shù)送入B
LOOP:INCDPTR;每次循環(huán)逐個取出外部RAM單元1001H
開始的單元中的內(nèi)容
MOVXA,@DPTR
CJNEA,B,COMP;比較(A)和⑻,無論是否相等,均轉(zhuǎn)向
下條指令,判斷Cy位
COMP:JCNEXT;Cy=l,則(A)V(B),不作處理,直接進(jìn)
下個循環(huán),取下個數(shù)據(jù)判斷
MOVB,A;若Cy=O,則(A)2(B),將(A)fB
NEXT:DJNZR7,LOOP
STOP:SJMPSTOP
功能:判斷外部數(shù)據(jù)寄存器1000H開始的11個單元中的最大值,將
最大值送入寄存器Bo
START:MOVR2,#0
MOVR7,#8
MOVA,R3;(R3)->ACC
LOOP:RLCA;8次循環(huán),每次循環(huán),將R3中的內(nèi)容由
28
最低位開始,逐位移入Cy
JNCNEXT;Cy=O,則不做任何操作,直接進(jìn)入下個循
環(huán)
INCR2;若上句條件不成立,即R3中移出的位=1,則
(R2)+l-R2
NEXT:DJNZR7,LOOP
STOP:SJMPSTOP
功能:統(tǒng)計R3中1的個數(shù),并將統(tǒng)計結(jié)果送入R2。
START:MOV30H,#0
MOVRO,#50H
LOOP:MOVA,@R0
CJNEA,#OFFH,NEXT
SJMPSTOP
NEXT:INC30H
INCRO
SJMPLOOP
STOP:SJMPSTOP
功能:統(tǒng)計存放在內(nèi)部數(shù)據(jù)存儲器50H開始的數(shù)據(jù)塊的長度(即數(shù)據(jù)
塊占多少個字節(jié)),數(shù)據(jù)塊以O(shè)FFH為結(jié)束標(biāo)志。
4-12編一子程序,將一個非壓縮8421BCD碼(即單字節(jié)BCD碼)轉(zhuǎn)
29
換成七段顯示碼。設(shè)0?9的BCD碼對應(yīng)的七段顯示碼分別為3FH、
06H、6BH、4FH、66H、6DH、7DH、07H、7FH、6FH。進(jìn)子程序前,
BCD碼被放在累加器ACC中;子程序運行后,相應(yīng)的七段碼也放在
ACC中。(即入口參數(shù)和出口參數(shù)均在ACC中)。
;BCD碼轉(zhuǎn)換成顯示碼
;入口參數(shù):子程序名CHSEG,單字節(jié)BCD碼放在累加器ACC中
;出口參數(shù):七段顯示碼放在ACC中
CHSEG:ADDA,#1;加上偏移量,偏移量為MOVCA,@A+PC指
令與數(shù)據(jù)表首間的字節(jié)數(shù)
MOVCA,@A+PC
RET;單字節(jié)指令
;數(shù)據(jù)表一般緊
DB3FH,06H,6BH,4FH,66H,6DH,7DH,07H;7FH,6FH
跟著RET指令
有另一法,不需計算偏移量
CHSEG:ADDA,#SEGTB-SSG;用標(biāo)號表達(dá)式,讓編譯程序計算
偏移量
MOVCA,@A+PC
SSG:RET
SEGTB:DB3FH,06H,6BH,4FH,66H,6DH,7DH,07H,7FH,6FH
4-13編一子程序,將一個0?9的七段顯示碼轉(zhuǎn)換成對應(yīng)的格雷碼。
30
0?9的格雷碼請參閱本書表1-2。設(shè)進(jìn)子程序前,七段顯示碼被放在
內(nèi)部數(shù)據(jù)存儲器40H中;子程序運行后,相應(yīng)的格雷碼放在內(nèi)部數(shù)據(jù)
存儲器50H中。(即入口參數(shù)為40H,出口參數(shù)為50H)。
算法一提示:根據(jù)0?9的序號依次查出對應(yīng)的顯示碼,然后與40H
中的內(nèi)容比較,如果相等,則根據(jù)當(dāng)前序號查表得到對應(yīng)的格雷碼。
;顯示碼轉(zhuǎn)換成格雷碼
;入口參數(shù):子程序名CHGRY,七段顯示碼被放在內(nèi)部數(shù)據(jù)存儲器40H
中,影響ACC,B,Cy位
;出口參數(shù):格雷碼放在內(nèi)部數(shù)據(jù)存儲器50H中
CHGRY:PUSHACC;保護(hù)現(xiàn)場
PUSHB
PUSHPSW
;用記錄。?的序號
MOVBz#0B9
NEXT:MOVA,B;
;用標(biāo)號表達(dá)式,讓編譯程序計算偏移量
ADDAz#SEGTB-SSG
MOVCA,@A+PC;根據(jù)當(dāng)前序號,查取對應(yīng)的顯示碼
SSG:CJNEA,40H,NEQ;比較取得的顯示碼與源單元中的顯
示碼
MOVA,B;如果相等,則根據(jù)當(dāng)前序號,查取對
應(yīng)的格雷碼
ADDA,#GRYTB-SGR
MOVCA,@A+PC
31
SGR:MOV50H,A;將查取的格雷碼送入目標(biāo)單元
POPPSW;恢復(fù)現(xiàn)場
POPB
POPACC
RET;返回
NEQ:INCB;如果不想等,則將序號增1,查取下個顯
示碼作比較
SJMPNEXT
SEGTB:DB3FH,06H,6BH,4FH,66H,6DH,7DH,07H,7FH,6FH;顯示碼
表
格雷碼
GRYTB:DBOOH,01H,03H,02H,04H,05H,07H,06H,08H,09H;
表
算法二提示:直接將顯示碼轉(zhuǎn)化成格雷碼,程序煩了些,但方法很簡
單。
;顯示碼轉(zhuǎn)換成格雷碼
;入口參數(shù):子程序名CHGRY,七段顯示碼被放在內(nèi)部數(shù)據(jù)存儲器40H
中,影響ACC,Cy位
;出口參數(shù):格雷碼放在內(nèi)部數(shù)據(jù)存儲器50H中
CHGRY:PUSHACC;保護(hù)現(xiàn)場
PUSHPSW
MOVA,40H
32
CJNEA,#3FH,NEQO
MOV50H,#00H;40H單元中的內(nèi)容=0的顯示碼,則將0
的格雷碼送入50H
NEQO:CJNEA,#06H,NEQ1
MOV50H,#01H;40H單元中的內(nèi)容=1的顯示碼,則將1
的格雷碼送入50H
NEQ1:CJNEA,#6BH,NEQ2
MOV50H,#03H;40H單元中的內(nèi)容=2的顯示碼,則將2
的格雷碼送入50H
NEQ2:CJNEA,#4FH,NEQ3
MOV50H,#02H;40H單元中的內(nèi)容=3的顯示碼,則將3
的格雷碼送入50H
NEQ3:CJNEA,#66H,NEQ4
MOV50H,#04H;40H單元中的內(nèi)容=4的顯示碼,則將4
的格雷碼送入50H
NEQ4:CJNEA,#6DH,NEQ5
MOV50H,#05H;40H單元中的內(nèi)容=5的顯示碼,則將5
的格雷碼送入50H
NEQ5:CJNEA,#7DH,NEQ6
MOV50H,#07H;40H單元中的內(nèi)容:6的顯示碼,則將6
的格雷碼送入50H
NEQ6:CJNEA,#07H,NEQ7
33
MOV50H,#06H;40H單元中的內(nèi)容=7的顯示碼,則將7
的格雷碼送入50H
NEQ7:CINEA,#7FH,NEQ8
MOV50H,#08H;40H單元中的內(nèi)容=8的顯示碼,則將8
的格雷碼送入50H
NEQ8:CINEA,#6FH,QUIT
MOV50H,#09H;40H單元中的內(nèi)容=9的顯示碼,則將9
的格雷碼送入50H
QUIT:POPPSW;恢復(fù)現(xiàn)場
POPACC
RET
4-14編一子程序,完成兩雙字節(jié)無符號數(shù)相加。設(shè)加數(shù)和被加數(shù)分
別放在0區(qū)寄存器R2、R3和R4、R5中,運算結(jié)果存放在0區(qū)寄存
器R6、R7中。若運算結(jié)果發(fā)生進(jìn)位,使00H位單元=1;反之,使00H
位單元二0。
;雙字節(jié)無符號數(shù)相加
;入口參數(shù):子程序名NADD,加數(shù)和被加數(shù)分別放在。區(qū)寄存器R2、
R3和R4、R5中,影響ACC,位Cy
;出口參數(shù):運算結(jié)果存放在。區(qū)寄存器R6、R7中,00H位單元存放
雙字節(jié)相加的進(jìn)位標(biāo)志
NADD:PUSHACC;保護(hù)現(xiàn)場
34
PUSHPSW
MOVA,R2;(R2)+(R4)fR6
ADDA,R4
MOVR6,A
MOVA,R3;(R3)+(R5)-R7
ADDCA,R5
MOVR7,A
MOVOOH,C;CyfOOH
POPPSW
POPACC4灰復(fù)現(xiàn)場
RET
4-15編制一子程序,完成10ms較精確延時功能。設(shè)系統(tǒng)時鐘頻率為
24MHz。
提示:時鐘頻率為24M為,則每個機(jī)器周期T=0.5us,10ms延時即
需要lOOOOus/0.5us=20000=500X40個機(jī)器周期To軟件延時子程序,
就是用循環(huán)結(jié)構(gòu)反復(fù)執(zhí)行一些指令,而指令執(zhí)行時都需要時間,所以
執(zhí)行完該子程序后,即完成了延時功能。
;軟件延時10ms
;入口參數(shù):子程序名DELAY,影響2區(qū)寄存器R0,R1
;出口參數(shù):無
DELAY:PUSHPSW;1T
35
MOVPSW,#18H;1T
MOVRO,#40;1T
DL:MOVRI,#248;1T*4O
DL1:DJNZRI,DL1;2T*248*40=19840T
NOP;1T*4O
DJNZRO,DL;2T*40
POPPSW;1T
RET;2T總延時
3T+40T+19840T+40T+80T+3T=200067;誤差6T=3us,相當(dāng)準(zhǔn)了
4-16編制一子程序,將10個非壓縮BCD碼轉(zhuǎn)換成5個壓縮BCD碼。
設(shè)進(jìn)子程序前,非壓縮BCD碼被放在40H為首地址的內(nèi)部數(shù)據(jù)存儲
器中;子程序運行后,壓縮BCD碼放在50H為首地址的內(nèi)部數(shù)據(jù)存
儲器中。
功能說明:若進(jìn)子程序前40H-49H單元中的內(nèi)容為
01H,02H,03H,04H,05H,06H,07H,08H,09H,00H,貝U子程序運行后
50H~54H中的內(nèi)容為12H,34H,56H,78H,90H
;BCD碼壓縮
;入口參數(shù):子程序名BCDCH,非壓縮BCD碼被放在40H為首地址的
內(nèi)部數(shù)據(jù)存儲器中
;影響ACC,2區(qū)寄存器R0,RI,R7
;出口參數(shù):壓縮BCD碼放在50H為首地址的內(nèi)部數(shù)據(jù)存儲器
36
BCDCH:PUSHACC;保護(hù)現(xiàn)場
PUSHPSW
MOVPSW,#10H;設(shè)定當(dāng)前工作寄存器區(qū)為2區(qū)
MOVRO,#40H;R0指向源數(shù)據(jù)塊首地址
MOVRI,#50H;R1指向目標(biāo)數(shù)據(jù)塊首地址
MOVR7,#5;轉(zhuǎn)換5次
LOOP:MOVA,@R0;前一單元內(nèi)的BCD碼送入ACC的高四位
SWAPA
INCRO;R0指向下個源數(shù)據(jù)
ORLA,@R0;后一單元內(nèi)的BCD碼送入ACC的低四
位,同時并未改變源數(shù)據(jù)
MOV@R1,A;壓縮BCD碼送入目標(biāo)地址
INCRI;R1指向下個目標(biāo)單元
DJNZR7,LOOP
POPPSW;恢復(fù)現(xiàn)場
POPACC
RET;返回
37
4-17編制一子程序,完成15個單字節(jié)補碼數(shù)據(jù)按絕對值大小從小到
大進(jìn)行排隊。設(shè)數(shù)據(jù)放在30H為首地址的內(nèi)部數(shù)據(jù)存儲器中。
提示:排序的基礎(chǔ)是比較!無論是對原碼、補碼還是絕對值排序,基
本算法都可沿用無符號數(shù)冒泡法的算法,只是在讀取數(shù)據(jù)時需對數(shù)據(jù)
進(jìn)行一些處理,或在比較兩個數(shù)的大小時改變一下方法(比如符號位
的判斷)。補碼按絕對值排序的算法我想到了兩種(當(dāng)然不排除有其
它方法)。一種是將補碼轉(zhuǎn)換成原碼,由于原碼是在最高位表示符號,
而其余各位表示數(shù)值部分(即絕對值),這樣只需比較原碼的低7位
即可;或者直接將其中負(fù)數(shù)的補碼轉(zhuǎn)換成其相反數(shù)的補碼(這樣所有
比較的數(shù)據(jù)均為正數(shù)的補碼,形式上也就是其絕對值,轉(zhuǎn)換的方法是
連同符號位一起取反后加1,這種方法也適用于對-128的補碼進(jìn)行轉(zhuǎn)
換)。另一種方法,判斷兩個待比較數(shù)的符號,同號時相減,如果差
數(shù)與減數(shù)異號,則被減數(shù)絕對值〈減數(shù)絕對值;兩數(shù)異號時相加,如
果和與被加數(shù)異號(或與加數(shù)同號),則被加數(shù)絕對值V加數(shù)絕對值;
無論加減,結(jié)果為0,則兩數(shù)絕對值必定相同。
;絕對值排序,算法一
;入口參數(shù):子程序名PAIXU,影響ACC,寄存器B,2區(qū)寄存器RO,R2,
R3,標(biāo)志位Cy,FO
;出口參數(shù):排序后數(shù)據(jù)仍放在30H開始的15個內(nèi)部數(shù)據(jù)存儲器單元
中
38
PAIXU:PUSHACC;保護(hù)現(xiàn)場
PUSHPSW
MOVPSW,#10H;設(shè)定2區(qū)寄存器區(qū),同時OfFO
MOVR3,#14;暫存比較次數(shù)fR3
CLRFO;進(jìn)入循環(huán)前,清除交換標(biāo)志FO
NEXT:MOVRO,#30H;首地址-*R0
MOVR2,13H;當(dāng)前比較次數(shù)(R3)fR2
LOOP:MOVA,@RO;取出前一個數(shù)
CJNEA,#80H,LOP1;判斷正負(fù)
LOP1:JCFPOS;如果為正數(shù),則不轉(zhuǎn)換
CPLA;如果是負(fù)數(shù),取相反數(shù)補碼
INCA;即得負(fù)數(shù)的絕對值
;前數(shù)的絕對值
FPOS:MOVBZAfB
INCRO;R0指向下個數(shù)
MOVA,@R0
CJNEA,#80H,LOP2
LOP2:JCCOMP;如果是負(fù)數(shù),取相反數(shù)補碼
CPLA
INCA;后數(shù)的絕對值fACC
COMP:CJNEA,B,NEQ;比較前后兩絕對值
SJMPNEXCH;后=前,不交換
NEQ:JNCNEXCH;后〉前,不交換
SETBF0;后<前,交換位置,置標(biāo)志F0
MOVA,@R0;后數(shù)fACC
DECRO;R0指向前單元
XCHA.@R0;后數(shù)一前單元,前數(shù)一ACC
INCRO;R0恢復(fù)指向后單元
MOV@R0,A;前數(shù)一后單元
;判斷一次冒泡是否完成
NEXCH:DJNZR2ZLOOP
DECR3;修改每次冒泡中的比較次數(shù)
JBCFO,NEXT;判斷冒泡中有無交換,清除F0
POPPSW;若上次冒泡中無交換,則排序完成
POPACC
RET
對上述程序稍作改動,程序的效率就高了(每次比較時執(zhí)行的指令少
了,速度就快了)
39
PAIXU:PUSHACC
PUSHPSW
MOVPSW,#10H
MOVR3,#14
CLRFO;進(jìn)入循環(huán)前,清除交換標(biāo)志F0
NEXT:MOVRO,#30H
MOVR2,13H
MOVA,@R0
CJNEA,#80HzL0P1
LOP1:JCFPOS
CPLA
INCA
FPOS:MOVB,A
LOOP:INCRO
MOVA,@R0
CJNEA,#80H,L0P2
L0P2:JCCOMP
CPLA
INCA
COMP:CJNEA,B,NEQ
NEQ:JCEXCH
XCHA,B;若不交換,則后〉前,將后一絕對值(較大)送入B,作為下次比較的前一個絕究
SJMPNEXCH
EXCH:SETBF0;置位交換標(biāo)志
M
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 腎小球紅細(xì)胞病理機(jī)制與臨床診療
- 社區(qū)護(hù)理學(xué)教學(xué)體系構(gòu)建
- 施工單位半年度工作匯報
- 數(shù)據(jù)庫表創(chuàng)建講解
- 人機(jī)交往法則解析
- 汽車電驅(qū)系統(tǒng)講解
- 第09講 扇形的面積(九大題型)(學(xué)生版)
- 研究生預(yù)推免復(fù)試
- 農(nóng)業(yè)國企面試題庫精 編
- 求職面試必 備:軍士招聘面試實戰(zhàn)題庫版
- SWITCH暗黑破壞神3超級金手指修改 版本號:2.7.6.90885
- 水工閘門課件
- 通信原理教案
- 2.AD830機(jī)臺板面操作講解
- 《諾丁山》經(jīng)典臺詞
- 職高英語詞匯表優(yōu)質(zhì)資料
- YY/T 0752-2009電動骨組織手術(shù)設(shè)備
- GB/T 40080-2021鋼管無損檢測用于確認(rèn)無縫和焊接鋼管(埋弧焊除外)水壓密實性的自動電磁檢測方法
- GB/T 2-2001緊固件外螺紋零件的末端
- 路基土石方工程施工方案
- 教育評價學(xué)全套ppt課件完整版教學(xué)教程
評論
0/150
提交評論