




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
主講教師:XXX單片機原理主講教師:XXX單片機原理第三章數據運算與程序轉移第四章查表及位處理第五章中斷系統第六章定時計數器第七章單片機擴展第八章模數轉換第一章認識單片機第二章單片機存儲器目錄第三章數據運算與程序轉移第四章查表及位處理第五章第一PPT模板網,時尚PPT模板下載/moban/shishang/三維目標知識目標掌握算術運算指令的功能及其相關程序編寫;掌握邏輯運算指令的功能及其相關程序編寫;掌握控制轉移指令的功能及其相關程序編寫。技能目標通過直觀教學和教師的具體講解,培養學生的邏輯思維和抽象思維能力;培養學生歸納總結問題的能力。素質目標通過對專業入門知識的生動形象的教學,使學生對本課程的產生濃厚興趣,激發學生的學習熱情。第一PPT模板網,時尚PPT模板下載www.1ppt.co主要內容:4算術運算指令123邏輯運算指令控制轉移指令按鍵控制霓虹燈主要內容:4算術運算指令123邏輯運算指令控制轉移指令按鍵控一、算術運算指令算術運算指令(共24條)加法指令乘除指令帶借位減法指令十進制調整指令算術運算指令MSC—51的算術運算指令共有24條。MSC—51運算指令能直接執行8位數的運算,借助程序狀態字PSW中的標志可以實現多精度數的加、減運算,同時可以對壓縮的BCD(一個字節表示兩位十進制數)數進行加法運算。一、算術運算指令算術運算指令加法指令乘除指令帶借位減法指令十算術運算指令對程序狀態字(PSW)中標志的影響如表所示:指令PSW中的標志位CyOVACADD×××ADC×××INC---SUBB×××DEC---MUL0×-DIV0×-“×”表示影響該標志位,“-”表示不影響該標志位,“0”表示該標志位清零。算術運算指令對程序狀態字(PSW)中標志的影響如表所示:指令11加法指令Textinhere帶進位加法指令加“1”指令加法指令不帶進位加法指令11加法指令Text帶進位加法指令加“1”指令加法指令不帶11加法指令不帶進位加法指令(4條)匯編指令操作說明字節數機器周期ADDA,RnRn值與A值相加,結果在A中,
A←(A)+(Rn)。11ADDA,directDirect值與A值相加,結果在A中,A←(A)+(direct)。21ADDA,#data常數data與A值相加,結果在A中,A←(A)+data。21ADDA,@Ri@Ri值與A值相加,結果在A中,A←(A)+((Ri))。1111加法指令不帶進位加法指令(4條)匯編指令操作說明字節數機11加法指令不帶進位加法指令(4條)①如果第7位有進位,則Cy=1,否則Cy=0;②如果第3位有進位,則AC=1,否則AC=0;③如果第6位有進位,而第7位無進位或第6位有無進位而第7位有進位(表示有符號數相加結果超出表示范圍),則OV=0,否則OV=0。若以J7,J6表示第7,6位的進位,則OV=J7⊕J6。④相加的和存放在A中,如果結果中“1”的個數為奇數則P=1,否則P=0。指令特點:被加數總是累加器A值,相加結果保存在累加器A中。加法指令影響PSW中的標志位。兩個字節數相加時:11加法指令不帶進位加法指令(4條)①如果第7位有進位,11加法指令帶進位加法指令(4條)匯編指令操作說明字節數機器周期ADDCA,RnRn值與A值帶進位加,結果送A,A←(A)+(Rn)+(Cy)。11ADDCA,directdirect值與A值帶進位加,結果送A,A←(A)+(direct)+(Cy)。21ADDCA,#data常數data與A值帶進位加,結果送A,
A←(A)+DATA+(Cy)。21ADDCA,@RiRi間址的存儲單元中內容與A值帶進位加,結果送A,A←(A)+((Ri))+(Cy))。1111加法指令帶進位加法指令(4條)匯編指令操作說明字節數機器11加法指令帶進位加法指令(4條)指令說明帶進位位的加法指令,除兩個數相加外,還需加上進位Cy(參加最低位的運算)。帶進位位的加法指令用于多精度數的加法運算。帶進位位的加法指令對程序狀態字PSW的影響同不帶進位的加法指令。11加法指令帶進位加法指令(4條)指令說明帶進11加法指令加“1”指令(5條)匯編指令操作說明字節數機器周期INCAA值加1,A←(A)+1。11INCRnRn值加1,Rn←(Rn)+1。11INCdirectdirect值加1,direct←(direct)+1。21INC@Ri @Ri值加1,(Ri)←((Ri))+1。11INCDPTRDPTR值加1,DPTR←(DPTR)+1。1211加法指令加“1”指令(5條)匯編指令操作說明字節數機器周11加法指令加“1”指令(5條)指令說明加1指令除影響奇偶校驗位P外,不影響程序狀態字PSW中的其它標志位。INC
direct指令中直接地址direct為I/O端口Pi時,為“讀-改-寫”操作。端口數據從輸出口的鎖存器讀入,而不從引腳讀入。11加法指令加“1”指令(5條)指令說明加1指以P1口為例,如圖所示。現執行指令:INCP1則指令執行過程為:CPU發出“讀鎖存器”有效信號,將P1端口各D鎖存器當前Q端狀態通過Dx內部數據總線讀入CPU;將讀入的P1端口的八位二進制數據加1;CPU發出“寫入”信號,通過Dx內部數據總線將加1后的數據重新寫入到P1端口各D鎖存器中去。數據運算與程序轉移課件12減法指令帶借位的減法指令減法指令減“1”指令12減法指令帶借位的減減法指令減“1”指令12減法指令帶借位的減法指令(4條)12減法指令帶借位的減法指令(4條)12減法指令帶借位的減法指令(4條)指令說明
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。12減法指令帶借位的減法指令(4條)指令說明M①如果第7位有借位,則Cy=1,否則Cy=0;②如果第3位有借位,則AC=1,否則AC=0;③如果第6位有借位而第7位無借位或第6位無借位而第7位有借位則OV=0。同樣用J7,J6表示第7,6位的借位,則OV=J7⊕J6;④相減的差存放在A中,如果結果中“1”的個數為奇數,則P=1,否則P=0。指令特點:
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。減法指令影響PSW中的標志位。兩個數相減時:12減法指令帶借位的減法指令(4條)①如果第7位有借位,則Cy=1,否則Cy=0;指令特點:兩數相減時,無論兩數大小如何兩數都可直接相減,不夠減時服從向高位借1為基數的原則。這不同于我們習慣上的減法運算。同理,兩數相減后判斷OV位狀態,實際上只要將相減兩數看成有符號數(補碼數),若:正數-負數=負數或:負數-正數=正數,則相減結果一定超出8位有符號數(補碼數)表示范圍,即OV=1。指令特點:
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。減法指令影響PSW中的標志位。兩個數相減時:12減法指令帶借位的減法指令(4條)兩數相減時,無論兩數大小如何兩數都可直接相減,不12減法指令減“1”指令(4條)12減法指令減“1”指令(4條)12減法指令減“1”指令(4條)指令說明減“1”指令除DECA影響奇偶標志P外,其余指令不影響PSW中的標志位;減“1”指令用于修改輸出口Pi時,進行的是“讀-改-寫”操作;DPTR沒有減1指令。12減法指令減“1”指令(4條)指令說明減“1”指令除DEC13乘除指令(2條)13乘除指令(2條)13乘除指令(2條)指令說明MUL指令實現累加器A和B寄存器中的兩個8位無符號數相乘,16位乘積的低8位放在累加器A中,高8位放在B寄存器中。如果乘積大于255(FFH,即乘積中高8位非零)時OV=1,否則OV=0。奇偶標志P仍按累加器A中“1”的奇偶性確定。進位標志清零Cy=0,不影響輔助進位標志AC。13乘除指令(2條)指令說明MUL指令實現累加二、邏輯運算指令通過上節課MCS-51單片機算術運算指令的功能及其相關程序編寫,接下來我們學習邏輯運算類指令的功能及其運算。二、邏輯運算指令通過上節課MCS-51單片機算邏輯運算指令(共24條)BECDA累加器A清零取反指令與指令或指令循環移位指令異或指令邏輯運算指令BECDA累加器A清零與指令或指令循環移位指令異邏輯運算指令中,除帶進位循環移位指令影響Cy和以PSW(direct)為目的的操作數的指令外,其余的邏輯運算指令不影響程序狀態字PSW中的狀態標志。當用邏輯運算指令修改輸出口時,進行的是“讀-改-寫”操作。邏輯運算指令中,除帶進位循環移位指令影響Cy11累加器A的清零,取反指令11累加器A的清零,取反指令12邏輯“與”運算指令(6條)邏輯“與”運算的特點是:X∧1=X;X∧0=0利用這個特點可以對某個操作數的某一位或某幾位清零。12邏輯“與”運算指令(6條)邏輯“與”運算的特點是:13邏輯“與”運算指令邏輯“或”運算的特點是:X∨1=1;
X∨0=X利用這個特點,可以對某個操作數的某一位或幾位置“1”。13邏輯“與”運算指令邏輯“或”運算的特點是:14邏輯“異與”運算指令邏輯異或運算的特點是:利用這個特點,可以對某個操作數的某一位或某幾位取反。14邏輯“異與”運算指令三、控制轉移指令通過上節課MCS-51單片機算術運算指令和邏輯運算指令的功能及其相關程序編寫,接下來我們學習控制轉移類指令的功能及其相關程序。三、控制轉移指令通過上節課MCS-51單片機算NOPJZ,JNZ,JC,JNC,JB,JNB,JBC,CJNE,DJNZAJMP,LJMP,SJMP,JMPACALL,LCALL,RET,RETI控制轉移指令(共22條)無條件轉移指令調用和返回指令條件轉移指令空操作指令NOPJZ,JNZ,JC,JNC,JB,JNB,JBC,CJ控制與轉移指令中,除“CJNE”指令對Cy有影響外,其余指令都不影響標志。控制與轉移指令可改變程序計數器PC的值,從而使程序跳到指定的目的地址開始執行。控制與轉移指令中,除“CJNE”指令對Cy有影響11無條件轉移指令11無條件轉移指令11無條件轉移指令程序執行無條件轉移指令時,程序就無條件地轉移到目的地址。無條件轉移命令間接長轉移指令短轉移指令長轉移指令絕對轉移指令11無條件轉移指令程序執行無條件轉移指令時,程序就無條件地轉11無條件轉移指令長轉移指令:LJMP
addr16指令說明指令的操作是將16位目標地址addr16裝入PC中,允許轉移的目標地址在64KB空間的任意單元,用匯編語言編寫程序時,addr16往往是一個標號。11無條件轉移指令長轉移指令:LJMPaddr16指令說明11無條件轉移指令絕對轉移指令:AJMP
addr11指令說明指令的操作是將11位的目標地址addr11裝入PC中的低11位。要求目標地址的高5位與PC+2后PC中的高5位相同。即轉移的目標地址必須和AJMP指令的下一條指令首字節地址位于程序存儲器的同一段2KB字節范圍內,編寫程序時,addr11也往往是一個標號。11無條件轉移指令絕對轉移指令:AJMPaddr11指令說11無條件轉移指令短轉移指令:SJMP
reL指令說明指令中相對偏移量ret為8位的補碼,將其符號擴展為16位后與PC相加得到16位的目標地址。轉移的范圍為-128-+127字節,編寫程序時,ret同樣往往是一個標號。MCS—51沒有專用的停機指令,若要動態停機(原地循環等待)可以用SJMP指令來實現:11無條件轉移指令短轉移指令:SJMPreL指令說明11無條件轉移指令短轉移指令:SJMP
reL指令說明動態停機指令:LP1:SJMP
LP1
或寫成:SJMP
$
$表示本指令首字節所在單元的地址,使用本可省略標號。11無條件轉移指令短轉移指令:SJMPreL指令說明動態停11無條件轉移指令間接長轉移指令:JMP
@A+DPTR指令說明轉移目標地址由數據指針DPTR和累加器A(8位無符號數)相加而得。指令的執行不影響累加器A和數據指令DPTR。該指令的特點是轉移地址可以在程序運行中加以改變。例如:DPTR做為基地址。根據A的不同值可以實現多分支轉移,因此一條指令可以完成多分支轉移的功能。該功能稱之為散轉功能。間接長轉移指令又稱為散轉指令。11無條件轉移指令間接長轉移指令:JMP@A+DPTR指12條件轉移指令條件轉移指令的操作是判斷指定的條件,如果條件滿足則轉移,不滿足則順序執行。JC,JNC,JB,JNB,JBCDJNZJZ,JNZCJNE條件轉移指令(共13條)判斷A是否為零轉移指令比較不等轉移指令減“1”循環轉移指令位條件轉移指令12條件轉移指令條件轉移指令的操作是判斷指定的12條件轉移指令判斷累加器是否為零轉移指令(2條)12條件轉移指令判斷累加器是否為零轉移指令(2條)12條件轉移指令位條件轉移指令(5條)12條件轉移指令位條件轉移指令(5條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)指令說明比較不等轉移指令的功能是比較兩個數,若兩者不相等則轉移,相等則順序執行。如果第二個操作數(無符號數)大于第一個操作數(無符號數),則Cy置1,否則Cy清零。指令的執行不影響操作數。12條件轉移指令比較不等轉移指令(4條)指令說明12條件轉移指令減1循環指令
當direct為端口地址P0—P3時,“DJNZdirect,rel”為“讀—改—寫”指令。12條件轉移指令減1循環指令當direct四、按鍵控制霓虹燈隨著電子技術及單片機技術的發展,霓虹燈產品變得花樣繁多、豐富多彩。本項目要求編寫兩種霓虹燈閃爍的程序,每一種由一只按鍵控制啟動,用LED模擬霓虹燈,完成硬件電路及程序設計。霓虹燈控制效果要求如下:①無按鍵按下時,8只LED均不亮;②若接SW1鍵時,LED1亮;接SW3鍵時,LED1滅;③若按SW2鍵時,8只LED自上向下輪流點亮,每只LED點亮時間為0.5S;按下SW3鍵時,全部不亮。四、按鍵控制霓虹燈隨著電子技術及單片機技術的發11項目分析根據項目要求,應該設計的電路有基本電路、顯示電路和鍵盤輸入電路。基本電路和顯示電路與前述項目相同,本項目中的設計重點是鍵盤輸入電路。鍵盤是計算機控制不可缺少的輸入設備,是實現人機對話的紐帶。按鍵的電路如圖(a)所示。當按鍵SW未被按下時,A點為高電平;按下按鍵SW,開關閉合,A點為低電平,通過檢測A點的電平高、低,便可確定按鍵按下與否。11項目分析根據項目要求,應該設計的電路有基本當接鍵接通或斷開時,由于機械觸點的彈性作用,使得觸點不能一次接通或斷開,而是經過一個振蕩過程才能接通或斷開。因此,在觸點閉合或斷開的瞬間會出現電壓抖動,如圖(b)所示。為了保證鍵盤處理過程的正確進行,在按鍵接通和斷開時,必須進行消抖動處理,然后再對鍵盤進行處理。消抖動處理有硬件和軟件兩種方法。硬件方法就是加消抖動電路,從根本上避免抖動的產生;軟件方法是通過延時的方法躲過抖動,待信號穩定之后,再進行鍵盤掃描。一般為降低成本起見多采用軟件方法,延時10—20ms即可。11項目分析當接鍵接通或斷開時,由于機械觸點的彈性作用,使11項目分析根據任務要求,本項目中需要3只按鍵。由于數目較少,可以讓每只按鍵單獨占用80C51系列單片機的一條I/O端口線,每根I/O端口線的工作不會影響其他I/O端口的狀態。11項目分析根據任務要求,本項目中需要3只按鍵。12項目實施硬件電路在項目2電路的基礎上,將3只按鍵SW1、SW2.SW3同單片機的Pl.0、Pl.l、Pl.2相連,如圖所示。當某一鍵按下時,相應的輸入線為低電平,釋放時,因P1口內部電路具有上拉電阻,相應的輸入線為高電平。12項目實施硬件電路在項目2電路的基礎上,將312項目實施材料清單本項目所需材料清單如表所示:12項目實施材料清單本項目所需材料清單如表所示:12項目實施程序設計思路通過對項目要求進行的分析,霓虹燈的閃爍花樣有兩種,一種是1只LED常亮輸出,另一種是各LED循環顯示輸出,由于這兩種顯示花樣是由按鍵控制的,并且有啟動和停止控制。可按狀態(控制過程)的理念進行劃分,這樣完整的控制程序可以分為三個狀態:狀態0:所有的LED均不亮。
狀態1:LED1亮。狀態2:8只LED循環閃爍。12項目實施程序設計思路通過對項目要求進行的分析這樣整個控制任務又可以描述為:在復位或無按鍵按下時,8只LED均不亮,即為狀態0;按下SW1鍵,為狀態1;按下SW3鍵LED1滅,又回到狀態0;按下SW2鍵時,8只LED自上向下輪流點亮,每只LED點亮時間為05S,為狀態2;按下SW3鍵時,全部不亮,又回到狀態0。狀態之間的切換和控制是由按鍵的操作決定的。程序流程圖如下圖所示:12項目實施程序設計思路這樣整個控制任務又可以描述為:在復位或無按鍵按下12項目實施程序設計思路12項目實施程序設計思路12項目實施參考程序MAIN:MOV P0,#0FFH;狀態0程序,8個LED全滅
LCALLKEY;調用鍵盤掃描程序KEY JNB ACC.0,STAU1;SW1為0,轉狀態1程序JNB ACC.1,STAU2;SW2為0,轉循環狀態2程序
SJMPMAIN ;無鍵按下轉到MAIN處STAU1:CLR P0.0 ;狀態1程序,LED1亮
LCALLKEY;調用鍵盤掃描程序KEYJNB ACC.1,STAU2;SW2為0,轉循環狀態2程序
JNB ACC.2,MAIN;SW3為0,轉狀態0程序
SJMP STAU1;無鍵按下循環STAU2: MOV R0,#0FEH ;狀態2程序,循環點亮初值送R012項目實施參考程序MAIN:MOV P0,#0F12項目實施運行調試根據圖示原理圖,在單片機學習板上焊接硬件電路。第一步將單片機芯片插到儀器中,通電并操作SW1、SW2、SW3按鍵觀察LED的運效果。將單片機芯片(AT89S51)放人編程器中,并將編程器與PC機連接,將編譯好的二進制序文件傳送至單片機芯片。第二步第三步第四步運行仿真軟件完成程序的錄入、編譯和模擬仿真調試。12項目實施運行調試根據圖示原理圖,在單片機學習板上焊接硬件謝謝觀賞!謝謝觀賞!主講教師:XXX單片機原理主講教師:XXX單片機原理第三章數據運算與程序轉移第四章查表及位處理第五章中斷系統第六章定時計數器第七章單片機擴展第八章模數轉換第一章認識單片機第二章單片機存儲器目錄第三章數據運算與程序轉移第四章查表及位處理第五章第一PPT模板網,時尚PPT模板下載/moban/shishang/三維目標知識目標掌握算術運算指令的功能及其相關程序編寫;掌握邏輯運算指令的功能及其相關程序編寫;掌握控制轉移指令的功能及其相關程序編寫。技能目標通過直觀教學和教師的具體講解,培養學生的邏輯思維和抽象思維能力;培養學生歸納總結問題的能力。素質目標通過對專業入門知識的生動形象的教學,使學生對本課程的產生濃厚興趣,激發學生的學習熱情。第一PPT模板網,時尚PPT模板下載www.1ppt.co主要內容:4算術運算指令123邏輯運算指令控制轉移指令按鍵控制霓虹燈主要內容:4算術運算指令123邏輯運算指令控制轉移指令按鍵控一、算術運算指令算術運算指令(共24條)加法指令乘除指令帶借位減法指令十進制調整指令算術運算指令MSC—51的算術運算指令共有24條。MSC—51運算指令能直接執行8位數的運算,借助程序狀態字PSW中的標志可以實現多精度數的加、減運算,同時可以對壓縮的BCD(一個字節表示兩位十進制數)數進行加法運算。一、算術運算指令算術運算指令加法指令乘除指令帶借位減法指令十算術運算指令對程序狀態字(PSW)中標志的影響如表所示:指令PSW中的標志位CyOVACADD×××ADC×××INC---SUBB×××DEC---MUL0×-DIV0×-“×”表示影響該標志位,“-”表示不影響該標志位,“0”表示該標志位清零。算術運算指令對程序狀態字(PSW)中標志的影響如表所示:指令11加法指令Textinhere帶進位加法指令加“1”指令加法指令不帶進位加法指令11加法指令Text帶進位加法指令加“1”指令加法指令不帶11加法指令不帶進位加法指令(4條)匯編指令操作說明字節數機器周期ADDA,RnRn值與A值相加,結果在A中,
A←(A)+(Rn)。11ADDA,directDirect值與A值相加,結果在A中,A←(A)+(direct)。21ADDA,#data常數data與A值相加,結果在A中,A←(A)+data。21ADDA,@Ri@Ri值與A值相加,結果在A中,A←(A)+((Ri))。1111加法指令不帶進位加法指令(4條)匯編指令操作說明字節數機11加法指令不帶進位加法指令(4條)①如果第7位有進位,則Cy=1,否則Cy=0;②如果第3位有進位,則AC=1,否則AC=0;③如果第6位有進位,而第7位無進位或第6位有無進位而第7位有進位(表示有符號數相加結果超出表示范圍),則OV=0,否則OV=0。若以J7,J6表示第7,6位的進位,則OV=J7⊕J6。④相加的和存放在A中,如果結果中“1”的個數為奇數則P=1,否則P=0。指令特點:被加數總是累加器A值,相加結果保存在累加器A中。加法指令影響PSW中的標志位。兩個字節數相加時:11加法指令不帶進位加法指令(4條)①如果第7位有進位,11加法指令帶進位加法指令(4條)匯編指令操作說明字節數機器周期ADDCA,RnRn值與A值帶進位加,結果送A,A←(A)+(Rn)+(Cy)。11ADDCA,directdirect值與A值帶進位加,結果送A,A←(A)+(direct)+(Cy)。21ADDCA,#data常數data與A值帶進位加,結果送A,
A←(A)+DATA+(Cy)。21ADDCA,@RiRi間址的存儲單元中內容與A值帶進位加,結果送A,A←(A)+((Ri))+(Cy))。1111加法指令帶進位加法指令(4條)匯編指令操作說明字節數機器11加法指令帶進位加法指令(4條)指令說明帶進位位的加法指令,除兩個數相加外,還需加上進位Cy(參加最低位的運算)。帶進位位的加法指令用于多精度數的加法運算。帶進位位的加法指令對程序狀態字PSW的影響同不帶進位的加法指令。11加法指令帶進位加法指令(4條)指令說明帶進11加法指令加“1”指令(5條)匯編指令操作說明字節數機器周期INCAA值加1,A←(A)+1。11INCRnRn值加1,Rn←(Rn)+1。11INCdirectdirect值加1,direct←(direct)+1。21INC@Ri @Ri值加1,(Ri)←((Ri))+1。11INCDPTRDPTR值加1,DPTR←(DPTR)+1。1211加法指令加“1”指令(5條)匯編指令操作說明字節數機器周11加法指令加“1”指令(5條)指令說明加1指令除影響奇偶校驗位P外,不影響程序狀態字PSW中的其它標志位。INC
direct指令中直接地址direct為I/O端口Pi時,為“讀-改-寫”操作。端口數據從輸出口的鎖存器讀入,而不從引腳讀入。11加法指令加“1”指令(5條)指令說明加1指以P1口為例,如圖所示。現執行指令:INCP1則指令執行過程為:CPU發出“讀鎖存器”有效信號,將P1端口各D鎖存器當前Q端狀態通過Dx內部數據總線讀入CPU;將讀入的P1端口的八位二進制數據加1;CPU發出“寫入”信號,通過Dx內部數據總線將加1后的數據重新寫入到P1端口各D鎖存器中去。數據運算與程序轉移課件12減法指令帶借位的減法指令減法指令減“1”指令12減法指令帶借位的減減法指令減“1”指令12減法指令帶借位的減法指令(4條)12減法指令帶借位的減法指令(4條)12減法指令帶借位的減法指令(4條)指令說明
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。12減法指令帶借位的減法指令(4條)指令說明M①如果第7位有借位,則Cy=1,否則Cy=0;②如果第3位有借位,則AC=1,否則AC=0;③如果第6位有借位而第7位無借位或第6位無借位而第7位有借位則OV=0。同樣用J7,J6表示第7,6位的借位,則OV=J7⊕J6;④相減的差存放在A中,如果結果中“1”的個數為奇數,則P=1,否則P=0。指令特點:
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。減法指令影響PSW中的標志位。兩個數相減時:12減法指令帶借位的減法指令(4條)①如果第7位有借位,則Cy=1,否則Cy=0;指令特點:兩數相減時,無論兩數大小如何兩數都可直接相減,不夠減時服從向高位借1為基數的原則。這不同于我們習慣上的減法運算。同理,兩數相減后判斷OV位狀態,實際上只要將相減兩數看成有符號數(補碼數),若:正數-負數=負數或:負數-正數=正數,則相減結果一定超出8位有符號數(補碼數)表示范圍,即OV=1。指令特點:
MCS-51指令系統中沒有提供不帶借位的減法指令,但結合“CLRC”指令可先將Cy清零,然后由帶借位的指令實現不帶借位減法的功能。減法指令影響PSW中的標志位。兩個數相減時:12減法指令帶借位的減法指令(4條)兩數相減時,無論兩數大小如何兩數都可直接相減,不12減法指令減“1”指令(4條)12減法指令減“1”指令(4條)12減法指令減“1”指令(4條)指令說明減“1”指令除DECA影響奇偶標志P外,其余指令不影響PSW中的標志位;減“1”指令用于修改輸出口Pi時,進行的是“讀-改-寫”操作;DPTR沒有減1指令。12減法指令減“1”指令(4條)指令說明減“1”指令除DEC13乘除指令(2條)13乘除指令(2條)13乘除指令(2條)指令說明MUL指令實現累加器A和B寄存器中的兩個8位無符號數相乘,16位乘積的低8位放在累加器A中,高8位放在B寄存器中。如果乘積大于255(FFH,即乘積中高8位非零)時OV=1,否則OV=0。奇偶標志P仍按累加器A中“1”的奇偶性確定。進位標志清零Cy=0,不影響輔助進位標志AC。13乘除指令(2條)指令說明MUL指令實現累加二、邏輯運算指令通過上節課MCS-51單片機算術運算指令的功能及其相關程序編寫,接下來我們學習邏輯運算類指令的功能及其運算。二、邏輯運算指令通過上節課MCS-51單片機算邏輯運算指令(共24條)BECDA累加器A清零取反指令與指令或指令循環移位指令異或指令邏輯運算指令BECDA累加器A清零與指令或指令循環移位指令異邏輯運算指令中,除帶進位循環移位指令影響Cy和以PSW(direct)為目的的操作數的指令外,其余的邏輯運算指令不影響程序狀態字PSW中的狀態標志。當用邏輯運算指令修改輸出口時,進行的是“讀-改-寫”操作。邏輯運算指令中,除帶進位循環移位指令影響Cy11累加器A的清零,取反指令11累加器A的清零,取反指令12邏輯“與”運算指令(6條)邏輯“與”運算的特點是:X∧1=X;X∧0=0利用這個特點可以對某個操作數的某一位或某幾位清零。12邏輯“與”運算指令(6條)邏輯“與”運算的特點是:13邏輯“與”運算指令邏輯“或”運算的特點是:X∨1=1;
X∨0=X利用這個特點,可以對某個操作數的某一位或幾位置“1”。13邏輯“與”運算指令邏輯“或”運算的特點是:14邏輯“異與”運算指令邏輯異或運算的特點是:利用這個特點,可以對某個操作數的某一位或某幾位取反。14邏輯“異與”運算指令三、控制轉移指令通過上節課MCS-51單片機算術運算指令和邏輯運算指令的功能及其相關程序編寫,接下來我們學習控制轉移類指令的功能及其相關程序。三、控制轉移指令通過上節課MCS-51單片機算NOPJZ,JNZ,JC,JNC,JB,JNB,JBC,CJNE,DJNZAJMP,LJMP,SJMP,JMPACALL,LCALL,RET,RETI控制轉移指令(共22條)無條件轉移指令調用和返回指令條件轉移指令空操作指令NOPJZ,JNZ,JC,JNC,JB,JNB,JBC,CJ控制與轉移指令中,除“CJNE”指令對Cy有影響外,其余指令都不影響標志。控制與轉移指令可改變程序計數器PC的值,從而使程序跳到指定的目的地址開始執行。控制與轉移指令中,除“CJNE”指令對Cy有影響11無條件轉移指令11無條件轉移指令11無條件轉移指令程序執行無條件轉移指令時,程序就無條件地轉移到目的地址。無條件轉移命令間接長轉移指令短轉移指令長轉移指令絕對轉移指令11無條件轉移指令程序執行無條件轉移指令時,程序就無條件地轉11無條件轉移指令長轉移指令:LJMP
addr16指令說明指令的操作是將16位目標地址addr16裝入PC中,允許轉移的目標地址在64KB空間的任意單元,用匯編語言編寫程序時,addr16往往是一個標號。11無條件轉移指令長轉移指令:LJMPaddr16指令說明11無條件轉移指令絕對轉移指令:AJMP
addr11指令說明指令的操作是將11位的目標地址addr11裝入PC中的低11位。要求目標地址的高5位與PC+2后PC中的高5位相同。即轉移的目標地址必須和AJMP指令的下一條指令首字節地址位于程序存儲器的同一段2KB字節范圍內,編寫程序時,addr11也往往是一個標號。11無條件轉移指令絕對轉移指令:AJMPaddr11指令說11無條件轉移指令短轉移指令:SJMP
reL指令說明指令中相對偏移量ret為8位的補碼,將其符號擴展為16位后與PC相加得到16位的目標地址。轉移的范圍為-128-+127字節,編寫程序時,ret同樣往往是一個標號。MCS—51沒有專用的停機指令,若要動態停機(原地循環等待)可以用SJMP指令來實現:11無條件轉移指令短轉移指令:SJMPreL指令說明11無條件轉移指令短轉移指令:SJMP
reL指令說明動態停機指令:LP1:SJMP
LP1
或寫成:SJMP
$
$表示本指令首字節所在單元的地址,使用本可省略標號。11無條件轉移指令短轉移指令:SJMPreL指令說明動態停11無條件轉移指令間接長轉移指令:JMP
@A+DPTR指令說明轉移目標地址由數據指針DPTR和累加器A(8位無符號數)相加而得。指令的執行不影響累加器A和數據指令DPTR。該指令的特點是轉移地址可以在程序運行中加以改變。例如:DPTR做為基地址。根據A的不同值可以實現多分支轉移,因此一條指令可以完成多分支轉移的功能。該功能稱之為散轉功能。間接長轉移指令又稱為散轉指令。11無條件轉移指令間接長轉移指令:JMP@A+DPTR指12條件轉移指令條件轉移指令的操作是判斷指定的條件,如果條件滿足則轉移,不滿足則順序執行。JC,JNC,JB,JNB,JBCDJNZJZ,JNZCJNE條件轉移指令(共13條)判斷A是否為零轉移指令比較不等轉移指令減“1”循環轉移指令位條件轉移指令12條件轉移指令條件轉移指令的操作是判斷指定的12條件轉移指令判斷累加器是否為零轉移指令(2條)12條件轉移指令判斷累加器是否為零轉移指令(2條)12條件轉移指令位條件轉移指令(5條)12條件轉移指令位條件轉移指令(5條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)12條件轉移指令比較不等轉移指令(4條)指令說明比較不等轉移指令的功能是比較兩個數,若兩者不相等則轉移,相等則順序執行。如果第二個操作數(無符號數)大于第一個操作數(無符號數),則Cy置1,否則Cy清零。指令的執行不影響操作數。12條件轉移指令比較不等轉移指令(4條)指令說明12條件轉移指令減1循環指令
當direct為端口地址P0—P3時,“DJNZdirect,rel”為“讀—改—寫”指令。12條件轉移指令減1循環指令當direct四、按鍵控制霓虹燈隨著電子技術及單片機技術的發展,霓虹燈產品變得花樣繁多、豐富多彩。本項目要求編寫兩種霓虹燈閃爍的程序,每一種由一只按鍵控制啟動,用LED模擬霓虹燈,完成硬件電路及程序設計。霓虹燈控制效果要求如下:①無按鍵按下時,8只LED均不亮;②若接SW1鍵時,LED1亮;接SW3鍵時,LED1滅;③若按SW2鍵時,8只LED自上向下輪流點亮,每只LED點亮時間為0.5S;按下SW3鍵時,全部不亮。四、按鍵控制霓虹燈隨著電子技術及單片機技術的發11項目分析根據項目要求,應該設計的電路有基本電路、顯示電路和鍵盤輸入電路。基本電路和顯示電路與前述項目相同,本項目中的設計重點是鍵盤輸入電路。鍵盤是計算機控制不可缺少的輸入設備,是實現人機對話的紐帶。按鍵的電路如圖(a)所示。當按鍵SW未被按下時,A點為高電平;按下按鍵SW,開關閉合,A點為低電平,通過檢測A點的電平高、低,便可確定按鍵按下與否。11項目分析根據項目要求,應該設計的電路有基本當接鍵接通或斷開時,由于機械觸點的彈性作用,使得觸點不能一次接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 IEC 60115-2-10:2023 EN-FR Fixed resistors for use in electronic equipment - Part 2-10: Blank detail specification: Low-power film resistors with leads for through-hole assem
- 2025至2030中國電鋅板行業深度研究及發展前景投資評估分析
- 2025至2030中國特種建材行業發展分析及競爭策略與趨勢預測報告
- 醫療知識更新中的學習動力策略
- 企業內部管理與智慧零售技術融合策略研究
- 大五人格學習路徑與現代教學技術的結合研究
- 教育科技與學生學習動機的激發
- 創新教育心理學在校園中的應用
- 學生情商與心理健康教育的結合點探討
- 開車安全培訓課件
- 出口空運知識培訓課件
- 視頻監控系統維護保養方案
- 《DNS域名解析原理》課件
- 《慢性阻塞性肺疾病的診斷與治療》課件
- 衛生院用電安全知識培訓
- 七八年級的英語單詞
- 舞臺使用合同范例
- 2024年面向社會公開招聘警務輔助人員報名信息表
- 《地區智能電網調度技術支持系統應用功能規范》
- 2024中國類風濕關節炎診療指南
- 11294營銷管理-國家開放大學2023年1月至7月期末考試真題及答案(共2套)
評論
0/150
提交評論