




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)基礎(chǔ)(第3版)第1章 計(jì)算機(jī)基礎(chǔ)知識(shí)(一)填空題1. 十進(jìn)制數(shù)14對(duì)應(yīng)的二進(jìn)制數(shù)表示為(1110B),十六進(jìn)制數(shù)表示為(0EH)。十進(jìn)制數(shù)-100的補(bǔ)碼為(9CH),+100的補(bǔ)碼為(64H)。2. 在一個(gè)非零的無符號(hào)二進(jìn)制整數(shù)的末尾加兩個(gè)0后,形成一個(gè)新的無符號(hào)二進(jìn)制整數(shù),則新數(shù)是原數(shù)的(4)倍。3. 8位無符號(hào)二進(jìn)制數(shù)能表示的最大十進(jìn)制數(shù)是(255)。帶符號(hào)二進(jìn)制數(shù)11001101轉(zhuǎn)換成十進(jìn)制數(shù)是(-51)。4. 可以將各種不同類型數(shù)據(jù)轉(zhuǎn)換為計(jì)算機(jī)能處理的形式并輸送到計(jì)算機(jī)中去的設(shè)備統(tǒng)稱為(輸入設(shè)備)。5. 已知字符D的ASCII碼是十六進(jìn)制數(shù)44,則字符T的ASCII碼是十進(jìn)制數(shù)(
2、84)。6. 若某存儲(chǔ)器容量為640KB,則表示該存儲(chǔ)器共有(655360)個(gè)存儲(chǔ)單元。7. 在計(jì)算機(jī)中,二進(jìn)制數(shù)的單位從小到大依次為(位)、(字節(jié))和(字),對(duì)應(yīng)的英文名稱分別是(bit)、(Byte)和(Word)。8. 設(shè)二進(jìn)制數(shù)A=10101101,B=01110110,則邏輯運(yùn)算AB=(11111111),AB=(00100100),AB=(11011011)。9. 機(jī)器數(shù)01101110的真值是(+110),機(jī)器數(shù)01011001的真值是(+89),機(jī)器數(shù)10011101的真值是(+157或-115),機(jī)器數(shù)10001101的真值是(+206或-50)。(二)單項(xiàng)選擇題1.用8位二
3、進(jìn)制補(bǔ)碼數(shù)所能表示的十進(jìn)制數(shù)范圍是(D)(A)-127 +127 (B)-128 +128(C)-127 +128 (D)-128 +1272.下列等式中,正確的是(B)(A)1 KB = 1024×1024 B (B)1 MB = 1024×1024 B(C)1 KB = 1024 M B (D)1 MB = 1024 B3.程序與軟件的區(qū)別是(C)(A)程序小而軟件大 (B)程序便宜而軟件昂貴(C)軟件包括程序 (D)程序包括軟件4.存儲(chǔ)器中,每個(gè)存儲(chǔ)單元都被賦予惟一的編號(hào),這個(gè)編號(hào)稱為(A)(A)地址 (B)字節(jié) (C)列號(hào) (D)容量5.8位二進(jìn)制數(shù)所能表示的最大無
4、符號(hào)數(shù)是(B)(A)255 (B)256 (C)128 (D)1276.下列4個(gè)無符號(hào)數(shù)中,最小的數(shù)是(B)(A)11011001(二進(jìn)制) (B)37(八進(jìn)制)(C)75(十進(jìn)制) (D)24(十六進(jìn)制)7.下列字符中,ASCII碼最小的是(B)(A)a (B)A (C)x (D)X8.下列字符中,ASCII碼最大的是(C)(A)a (B)A (C)x (D)X9.有一個(gè)數(shù)152,它與十六進(jìn)制數(shù)6A相等,那么該數(shù)是(B)(A)二進(jìn)制數(shù) (B)八進(jìn)制數(shù) (C)十進(jìn)制數(shù) (D)十六進(jìn)制數(shù)第2章 80C51單片機(jī)的硬件結(jié)構(gòu)(一)填空題1. 通過堆棧實(shí)現(xiàn)子程序調(diào)用,首先要把(PC)的內(nèi)容入棧,以進(jìn)行
5、斷點(diǎn)保護(hù)。調(diào)用返回時(shí)再進(jìn)行出棧操作,把保護(hù)的斷點(diǎn)送回(PC)。2. 80C51單片機(jī)的時(shí)鐘電路包括兩部分內(nèi)容,即芯片內(nèi)的(高增益反相放大器反相器)和芯片外跨接的(石英晶體振蕩器晶振)與(兩個(gè)微調(diào)電容)。若調(diào)高單片機(jī)的晶振頻率,則單片機(jī)的機(jī)器周期會(huì)變(短)。3. 通常單片機(jī)有兩種復(fù)位操作,即(上電復(fù)位)和(手動(dòng)復(fù)位)。復(fù)位后,PC值為(0000H),SP值為(07H),通用寄存器的當(dāng)前寄存器組為(第0)組,該組寄存器的地址范圍是從(00H)到(07H)。4. 80C51單片機(jī)中,一個(gè)機(jī)器周期包含(6)個(gè)狀態(tài)周期,一個(gè) 狀態(tài)周期又可劃分為(2)個(gè)拍節(jié),一個(gè)拍節(jié)為(1)個(gè)振蕩脈沖周期。因此,一個(gè)機(jī)器
6、周期應(yīng)包含(12)個(gè)振蕩脈沖周期。5. 80C51中惟一一個(gè)可供用戶使用的16位寄存器是(DPTR),它可拆分為兩個(gè)8位寄存器使用,名稱分別為(DPH)和(DPL)。6. 單片機(jī)程序存儲(chǔ)器的尋址范圍由PC的位數(shù)決定。80C51的PC為16位,因此程序存儲(chǔ)器地址空間是(64 KB)。(二)單項(xiàng)選擇題1.下列概念敘述正確的是(D)(A)80C51中共有5個(gè)中斷源,因此在芯片上相應(yīng)地有5個(gè)中斷請(qǐng)求輸入引腳(B)特殊的存取規(guī)則使得堆棧已不是數(shù)據(jù)存儲(chǔ)區(qū)的一部分(C)可以把PC看成是數(shù)據(jù)存儲(chǔ)空間的地址指針(D)CPU中反映程序運(yùn)行狀態(tài)和運(yùn)算結(jié)果特征的寄存器是PSW2.取指操作后,PC的值是(C)(A)當(dāng)前
7、指令前一條指令的地址(B)當(dāng)前正在執(zhí)行指令的地址(C)下一條指令的地址(D)控制寄存器中指令寄存器的地址3.80C51單片機(jī)中,設(shè)置堆棧指針SP為37H后就發(fā)生子程序調(diào)用,這時(shí)SP的值變?yōu)椋–)(A)37H (B)38H (C)39H (D)3AH4.設(shè)置堆棧指針SP = 30H后,進(jìn)行一系列的堆棧操作。當(dāng)進(jìn)棧數(shù)據(jù)全部彈出后,SP應(yīng)指向(A)(A)30H單元 (B)07H單元 (C)31H單元 (D)2FH單元5.下列關(guān)于堆棧的描述中,錯(cuò)誤的是(C)(A)80C51的堆棧在內(nèi)部RAM中開辟,所以SP只需8位就夠了(B)堆棧指針SP的內(nèi)容是堆棧棧頂單元的地址(C)在80C51中,堆棧操作過程與一
8、般RAM單元的讀/寫操作沒有區(qū)別(D)在中斷響應(yīng)時(shí),斷點(diǎn)地址自動(dòng)進(jìn)棧6.在單片機(jī)芯片內(nèi)設(shè)置通用寄存器的好處不應(yīng)該包括(A)(A)提高程序運(yùn)行的可靠性(B)提高程序運(yùn)行速度(C)為程序設(shè)計(jì)提供方便(D)減小程序長度7.下列敘述中正確的是(D)(A)SP內(nèi)裝的是堆棧棧頂單元的內(nèi)容(B)在中斷服務(wù)程序中沒有PUSH和POP指令,說明此次中斷操作與堆棧無關(guān)(C)在單片機(jī)中配合實(shí)現(xiàn)“程序存儲(chǔ)自動(dòng)執(zhí)行”的寄存器是累加器(D)兩數(shù)相加后,若A中數(shù)據(jù)為66H,則PSW中最低位的狀態(tài)為0第3章 80C51單片機(jī)指令系統(tǒng)(一)填空題1. 假定累加器A中的內(nèi)容為30H,執(zhí)行指令“1000H: MOVC A, A+P
9、C”后,會(huì)把程序存儲(chǔ)器(1031H)單元的內(nèi)容送累加器A。2. 假定(A)=85H,(R0)=20H,(20H)=0AFH,執(zhí)行指令“ADD A, R0”后,累加器A的內(nèi)容為(34H),CY的內(nèi)容為(1),AC的內(nèi)容為(1),OV的內(nèi)容為(1)。3. 執(zhí)行如下指令序列后,所實(shí)現(xiàn)的邏輯運(yùn)算式為()MOVC, P1.0ANLC, P1.1ANLC, /P1.2MOVP3.0, C4. 假定addr11=00100000000B,標(biāo)號(hào)qaz的地址為1030H,執(zhí)行指令“qaz: AJMP addr11”后,程序轉(zhuǎn)移到地址(1100H)去執(zhí)行。5. 累加器A中存放著一個(gè)其值小于或等于127的8位無符號(hào)
10、數(shù),CY清0后執(zhí)行“RLC A”指令,則A中的數(shù)變?yōu)樵瓉淼模?)倍。6. 已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,請(qǐng)按要求填寫各條指令的執(zhí)行結(jié)果(每條指令均按已給定的原始數(shù)據(jù)進(jìn)行操作)。XCHA, R0A=(30H),R0=(7AH)XCHA, 30HA=(0A5H)XCHA, R0A=(0A5H)XCHDA, R0A=(75H)SWAPAA=(0A7H)ADDA, R0A=(0AAH),CY=(0),OV=(1)ADDA, 30HA=( 1FH ),CY=(1),OV=(0)ADDA, #30HA=(0AAH),CY=(0),OV=(1)ADDCA, 30HA=(
11、20H ),CY=(1),OV=(0)SUBBA, 30HA=(0D4H),CY=(1),OV=(1)SUBBA, #30HA=( 49H ),CY=(0),OV=(0)(二)單項(xiàng)選擇題1.下列指令或指令序列中,不能實(shí)現(xiàn)PSW內(nèi)容送A的是(C)(A)MOV A, PSW(B)MOV A, 0D0H(C)MOV R0, 0D0H(D)PUSH PSWMOV A,R0 POP ACC2.在相對(duì)尋址方式中,“相對(duì)”兩字是指相對(duì)于(C)(A)地址偏移量rel(B)當(dāng)前指令的首地址(C)下一條指令的首地址(D)DPTR值3.下列指令或指令序列中,能將外部數(shù)據(jù)存儲(chǔ)器3355H單元內(nèi)容傳送給A的是(B)(A
12、)MOVX A, 3355H(B)MOV DPTR, #3355HMOVX A, DPTR(C)MOV P0, #33H(D)MOV P2, #33HMOV R0, #55H MOV R2, #55HMOVX A, R0 MOVX A, R24.對(duì)程序存儲(chǔ)器的讀操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令5.執(zhí)行返回指令后,返回的斷點(diǎn)是(C)(A)調(diào)用指令的首地址(B)調(diào)用指令的末地址(C)調(diào)用指令的下一條指令的首地址(D)返回指令的末地址6.以下各項(xiàng)中不能用來對(duì)內(nèi)部數(shù)據(jù)存儲(chǔ)器進(jìn)行訪問的是(A)(A)數(shù)據(jù)指針DPTR(B)按存儲(chǔ)單元地址或名稱(C)
13、堆棧指針SP(D)由R0或R1作間址寄存器(三)其他類型題1.判斷下列指令的合法性(合法打“”,非法打“×”)MOV A, R2 (×) MOV R0, R1 (×) INC DPTR ()MOV PC, #2222H (×) DEC DPTR (×) RLC R0 (×)MOV 0E0H, R0 () CPL R5 (×) CLR R0 (×)CPL F0H (×) PUSH DPTR (×) POP 30H ()MOVX A, R1 () MOV A, 1FH () MOV C, 1FH (
14、)MOV F0, ACC.3 (×) MOV F0, C () MOV P1, R3 ()MOV DPTR, #0FCH(×) CPL 30H () PUSH R0 (×)MOV C, #0FFH (×)MOV A, #0D0H()2. 利用位操作指令序列實(shí)現(xiàn)下列邏輯運(yùn)算。(1)MOVC, P1.0ORLC, /10HMOVF0, CORLC, 11HANLC, F0MOVD, C(2)MOVC, ACC.2ANLC, P2.7ORLC, ACC.1ANLC, P2.0MOVE, C3. 編寫程序?qū)?nèi)部RAM 20H 23H單元的高4位寫1,低4位寫0。
15、分析:就是把內(nèi)部RAM 20H 23H這4個(gè)單元寫入0F0H。用一個(gè)DJNZ的循環(huán)。ORG0000HMOVR0, #20H; R0指向20H單元MOVR1, #04H; 4個(gè)單元LOOP: MOVR0, #0F0H; 寫入INCR0DJNZR1, LOOP ; 循環(huán)4次END4. 在m和m+1單元中存有兩個(gè)BCD數(shù),將他們合并到m單元中,編寫程序完成。ORG0030HMOVR0, #mMOVA, R0 ; 將m單元中的BCD數(shù)送入累加器AANLA, #0FH ; 把m單元的高4位清0 SWAPA ; 將m單元中的BCD數(shù)移入高4位MOVR0, A ; m單元高4位為BCD數(shù),低4位為0INCR
16、0; 指向m+1單元MOVA, R0 ; 將m+1單元中的BCD數(shù)送入累加器AANLA, #0FH; 把m+1單元的高4位清0DEC R0; 指向m單元ORLA, R0 ; 將和m+1單元和m單元內(nèi)容合并MOVR0, A ; 合并后結(jié)果送m單元END5. 將內(nèi)部RAM中從data單元開始的10個(gè)無符號(hào)數(shù)相加,其和送sum單元。假定相加結(jié)果小于255。編寫程序完成。ORG0030HMOVR0, #10 ; 給 R0 置計(jì)數(shù)器初值MOVR1, # data ; 數(shù)據(jù)塊首址送R1CLRA ; A清零LOOP: ADDA, R1 ; 加一個(gè)數(shù)INCR1 ; 修改地址,指向下一個(gè)數(shù)DJNZR0, LOO
17、P ; R0 減 1,不為零循環(huán)MOVsum, A ; 存 10 個(gè)數(shù)相加和END6. 假定8位二進(jìn)制帶符號(hào)數(shù)存于R0中,要求編寫一個(gè)求補(bǔ)(取反)程序,所得補(bǔ)碼放入R1中。分析:對(duì)存于R0中的二進(jìn)制帶符號(hào)數(shù),如果是正數(shù),則將其變成絕對(duì)值相等的負(fù)數(shù)(用補(bǔ)碼表示);如果是負(fù)數(shù)(用補(bǔ)碼表示),則將其變成絕對(duì)值相等的正數(shù)。ORG0030HMOVA, R0; 將帶符號(hào)數(shù)送入ACPLAADDA, #01H; 末位加 1MOVR1, A; 補(bǔ)碼存入R1END第4章 單片機(jī)匯編語言程序設(shè)計(jì)(一)填空題1. 假定A=40H,R1=23H,(40H)= 05H。執(zhí)行以下兩條指令后,A=(25H),R1=(40H)
18、,(40H)=(03H)。XCHA, R1; A=23H,R1=40HXCHDA, R1; A=20H,(40H)=03H2. 假定80C51的晶振頻率為6 MHz,執(zhí)行下列程序后,在P1.1引腳產(chǎn)生的方波寬度為(5.804ms)START:SETBP1.1; P1.1置1(1周期)DL:MOV30H, #03H; 30H置初值(1周期)DL0:MOV31H, #0F0H; 31H置初值(1周期)DL1:DJNZ31H, DL1; 31H減1,不為0重復(fù)執(zhí)行(2周期)DJNZ30H, DL0; 30H減1,不為0轉(zhuǎn)DL0(2周期)CPLP1.1; P1.1取反(1周期)SJMPDL; 轉(zhuǎn)DL(
19、2周期)方波寬度=(2*15*16+2+1)*3+(2*15*16+2+1)*3+1+2+1*2=5804ms3. 下列程序中,X、Y和Z為輸入的8位無符號(hào)二進(jìn)制數(shù),F(xiàn)為輸出的邏輯運(yùn)算結(jié)果。試畫出該程序所模擬的組合邏輯電路。MOVA, XANLA, YMOVR1, AMOVA, YXRLA, ZCPLAORLA, R1MOVF, A4. 分析下列跳轉(zhuǎn)程序,程序中A與30H單元中的數(shù)都是符號(hào)數(shù),說明當(dāng)(A=(30H)時(shí)轉(zhuǎn)向LOOP1,當(dāng)(A>(30H)時(shí)轉(zhuǎn)向LOOP2,當(dāng)(A<(30H)時(shí)轉(zhuǎn)向LOOP3。MOVR0, A; R0AANLA, #80HJNZNEG; A<0,轉(zhuǎn)N
20、EGMOVA, 30HANLA, #80HJNZLOOP2; A0,(30H) <0,轉(zhuǎn)LOOP2SJMPCOMP; A0,(30H)0,轉(zhuǎn)COMPNEG:MOVA, 30HANLA, #80HJZLOOP3; A<0,(30H) 0,轉(zhuǎn)LOOP3COMP:MOVA, R0CJNEA, 30H, NEXT; A(30H),轉(zhuǎn)NEXTSJMPLOOP1; A=(30H),轉(zhuǎn)LOOP1NEXT:JNCLOOP2; A(30H),轉(zhuǎn)LOOP2JCLOOP3 ; A(30H),轉(zhuǎn)LOOP3綜上分析可知,當(dāng)A=(30H)時(shí)轉(zhuǎn)向LOOP1,A>(30H)時(shí)轉(zhuǎn)向LOOP2,A<(30
21、H)時(shí)轉(zhuǎn)向LOOP3。5. 假定80C51的晶振頻率為6 MHz,下列程序的執(zhí)行時(shí)間為(30.696ms)。已知程序中前2條指令機(jī)器周期數(shù)為1,后4條指令機(jī)器周期數(shù)為2。MOVR3, #151周期DL1:MOVR4, #2551周期DL2:MOVP1, R32周期DJNZR4, DL22周期DJNZR3, DL12周期RET2周期執(zhí)行時(shí)間:T=(2+2)*255+2+1*15+2+1*2=30696ms(二)編程題1. 把長度為10H的字符串從內(nèi)部RAM的輸入緩沖區(qū)inbuf向位于外部RAM的輸出緩沖區(qū)outbuf傳送,一直進(jìn)行到遇見回車或整個(gè)字符串傳送完畢,試編程實(shí)現(xiàn)。ORG0030HMOV
22、R0, #inbuf MOVDPTR, #outbuf MOVR4, #10H LOOP:MOVA, R0 ; 從內(nèi)部RAM取數(shù) CJNEA,#0DH, LL ; 是否為回車符CR SJMPSTOP ; 是回車符,則轉(zhuǎn)STOP,停止傳送 LL: MOVX DPTR, A ; 不是回車符,則傳送到外部RAM INCR0 INCDPTR DJNZR4, LOOP; 沒傳送完則循環(huán) STOP: SJMP$ 2. 內(nèi)部RAM從list單元開始存放一正數(shù)表,表中之?dāng)?shù)作無序排列,并以1作結(jié)束標(biāo)志。編程實(shí)現(xiàn)找出表中最小數(shù)。分析:從list+1單元開始判斷其中的數(shù)是否為-1,將比較得到的小數(shù)放入累加器AORG
23、0030HMOV R0, #list MOV A, R0 ;取第一個(gè)正數(shù) LOOP: INC R0 ;指向下一個(gè)正數(shù) MOV 30H, R0 CJNE A, 30H, CHK ;前一個(gè)數(shù)與后一個(gè)數(shù)比較 CHK: JC LOOP1 ;前一個(gè)數(shù)小,則轉(zhuǎn)LOOP1 MOV A, 30H ;前一個(gè)數(shù)大,取后一個(gè)數(shù) LOOP1: XCH A, 30H CJNE A, #0FFH, LOOP ;判斷后一個(gè)數(shù)是否為-1XCH A, 30H ;取最小數(shù) SJMP $ 3. 內(nèi)部RAM的X,Y 單元中各存放一個(gè)帶符號(hào)的數(shù),試編程實(shí)現(xiàn)按如下條件進(jìn)行的運(yùn)算,并將結(jié)果存入Z單元中。 若X為正奇數(shù),Z XY; 若X為正
24、偶數(shù),Z XY; 若X為負(fù)奇數(shù),Z XY; 若X為負(fù)偶數(shù),Z XY。 分析:正數(shù):第7位為0,負(fù)數(shù):第7位為1;奇數(shù):第0位為1,偶數(shù):第0位為0方法1:利用ANL指令判斷正負(fù)、奇偶ORG0030HMOVA, XANLA, #80H ; 判斷X正負(fù)JNZNEG; 若X為負(fù),轉(zhuǎn)NEGMOVA, X; X為正ANLA, #01H; 判斷X奇偶JZEVEN1; 若X為偶數(shù),轉(zhuǎn)EVEN1MOVA, XADDA, Y; 若X為正奇數(shù),ZXYSJMPRESULTEVEN1:MOVA, XORLA, Y; 若X為正偶數(shù),ZXYSJMPRESULTNEG:MOVA, X; X為負(fù)ANLA, #01H; 判斷X
25、奇偶JZEVEN2; 若X為偶數(shù),轉(zhuǎn)EVEN2MOVA, XANLA, Y; 若X為負(fù)奇數(shù),ZXYSJMPRESULTEVEN2:MOVA, X; 若X為負(fù)偶數(shù),ZXYXRLA, YRESULT: MOVZ, A方法2:RL指令將符號(hào)位移入CY判斷正負(fù),RR指令將最低位移入CY判斷奇偶MOV A, XCLRCRLC AJC NEG ;X為負(fù),轉(zhuǎn)至NEGRRC ARRC A JNC EVEN1 ; X為偶數(shù),轉(zhuǎn)至EVEN1MOV A, XADDA, Y; X為正奇數(shù),Z XYSJMP RETULTEVEN1: MOV A, XORL A, Y; X為正偶數(shù),Z XYSJMP RETULTNEG:
26、 RRC A, RRC AJNC EVEN2 MOV A, XANL A, Y; X為負(fù)奇數(shù),Z XYSJMP RETULTEVEN2: MOV A, XXRL A, Y; X為負(fù)偶數(shù),Z XYRETULT:MOV Z, AEND4. 把一個(gè)8位二進(jìn)制數(shù)的各位用ASCII碼表示之(例如,為0的位用30H表示,為1的位用31H表示等)。該數(shù)存放在內(nèi)部RAM的byte單元中。變換后得到的8個(gè)ASCII碼存放在外部RAM以buf開始的存儲(chǔ)單元中,試編程實(shí)現(xiàn)。ORG0030HMOVDPTR, #bufMOVR0, # byteMOVR7, #08HMOVA, R0CLRCLOOP1 :RRCAMOV
27、R6, AJCONEMOVA, #30HSJMPLOOP2ONE:MOVA, #31HLOOP2 :MOVXDPTR, AINCDPTRMOV A, R6DJNZR7, LOOP15. 編程實(shí)現(xiàn)運(yùn)算式。假定a、b、c 3個(gè)數(shù)分別存放于內(nèi)部RAM的DA、DB、DC單元中,另有平方運(yùn)算子程序SQR供調(diào)用。ORG0030HMOVA, DAPUSHACCACALLSQRPOPACCMOVDC, AMOVA, DBPUSHACCACALLSQRPOPACCADDA, DCMOVDC, A SQR:POPACCMOVB, AMULABPUSHACCRETEND6. 試編程實(shí)現(xiàn)兩個(gè)ASCII碼字符串是否相等
28、。字符串的長度在內(nèi)部RAM 41H單元中,第1個(gè)字符串的首地址為42H,第2個(gè)字符串的首地址為52H。如果兩個(gè)字符串相等,則置內(nèi)部RAM 40H單元為00H;否則置40H單元為FFH。ORG0030HMOVR0, #42H MOVR1, #52H MOVR7, 41H LOOP: MOV A, R0 MOV30H, R1 CJNE A, 30H, LK INC R0 INC R1 DJNZ R7, LOOP MOV 40H, #00H SJMP DD LK: MOV 40H, #0FFH DD: SJMP DD 7. 在外部RAM首地址為table的數(shù)據(jù)表中,有10字節(jié)數(shù)據(jù)。試編程實(shí)現(xiàn)將每個(gè)字
29、節(jié)的最高位無條件置1。ORG0030HMOVDPTR, #table MOVR6, #10 LOOP:MOVXA, DPTR SETB ACC.7 MOVXDPTR, A INCDPTR DJNZR6, LOOP 第6章 80C51單片機(jī)的中斷與定時(shí)(一)填空題1. 中斷技術(shù)是解決資源競爭的有效方法,因此,可以說中斷技術(shù)實(shí)質(zhì)上是一種資源(共享)技術(shù)。2. 上電復(fù)位后,各中斷優(yōu)先級(jí)從高到低的次序?yàn)椋ㄍ獠恐袛?)、(定時(shí)器/計(jì)數(shù)器0中斷)、(外部中斷1)、(定時(shí)器/計(jì)數(shù)器1中斷)和(串行中斷)。3. 響應(yīng)中斷后,產(chǎn)生長調(diào)用指令LCALL,執(zhí)行該指令的過程包括:首先把(PC)的內(nèi)容壓入堆棧,以進(jìn)行斷
30、點(diǎn)保護(hù),然后把長調(diào)用指令的16位地址送(PC),使程序執(zhí)行轉(zhuǎn)向(ROM)中的中斷地址區(qū)。4. 當(dāng)計(jì)數(shù)器產(chǎn)生計(jì)數(shù)溢出時(shí),把定時(shí)器控制寄存器的TF0(TF1)位置1。對(duì)計(jì)數(shù)溢出的處理,在中斷方式時(shí),該位作為(中斷請(qǐng)求標(biāo)志位)使用;在查詢方式時(shí),該位作(查詢狀態(tài)位)使用。5. 定時(shí)器1工作于方式3做波特率發(fā)生器使用時(shí),若系統(tǒng)晶振頻率為12 MHz,可產(chǎn)生的最低波特率為(15.26 b/s),最高波特率為(1000000 b/s)。對(duì)于12MHz的晶振,一個(gè)機(jī)器周期為1ms,定時(shí)器1做波特率發(fā)生器使用時(shí),若工作于方式1,計(jì)數(shù)初值為0,則波特率最低,為若計(jì)數(shù)初值為65535,則波特率最高,為6. 定時(shí)器
31、0工作于方式2的計(jì)數(shù)方式,預(yù)置的計(jì)數(shù)初值為156,若通過引腳T0輸入周期為1ms的脈沖,則定時(shí)器0的定時(shí)時(shí)間為(100ms)。7. 用于定時(shí)測試壓力和溫度的單片機(jī)應(yīng)用系統(tǒng),以定時(shí)器0實(shí)現(xiàn)定時(shí)。壓力超限和溫度超限的報(bào)警信號(hào)分別由和輸入,中斷優(yōu)先順序?yàn)椋簤毫Τ逌囟瘸薅〞r(shí)檢測。為此,中斷允許控制寄存器IE最低3位的狀態(tài)應(yīng)是(111),中斷優(yōu)先級(jí)控制寄存器IP最低3位的狀態(tài)應(yīng)是(101)。8. 可利用定時(shí)器來擴(kuò)展外部中斷源。若以定時(shí)器1擴(kuò)展外部中斷源,則該擴(kuò)展外中斷的中斷請(qǐng)求輸入端應(yīng)為(T1)引腳,定時(shí)器1應(yīng)取工作方式(2),預(yù)置的計(jì)數(shù)初值應(yīng)為(0FFH),擴(kuò)展外中斷的入口地址應(yīng)為(001BH)。
32、(二)單項(xiàng)選擇題1.下列有關(guān)80C51中斷優(yōu)先級(jí)控制的敘述中錯(cuò)誤的是(D)(A)低優(yōu)先級(jí)不能中斷高優(yōu)先級(jí),但高優(yōu)先級(jí)能中斷低優(yōu)先級(jí)(B)同級(jí)中斷不能嵌套(C)同級(jí)中斷請(qǐng)求按時(shí)間的先后順序響應(yīng)(D)同一時(shí)刻,同級(jí)的多中斷請(qǐng)求,將形成阻塞,系統(tǒng)無法響應(yīng)2.80C51有兩個(gè)定時(shí)器,下列有關(guān)這兩個(gè)定時(shí)器級(jí)聯(lián)定時(shí)問題的敘述中,正確的是(C)(A)可以實(shí)現(xiàn)軟件級(jí)聯(lián)定時(shí),而不能實(shí)現(xiàn)硬件級(jí)聯(lián)定時(shí)(B)可以實(shí)現(xiàn)硬件級(jí)聯(lián)定時(shí),而不能實(shí)現(xiàn)軟件級(jí)聯(lián)定時(shí)(C)軟件級(jí)聯(lián)定時(shí)和硬件級(jí)聯(lián)定時(shí)都可以實(shí)現(xiàn)(D)軟件級(jí)聯(lián)定時(shí)和硬件級(jí)聯(lián)定時(shí)都不能實(shí)現(xiàn)3.在工作方式0下,計(jì)數(shù)器由TH的全部8位和TL的低5位組成,因此,其計(jì)數(shù)范圍是(A
33、)(A)1 8192 (B)0 8191 (C)0 8192 (D)1 40964.對(duì)于由80C51構(gòu)成的單片機(jī)應(yīng)用系統(tǒng),中斷響應(yīng)并自動(dòng)生成長調(diào)用指令LCALL后,應(yīng)(B)(A)轉(zhuǎn)向外部程序存儲(chǔ)器去執(zhí)行中斷服務(wù)程序(B)轉(zhuǎn)向內(nèi)部程序存儲(chǔ)器去執(zhí)行中斷服務(wù)程序(C)轉(zhuǎn)向外部數(shù)據(jù)存儲(chǔ)器去執(zhí)行中斷服務(wù)程序(D)轉(zhuǎn)向內(nèi)部數(shù)據(jù)存儲(chǔ)器去執(zhí)行中斷服務(wù)程序5.中斷查詢確認(rèn)后,在下列各種單片機(jī)運(yùn)行情況中,能立即進(jìn)行響應(yīng)的是(D)(A)當(dāng)前正在進(jìn)行高優(yōu)先級(jí)中斷處理(B)當(dāng)前正在執(zhí)行RETI指令(C)當(dāng)前指令是DIV指令,且正處于取指機(jī)器周期(D)當(dāng)前指令是“MOV A, Rn” 指令6.下列條件中,不是中斷響應(yīng)必要
34、條件的是(C)(A)TCON或SCON寄存器中相關(guān)的中斷標(biāo)志位置1(B)IE寄存器中相關(guān)的中斷允許位置1(C)IP寄存器中相關(guān)位置1(D)中斷請(qǐng)求發(fā)生在指令周期的最后一個(gè)機(jī)器周期7.在單片機(jī)的下列功能或操作中,不使用中斷方法的是(D)(A)串行數(shù)據(jù)傳送操作(B)實(shí)時(shí)處理(C)故障處理(D)存儲(chǔ)器讀/寫操作第6章 單片機(jī)并行存儲(chǔ)器擴(kuò)展(一)填空題1. 使用8KB×8位的RAM芯片,用譯碼法擴(kuò)展64KB×8位的外部數(shù)據(jù)存儲(chǔ)器,需要(8)片存儲(chǔ)芯片,共需使用(16)條地址線,其中(13)條用于存儲(chǔ)單元選擇,(3)條用于芯片選擇。2. 三態(tài)緩沖器的三態(tài)分別是(低電平)、(高電平)和
35、(高阻抗)。3. 80C51單片機(jī)系統(tǒng)整個(gè)存儲(chǔ)空間由4部分組成,分別為(256)個(gè)地址單元的內(nèi)部(數(shù)據(jù))存儲(chǔ)器,(4KB)個(gè)地址單元的內(nèi)部(程序)存儲(chǔ)器,(64KB)個(gè)地址單元的外部(數(shù)據(jù))存儲(chǔ)器,(60KB)個(gè)地址單元的外部(程序)存儲(chǔ)器。4. 在80C51單片機(jī)系統(tǒng)中,為外擴(kuò)展存儲(chǔ)器準(zhǔn)備了(16)條地址線,其中低位地址線由(P0口)提供,高位地址線由(P2口)提供。5. 在80C51單片機(jī)系統(tǒng)中,存儲(chǔ)器并行外擴(kuò)展涉及的控制信號(hào)有(ALE)、()、()、()和(),其中用于分離低8位地址和數(shù)據(jù)的控制信號(hào)是(ALE),它的頻率是晶振頻率的(6)分之一。6. 起止地址為0000H 3FFFH的外
36、擴(kuò)展存儲(chǔ)器芯片的容量是(16KB)。若外擴(kuò)展存儲(chǔ)器芯片的容量為2KB,起始地址為3000H,則終止地址應(yīng)為(37FFH)。7. 與微型機(jī)相比,單片機(jī)必須具有足夠容量的程序存儲(chǔ)器是因?yàn)樗鼪]有(外存)。8. 在存儲(chǔ)器擴(kuò)展中,無論是線選法還是譯碼法,最終都是為擴(kuò)展芯片的(片選)引腳端提供信號(hào)。9. 由一片80C51和一片2716組成的單片機(jī)最小系統(tǒng)。若2716片選信號(hào)接地,則該存儲(chǔ)芯片連接共需(11)條地址線。除數(shù)據(jù)線外,系統(tǒng)中連接的信號(hào)線只有()和(ALE)。(二)單項(xiàng)選擇題1.下列有關(guān)單片機(jī)程序存儲(chǔ)器的論述中,錯(cuò)誤的是(D)(A)用戶程序保存在程序存儲(chǔ)器中(B)斷電后程序存儲(chǔ)器仍能保存程序(C)
37、對(duì)于程序存儲(chǔ)器只使用MOVC一種指令(D)執(zhí)行程序需要使用MOVC指令從程序存儲(chǔ)器中逐條讀出指令2.下列有關(guān)單片機(jī)數(shù)據(jù)存儲(chǔ)器的論述中,錯(cuò)誤的是(A)(A)數(shù)據(jù)存儲(chǔ)器只使用MOV指令進(jìn)行讀/寫(B)堆棧在數(shù)據(jù)存儲(chǔ)器中開辟(C)數(shù)據(jù)存儲(chǔ)器只用于保存臨時(shí)數(shù)據(jù)(D)專用寄存器也是數(shù)據(jù)存儲(chǔ)器的一部分3.在單片機(jī)系統(tǒng)中,1KB表示的二進(jìn)制位數(shù)是(D)(A)1000(B)8×1000(C)1024(D)8×10244.在下列信號(hào)中,不是供外擴(kuò)展程序存儲(chǔ)器使用的是(D)(A)(B) (C)ALE(D)5.RAM是隨機(jī)存儲(chǔ)器的意思,隨機(jī)存儲(chǔ)器的準(zhǔn)確含義是(B)(A)存儲(chǔ)器的各存儲(chǔ)單元的存取時(shí)
38、間相等(B)可以在任何時(shí)刻隨機(jī)讀/寫存儲(chǔ)器內(nèi)各存儲(chǔ)單元(C)隨機(jī)表示既可讀又可寫(D)隨機(jī)是易失的意思,因?yàn)殡S機(jī)存儲(chǔ)器具有易失的特點(diǎn)6.若在系統(tǒng)中只擴(kuò)展一片Intel 2732(4K×8位),除應(yīng)使用P0口的8條口線外,至少還應(yīng)使用P2口的口線(A)(A)4條(B)5條(C)6條(D)7條7.下列敘述中,不屬于單片機(jī)存儲(chǔ)器系統(tǒng)特點(diǎn)的是(D)(A)程序和數(shù)據(jù)兩種類型的存儲(chǔ)器同時(shí)存在(B)芯片內(nèi)外存儲(chǔ)器同時(shí)存在(C)擴(kuò)展數(shù)據(jù)存儲(chǔ)器與片內(nèi)數(shù)據(jù)存儲(chǔ)空間重疊(D)擴(kuò)展程序存儲(chǔ)器與片內(nèi)程序存儲(chǔ)空間重疊8.在80C51單片機(jī)系統(tǒng)中,為解決內(nèi)外程序存儲(chǔ)器銜接問題所使用的信號(hào)是(A)(A)(B)(C)ALE(D)第7章 單片機(jī)并行I/O擴(kuò)展(一)填空題1. 80C51單片機(jī)I/O擴(kuò)展占據(jù)的是(外部數(shù)據(jù))存儲(chǔ)器的地址空間,因此,其擴(kuò)展連接只涉及(ALE)、()和()3個(gè)控制信號(hào)。2. 在單片機(jī)中,為實(shí)現(xiàn)數(shù)據(jù)的I/O傳送,可使用3種控制方式,即(無條件)方式、(查詢)方式和(中斷)方式。其中效率較高的是(中斷方
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025深圳市房屋裝修合同模板
- 義務(wù)消防員培訓(xùn)
- 大學(xué)課件水污染控工程:吸附、離子交換
- 人力資源資料-員工關(guān)系培訓(xùn)第三版
- 2025版合同終止證明書
- 2025建筑工程合同書范本
- 2025自動(dòng)化專業(yè)培訓(xùn)合同書
- 2025蘋果買賣合同模板
- 2024年09月河北清河縣事業(yè)單位招聘191人(含醫(yī)療崗)筆試歷年專業(yè)考點(diǎn)(難、易錯(cuò)點(diǎn))附帶答案詳解
- 出口貿(mào)易合同(2篇)
- 2023-2024學(xué)年河南省三門峽市高二下學(xué)期5月期末物理試題(解析版)
- 小學(xué)數(shù)學(xué)課堂教學(xué)生活化策略研究
- 強(qiáng)度計(jì)算.材料疲勞與壽命預(yù)測:S-N曲線:疲勞壽命預(yù)測技術(shù)
- 教學(xué)課件《權(quán)力與理性-17、18世紀(jì)西方美術(shù)》
- 創(chuàng)業(yè)大賽承辦服務(wù)投標(biāo)方案(技術(shù)方案)
- JGJ/T235-2011建筑外墻防水工程技術(shù)規(guī)程
- 員工合同書一張紙的勞動(dòng)合同書書2024年
- 糖尿病臨床診療指南:基層實(shí)踐
- 2023年形勢與政策期末考試滿分題庫
- CJT227-2006 垃圾生化處理機(jī)
- 如果歷史是一群喵
評(píng)論
0/150
提交評(píng)論