[工學]第3章MCS-51單片機的指令系統(tǒng)ppt課件_第1頁
[工學]第3章MCS-51單片機的指令系統(tǒng)ppt課件_第2頁
[工學]第3章MCS-51單片機的指令系統(tǒng)ppt課件_第3頁
[工學]第3章MCS-51單片機的指令系統(tǒng)ppt課件_第4頁
[工學]第3章MCS-51單片機的指令系統(tǒng)ppt課件_第5頁
已閱讀5頁,還剩83頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 第3章 MSC-51單片機的指令系統(tǒng)總體要求:總體要求: 熟練掌握熟練掌握MCS-51MCS-51單片機匯編言語的指令格式單片機匯編言語的指令格式 熟練掌握熟練掌握MCS-51MCS-51單片機指令的尋址方式單片機指令的尋址方式 了解機器言語指令格式了解機器言語指令格式 掌握掌握MCS-51MCS-51指令系統(tǒng)的分類、符號商定和常指令系統(tǒng)的分類、符號商定和常用指令用指令 可以獨立完本錢章作業(yè)可以獨立完本錢章作業(yè)學習重點:學習重點: MCS-51 MCS-51單片機的指令格式和尋址方式單片機的指令格式和尋址方式 MCS-51 MCS-51指令系統(tǒng)中各條指令的助記符格式、指令系統(tǒng)中各條指令的助記

2、符格式、 功能等特性功能等特性第第3 3章章 MCS-51 MCS-51單片機的指令系統(tǒng)單片機的指令系統(tǒng) 第3章 MSC-51單片機的指令系統(tǒng)3.1 3.1 指令格式和尋址方式指令格式和尋址方式3.2 3.2 指令系統(tǒng)指令系統(tǒng)2 第3章 MSC-51單片機的指令系統(tǒng)3.1 3.1 指令格式和尋址方式指令格式和尋址方式3.1.1 3.1.1 指令格式指令格式 MCS-51 MCS-51單片機的指令和普通的微型單片機的指令和普通的微型計算機一樣,具有兩級方式:匯編言語計算機一樣,具有兩級方式:匯編言語級和機器言語級。對用戶而言,主要運級和機器言語級。對用戶而言,主要運用匯編言語來編寫程序,然后由匯

3、編程用匯編言語來編寫程序,然后由匯編程序機器匯編或手工匯編將匯編言語序機器匯編或手工匯編將匯編言語源程序翻譯成二進制代碼組成的機器言源程序翻譯成二進制代碼組成的機器言語程序。匯編言語的特點是對每一條指語程序。匯編言語的特點是對每一條指令都給出了助記符。由于助記符具有用令都給出了助記符。由于助記符具有用英文單詞的縮寫來描畫指令的特征,因英文單詞的縮寫來描畫指令的特征,因此它不但便于記憶,也便于了解和分類。此它不但便于記憶,也便于了解和分類。 第3章 MSC-51單片機的指令系統(tǒng) 1. 匯編言語指令格式 MCS-51單片機匯編言語指令格式為: 標號: 操作碼 操作數(shù) ;注釋 各字段之間用規(guī)定的符號

4、隔開。方括號的部分為可選項。 例如:LOOP:MOV A,54H ;A54H 各字段的意義如下: 標號:標號給出了該指令位置的符號地址,即該指令機器代碼存儲單元的地址。它是以英文字母開場的由18個字母或數(shù)字組成的字符串,并以“:終了。 操作碼:操作碼部分給出了指令所實現(xiàn)的操作功能。操作碼用助記符的方式給出。 第3章 MSC-51單片機的指令系統(tǒng) 操作數(shù):操作數(shù)部分給出了指令中參與操作的對象。操操作數(shù):操作數(shù)部分給出了指令中參與操作的對象。操作數(shù)普通分為目的操作數(shù)上例中累加器作數(shù)普通分為目的操作數(shù)上例中累加器A和源操作數(shù)上和源操作數(shù)上例中的例中的54H,兩者之間用,兩者之間用“,分隔。任何指令的

5、操作都,分隔。任何指令的操作都是實現(xiàn)是實現(xiàn)“從源操作數(shù)到目的操作數(shù),因此,目的操作數(shù)和源從源操作數(shù)到目的操作數(shù),因此,目的操作數(shù)和源操作數(shù)的書寫順序不能顛倒。需求指出的是:也有些指令根操作數(shù)的書寫順序不能顛倒。需求指出的是:也有些指令根據(jù)其功能只指明了一個操作數(shù)或不需求指明操作數(shù)。據(jù)其功能只指明了一個操作數(shù)或不需求指明操作數(shù)。 注釋:注釋部分是用戶為方便閱讀而加的注釋。注釋以注釋:注釋部分是用戶為方便閱讀而加的注釋。注釋以“;為開場。注釋部分對匯編言語來講可有可無,它不參與計為開場。注釋部分對匯編言語來講可有可無,它不參與計算機的操作,不影響指令的執(zhí)行。算機的操作,不影響指令的執(zhí)行。 例如:例

6、如: MOV A,00H ;將累加器清;將累加器清0 第3章 MSC-51單片機的指令系統(tǒng) . 機器言語指令格式 機器言語指令是一種二進制碼,包括操作碼和操作數(shù)。操作碼規(guī)定了該指令操作的性質(zhì),操作數(shù)那么闡明了操作的對象。MCS-51的指令系統(tǒng)有單字節(jié)、雙字節(jié)和三字節(jié)這三種方式的指令,分別占有13個存儲單元。 (1) 單字節(jié)指令:如 RETI對應的機器言語指令格式為: (2) 雙字節(jié)指令: 如 MOV A,54H對應的機器言語指令格式為: 00110010B (32H) 操作碼 01110100B (74H)操作碼01010100B (54H)操作數(shù) 第3章 MSC-51單片機的指令系統(tǒng) (3)

7、 三字節(jié)指令:如MOV 30H,54H對應的機器言語指令格式為:01110101 B (75H)操作碼00110000 B (30H)目的操作數(shù)01010100B (54H)源操作數(shù) 單字節(jié)指令的操作碼本身就隱含了操作數(shù)的信息;普通情況下,雙字節(jié)指令的首字節(jié)為操作碼,第二字節(jié)為操作數(shù)或操作數(shù)的地址;三字節(jié)指令的首字節(jié)為操作碼,后面兩個字節(jié)為操作數(shù)或操作數(shù)的地址。指令字節(jié)越多,所占內(nèi)存單元越多,但執(zhí)行時間的長短只取決于執(zhí)行該指令需求多少個機器周期。 第3章 MSC-51單片機的指令系統(tǒng)3.1.2 3.1.2 尋址方式尋址方式 在指令系統(tǒng)中,操作數(shù)是一個重要的組成部分,它在指令系統(tǒng)中,操作數(shù)是一個

8、重要的組成部分,它指定了參與運算的數(shù)或數(shù)所在的地址單元。如何找到操指定了參與運算的數(shù)或數(shù)所在的地址單元。如何找到操作數(shù)地址的方式就稱為尋址方式。尋址方式就是在規(guī)定作數(shù)地址的方式就稱為尋址方式。尋址方式就是在規(guī)定的地址范圍內(nèi)如何靈敏地、方便地找到所需求的操作數(shù)的地址范圍內(nèi)如何靈敏地、方便地找到所需求的操作數(shù)地址。地址。 MCS-51 MCS-51單片機指令操作數(shù)或操作數(shù)地址主要有以下單片機指令操作數(shù)或操作數(shù)地址主要有以下7 7種尋址方式。種尋址方式。 第3章 MSC-51單片機的指令系統(tǒng)9 1. 立刻尋址 立刻尋址就是在指令中的操作數(shù)8位或16位,這個操作數(shù)稱為立刻數(shù)。用符號“表示立刻數(shù),以區(qū)別

9、直接地址。 例如:MOV A,3AH ;A3AH 功能:把3AH這個數(shù)送入累加器A中。 例如:MOV DPTR,0123H ;DPTR0123H 功能:將數(shù)據(jù)指針DPTR傳送16位的立刻數(shù),立刻數(shù)的高8位送入DPH中,低8位送入DPL中。此為三字節(jié)的指令,指令代碼為90H、01H、23H。立刻尋址表示圖如圖3-1所示。 第3章 MSC-51單片機的指令系統(tǒng) aMOV A,#3AH bMOV DPTR,#0123H 圖3-1 立刻尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng)2. 2. 直接尋址直接尋址 直接尋址就是在指令中直接給出了操作數(shù)的地址。直接尋址就是在指令中直接給出了操作數(shù)的地址。提

10、供了訪問內(nèi)部數(shù)據(jù)存儲器提供了訪問內(nèi)部數(shù)據(jù)存儲器3 3種地址空間的方法:可以種地址空間的方法:可以訪問內(nèi)部訪問內(nèi)部RAM128RAM128個字節(jié)單元、個字節(jié)單元、221221個位地址空間以及特個位地址空間以及特殊功能存放器殊功能存放器SFRSFR,且,且SFRSFR和位地址空間只能用直接尋址和位地址空間只能用直接尋址的方式來訪問。的方式來訪問。 例如:例如:MOV AMOV A,70H70H;A(70H)A(70H) 功能:把片內(nèi)功能:把片內(nèi)RAM 70HRAM 70H單元的內(nèi)容送入累加器單元的內(nèi)容送入累加器A A中,中,圖圖3-23-2示。示。 第3章 MSC-51單片機的指令系統(tǒng)12圖3-2

11、 直接尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng)3. 3. 存放器尋址存放器尋址 存放器尋址是在指令中指定某一存放器的內(nèi)容為操存放器尋址是在指令中指定某一存放器的內(nèi)容為操作數(shù)。對累加器作數(shù)。對累加器A A、通用存放器、通用存放器B B、數(shù)據(jù)指針存放器、數(shù)據(jù)指針存放器DPTRDPTR和進位位和進位位CYCY,其尋址時詳細的存放器已隱含在其操作碼,其尋址時詳細的存放器已隱含在其操作碼中,而對選定的中,而對選定的8 8個任務存放器個任務存放器R0R0R7R7那么用操作碼的低那么用操作碼的低三位指明所用的存放器。用戶可用三位指明所用的存放器。用戶可用PSWPSW中的中的RS1RS1、RS0RS0

12、來選來選擇存放器組擇存放器組 。 例如:例如:MOV AMOV A,R5R5;AR5AR5 功能:把功能:把R5R5中的內(nèi)容設中的內(nèi)容設R5R561H61H送入累加器送入累加器A A中。中。該指令執(zhí)行過程如圖該指令執(zhí)行過程如圖3-33-3所示。所示。 第3章 MSC-51單片機的指令系統(tǒng)圖3-3 存放器尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng) 4. 存放器間接尋址 存放器間接尋址是把指令中指定的存放器的內(nèi)容作為操作數(shù)的地址,把該地址單元的內(nèi)容作為操作數(shù)。這種尋址方式用于訪問內(nèi)部RAM和外部RAM??捎脕黹g接尋址的存放器有R0、R1、堆棧指針SP以及16位的數(shù)據(jù)指針DPTR,運用時前面加

13、符號表示間接尋址。 例如:MOV A,R1 ;A(R1) 其指令代碼方式為11100111,十六進制為E7H,留意最低位為1,表示如今運用的存放器為 R1。現(xiàn)假設任務存放器為第0組,R1中存放的是75H。那么執(zhí)行該指令過程如圖3-4所示。 第3章 MSC-51單片機的指令系統(tǒng)圖3-4 存放器間接尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng) 5. 變址尋址變址尋址變址尋址是以某個存放器的內(nèi)容為基地址,然后在變址尋址是以某個存放器的內(nèi)容為基地址,然后在這個基地址的根底上加上地址偏移量構成真正的操作數(shù)這個基地址的根底上加上地址偏移量構成真正的操作數(shù)地址地址MCS-51單片機可由單片機可由DPTR

14、或或PC作為基址存放器,作為基址存放器,由累加器由累加器A作為偏移量存放器。這種尋址方式常用于查作為偏移量存放器。這種尋址方式常用于查表操作。表操作。 例如:例如:MOVC A,A+DPTR ;A(A+DPTR) 功能:把功能:把DPTR中的內(nèi)容和中的內(nèi)容和A中的內(nèi)容相加作為中的內(nèi)容相加作為16位的位的程序存儲器地址,再把該地址對應單元的內(nèi)容送入累加程序存儲器地址,再把該地址對應單元的內(nèi)容送入累加器器A中。執(zhí)行該指令過程如圖中。執(zhí)行該指令過程如圖3-5所示。所示。17 第3章 MSC-51單片機的指令系統(tǒng)圖3-5 變址尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng)6. 6. 相對尋址相對尋址

15、相對尋址用于轉(zhuǎn)移指令的操作,將程序計數(shù)器相對尋址用于轉(zhuǎn)移指令的操作,將程序計數(shù)器PCPC中中的當前值相對轉(zhuǎn)移指令后的字節(jié)地址與指令第二字的當前值相對轉(zhuǎn)移指令后的字節(jié)地址與指令第二字節(jié)給出的偏移量相加,將其結果作為轉(zhuǎn)移指令的目的地節(jié)給出的偏移量相加,將其結果作為轉(zhuǎn)移指令的目的地址。指令第二字節(jié)給出的偏移量有正負號,在指令中以址。指令第二字節(jié)給出的偏移量有正負號,在指令中以補碼方式給出,轉(zhuǎn)移的范圍在補碼方式給出,轉(zhuǎn)移的范圍在-128-128+127+127之間。之間。 例如;例如;JZ 30HJZ 30H ;A A0 0條件成立轉(zhuǎn)移條件成立轉(zhuǎn)移 功能:假設功能:假設A0A0,不跳轉(zhuǎn)繼續(xù)執(zhí)行下一條指

16、令;假,不跳轉(zhuǎn)繼續(xù)執(zhí)行下一條指令;假設設A A0 0,那么以,那么以PCPC中的當前值為基地址,加上偏移量中的當前值為基地址,加上偏移量30H30H后所得到的結果為該轉(zhuǎn)移指令的目的地址,從而實現(xiàn)程后所得到的結果為該轉(zhuǎn)移指令的目的地址,從而實現(xiàn)程序的轉(zhuǎn)移。序的轉(zhuǎn)移。 第3章 MSC-51單片機的指令系統(tǒng) 設該指令存放于0100H、0101H單元,取出指令后,PC當前值為0102H;對A進展判別,假設A0,那么PC內(nèi)容與偏移量30H相加,得到轉(zhuǎn)移目的地址0132H。故執(zhí)行完該指令后,PC中的值為0132H,程序從0132H處開場執(zhí)行。執(zhí)行過程如圖3-6所示。20 第3章 MSC-51單片機的指令系

17、統(tǒng)圖3-6 相對尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng) 在實踐任務中,有時要根據(jù)知源地址和目的地址計算偏移量rel?,F(xiàn)以兩字節(jié)相對轉(zhuǎn)移指令為例討論偏移量rel的計算。 正向跳轉(zhuǎn):rel目的地址-源地址-2地址差-2 目的地址小于源地址,rel用負數(shù)的補碼表示。 反向跳轉(zhuǎn):rel(目的地址-源地址-2)補 (目的地址-(源地址+2) 第3章 MSC-51單片機的指令系統(tǒng) 7. 7. 位尋址位尋址位尋址是指對片內(nèi)位尋址是指對片內(nèi)RAMRAM的位尋址區(qū)和某些有位地址的的位尋址區(qū)和某些有位地址的特殊功能存放器進展位操作時的尋址方式。位地址與直特殊功能存放器進展位操作時的尋址方式。位地址與直接

18、尋址中的字節(jié)地址方式完全一樣,主要由操作碼來區(qū)接尋址中的字節(jié)地址方式完全一樣,主要由操作碼來區(qū)分。分。 例如:例如:MOV CMOV C,07H07H 功能:把內(nèi)部功能:把內(nèi)部RAM 20HRAM 20H單元的單元的D7D7位位地址為位位地址為07H07H的內(nèi)容傳到位累加器的內(nèi)容傳到位累加器C C即即CYCY中,其操作過程如圖中,其操作過程如圖3-73-7所示。所示。 23 第3章 MSC-51單片機的指令系統(tǒng)圖3-7 位尋址表示圖 第3章 MSC-51單片機的指令系統(tǒng)3.2 3.2 指令系統(tǒng)指令系統(tǒng) MCS-51 MCS-51單片機共有單片機共有111111條指令,按字條指令,按字節(jié)數(shù)分類,

19、單字節(jié)指令節(jié)數(shù)分類,單字節(jié)指令4949條,雙字節(jié)指令條,雙字節(jié)指令4545條,三字節(jié)指令條,三字節(jié)指令1717條;按執(zhí)行時間分類,條;按執(zhí)行時間分類,單機器周期指令單機器周期指令6464條,雙機器周期指令條,雙機器周期指令4545條,只需乘法和除法指令占用四個機器周條,只需乘法和除法指令占用四個機器周期。假設系統(tǒng)時鐘為期。假設系統(tǒng)時鐘為12MHz12MHz,大多數(shù)指令,大多數(shù)指令執(zhí)行時間僅需執(zhí)行時間僅需1s1s;按功能分類可劃分為;按功能分類可劃分為五類:五類: (1) (1) 數(shù)據(jù)傳送類指令數(shù)據(jù)傳送類指令2828條;條; (2) (2) 算術運算類指令算術運算類指令2424條;條; (3)

20、(3) 邏輯操作類指令邏輯操作類指令2525條;條; (4) (4) 控制轉(zhuǎn)移類指令控制轉(zhuǎn)移類指令1717條;條; (5) (5) 位操作類指令位操作類指令1717條。條。 第3章 MSC-51單片機的指令系統(tǒng)在匯編言語指令中,商定采用以下符號: Rnn=17指定當前選中的任務存放器組中名為R0R7的任務存放器,被選中的任務存放器組由PSW中RS0、RS1確定。 Rii=0、1指定當前選中的任務存放器組中可作為地址指針的兩個任務存放器R0、R1。 data 代表8位立刻數(shù),包含在指令中的8位常數(shù)。 data16 代表16位立刻數(shù),即包含在指令中的16位常數(shù)。 direct 代表8位片內(nèi)RAM單

21、元的直接地址。 addr11 代表11位目的地址。用于ACALL 和AJMP指令中,目的地址必需在下一條指令第一個字節(jié)同一2K字節(jié)程序存儲器地址空間內(nèi)。 第3章 MSC-51單片機的指令系統(tǒng) addr16 代表16位目的地址。用于LCALL和LJMP指令中,目的地址在64K程序存儲器地址空間內(nèi)。 rel 指定補碼方式的8位地址偏移量。用于相對轉(zhuǎn)移指令中,偏移量以下一條指令第一字節(jié)地址為基址,地址偏移量范圍為-128+127。 bit 代表片內(nèi)RAM或SFR可直接尋址的位地址。 間接尋址方式中,表示間址存放器的符號。 / 位操作指令中,表示先對該位求反再參與操作,但不影響該位原值。 () 表示由

22、所指地址單元中的內(nèi)容。 指令操作流程,將箭頭右邊的內(nèi)容送到箭頭左邊的單元中。 $ 指本條指令的起始地址 第3章 MSC-51單片機的指令系統(tǒng)3.2.1 3.2.1 數(shù)據(jù)傳送類指令數(shù)據(jù)傳送類指令 傳送類指令主要用于數(shù)據(jù)傳送、保管以及交換等傳送類指令主要用于數(shù)據(jù)傳送、保管以及交換等場所。場所。 數(shù)據(jù)傳送指令除經(jīng)過累加器進展數(shù)據(jù)傳送之外,還可數(shù)據(jù)傳送指令除經(jīng)過累加器進展數(shù)據(jù)傳送之外,還可以是數(shù)據(jù)存儲器之間或任務存放器與數(shù)據(jù)存儲器之間進展以是數(shù)據(jù)存儲器之間或任務存放器與數(shù)據(jù)存儲器之間進展數(shù)據(jù)傳送。它普通是把源操數(shù)傳送到目的操作數(shù),指令執(zhí)數(shù)據(jù)傳送。它普通是把源操數(shù)傳送到目的操作數(shù),指令執(zhí)行后源操作數(shù)不變

23、,目的操作數(shù)修正為源操作數(shù)。此類指行后源操作數(shù)不變,目的操作數(shù)修正為源操作數(shù)。此類指令普通不影響標志位,只需堆棧操作可以直接修正程序形令普通不影響標志位,只需堆棧操作可以直接修正程序形狀字狀字PSWPSW。另外,對目的操作數(shù)為累加器。另外,對目的操作數(shù)為累加器A A的指令將影響奇的指令將影響奇偶標志偶標志P P位。位。 數(shù)據(jù)傳送類指令用到的助記符有數(shù)據(jù)傳送類指令用到的助記符有MOVMOV、MOVCMOVC、MOVXMOVX、XCHXCH、XCHDXCHD、SWAPSWAP、PUSHPUSH、POPPOP共共8 8種。源操作數(shù)可以種。源操作數(shù)可以采用存放器、存放器間接、直接、立刻、變址采用存放器

24、、存放器間接、直接、立刻、變址5 5種尋址方式,種尋址方式,目的操作數(shù)采用前三種尋址方式。目的操作數(shù)采用前三種尋址方式。 第3章 MSC-51單片機的指令系統(tǒng)1. 對內(nèi)部RAM和SFR的普通數(shù)據(jù)傳送指令15條 (1) 以累加器A為目的操作數(shù)的指令4條 功能:把源操作數(shù)指定的內(nèi)容送入累加器A中。運用存放器尋址、直接尋址、存放器間接尋址和立刻尋址4種尋址方式。 MOV A,Rn ;ARn MOV A,direct ; A(direct) MOV A,Ri ; A(Ri) MOV A,data ; Adata 第3章 MSC-51單片機的指令系統(tǒng) (2) 以存放器Rn為目的操作數(shù)的指令3條 功能:把

25、源操作數(shù)指定的內(nèi)容送到所選定的任務存放器Rn中。運用存放器尋址、直接尋址和立刻尋址3種尋址方式。 MOV Rn ,A ; RnA MOV Rn ,direct ; Rn(direct ) MOV Rn ,data ; Rndata 第3章 MSC-51單片機的指令系統(tǒng) (3) 以直接地址為目的操作數(shù)的指令5條 功能:把源操作數(shù)指定的內(nèi)容送到由直接地址direct所指定的片內(nèi)RAM中。運用存放器、直接、存放器間接和立刻4種尋址方式。 MOV direct,A ;(direct) A MOV direct,Rn ;(direct )Rn MOV direct1,direct2 ;(direct1)

26、(direct2) MOV direct, Ri ; (direct) (Ri) MOV direct,data ; (direct) data 第3章 MSC-51單片機的指令系統(tǒng) (4) 以間接地址為目的操作數(shù)的指令3條 功能:把源操作數(shù)指定的內(nèi)容送到以Ri中的內(nèi)容為地址的片內(nèi)RAM中。運用存放器、直接和立刻3種尋址方式。 MOV Ri,A ;(Ri)A MOV Ri,direct ;(Ri)(direct) MOV Ri,# data ;(Ri)data 第3章 MSC-51單片機的指令系統(tǒng)例3.1 利用直接尋址把立刻數(shù)32H送到內(nèi)部RAM的20H單元。 MOV 20H,32H 例3.2

27、 利用存放器間接尋址把立刻數(shù)32H送入內(nèi)部RAM的20H單元。 MOV R0,20H MOV R0,32H 例3.3 利用直接尋址把P1口的內(nèi)容傳送到P3口。 MOV P3,P1 例3.4 利用存放器間接尋址把累加器A的內(nèi)容傳送到外部數(shù)據(jù)存儲器4000H單元。 MOV DPTR,4000H MOVX DPTR,A 第3章 MSC-51單片機的指令系統(tǒng)2. 累加器與程序存儲器的傳送指令2條 功能:對存放于程序存儲器中的表格數(shù)據(jù)進展查找傳送。運用變址尋址方式。MOVC A,A+DPTR ;A(A+DPTR)MOVC A,A+PC ;A(A+PC) 3. 累加器與片外RAM傳送指令4條功能:累加器A

28、與片外RAM間的相互傳送。片外擴展的I/O口與片外RAM是一致編址的,故以下4條指令也可以作為輸入/輸出指令。其運用存放器間接尋址方式。MOVX A, DPTR ;A(DPTR) 或讀I/O線MOVX DPTR,A ;(DPTR)A 或?qū)慖/O線MOVX A,Ri ; A (Ri) 或讀I/O線MOVX Ri,A ;(Ri) A 或?qū)慖/O線 第3章 MSC-51單片機的指令系統(tǒng)4. 堆棧操作類指令2條 功能:把直接尋址單元的內(nèi)容傳送到堆棧指針SP所指的單元中,以及把SP所指單元的內(nèi)容送到直接尋址單元。 PUSH direct ; SPSP+1 (SP)(direct) POP direct

29、; SPSP-1 (direct)(SP) 前一條指令稱為入棧指令,后一條指令稱為出棧指令,51機復位后,(SP)=07H,為防止與任務存放器組發(fā)生沖突,普通需重新設定SP的初始值。由于壓入堆棧的第一個數(shù)必需存放在SP+1所指存儲單元,故實踐的棧底為SP+1所指存儲單元。 第3章 MSC-51單片機的指令系統(tǒng) 例3.5 設(10H)01H,(20H)1AH。將內(nèi)部RAM 10H與20H單元的內(nèi)容交換。 MOVSP,30H PUSH10H ;10H單元內(nèi)容進棧 PUSH20H ;20H單元內(nèi)容進棧 POP10H ;將棧頂元素彈出,送往10H單元 POP20H ;下一個元素出棧,送20H 單元 執(zhí)

30、行結果:(10H)1AH,(20H)01H 第3章 MSC-51單片機的指令系統(tǒng) 例3.6 根據(jù)累加器A中的數(shù)(09)查平方表的子程序。 COUNT:PUSHDPH;維護DPTR內(nèi)容 PUSHDPL MOVDPTR,TABLE ;賦表首址 MOVCA,A+DPTR ;查表并傳送給A POPDPL;恢復DPTR原值 POPDPH RET;前往主程序控制 TABLE:DB 00,01,04,09,16,25 DB 36,49,64,81 第3章 MSC-51單片機的指令系統(tǒng) 5. 交換指令4條 功能:把累加器A中的內(nèi)容與源操作數(shù)所指出的數(shù)據(jù)相互交換。運用存放器、直接和存放器間接3種尋址方式。 XC

31、HA,Rn ;ARn XCHA,direct ;A(direct ) XCHA,Ri ;A(Ri) XCHDA,Ri ;A30(Ri)30 6. 16位數(shù)據(jù)傳送類指令1條 MOV DPTR,data16 功能:把16位常數(shù)送入數(shù)據(jù)指針存放器。運用立刻尋址方式。譯成機器碼時,高位字節(jié)在前,低位字節(jié)在后。 第3章 MSC-51單片機的指令系統(tǒng)3.2.2 3.2.2 算術運算類指令算術運算類指令算術運算類指令主要完成加、減、乘、除四那么運算,算術運算類指令主要完成加、減、乘、除四那么運算,以及加以及加1 1、減、減1 1和和BCDBCD碼的運算、調(diào)整等。除加碼的運算、調(diào)整等。除加1 1、減、減1 1

32、運算外,運算外,這類指令大多數(shù)都要影響到程序形狀字存放器這類指令大多數(shù)都要影響到程序形狀字存放器PSWPSW。雖然算術邏輯單元雖然算術邏輯單元ALUALU僅能對僅能對8 8位無符號整數(shù)進展運算,但位無符號整數(shù)進展運算,但利用進位標志利用進位標志CYCY,可進展多字節(jié)無符號整數(shù)的運算;利用,可進展多字節(jié)無符號整數(shù)的運算;利用溢出標志,還可方便地對帶符號數(shù)進展補碼運算。算術運溢出標志,還可方便地對帶符號數(shù)進展補碼運算。算術運算類指令用到的助記符有:算類指令用到的助記符有:ADDADD、ADDCADDC、SUBBSUBB、INCINC、DECDEC、DADA、MULMUL和和DIVDIV八種。八種。

33、 第3章 MSC-51單片機的指令系統(tǒng)40 1. 加法指令4條 ADD A,data ;AA+data ADD A,direct ;AA +(direct) ADD A,Ri ;AA+(Ri) ADD A,Rn ;AA+Rn 以上指令把立刻數(shù)、直接地址、間接地址以及任務存放器的內(nèi)容與累加器A中內(nèi)容相加,結果送入A中。 第3章 MSC-51單片機的指令系統(tǒng) 例3.7 A0C3H,R00AAH,執(zhí)行ADD A,R0指令,那么操作如下: 11000011 ) 10101010 101101101 運算后,CY1,OV1,AC0,P1,A6DH。 上例中假設C3H和AAH看作無符號數(shù)相加,那么不思索溢

34、出,結果為15DH;假設把C3H和AAH看作有符號數(shù),那么得到2個負數(shù)相加得正數(shù)的錯誤結論,此時OV1,表示出錯。 第3章 MSC-51單片機的指令系統(tǒng) 2. 帶進位加法指令4條 ADDC A,data ;AA+data+CY ADDC A,direct ;AA+(direct)+CY ADDC A,Ri ;AA+(Ri)+CY ADDC A,Rn ;AA+Rn+CY 以上指令除了需思索進位位外,和前面的普通加法指令完全一樣。 第3章 MSC-51單片機的指令系統(tǒng) 例3.8 A0AEH,R081H,CY1,執(zhí)行 ADDC A,R0指令,那么操作如下: 10101110 10000001 ) 1

35、 100110000 運算后,CY=1,OV=1,AC=1,P=0,A=30H。 第3章 MSC-51單片機的指令系統(tǒng)44 例3.9 利用ADDC指令進展雙字節(jié)加法運算。 設在雙字節(jié)加法運算中,被加數(shù)存放在30H、31H單元,加數(shù)放在40H、41H單元,和存放到50H、51H單元,編程如下: MOV A,30H ;取低字節(jié)被加數(shù) ADD A,40H ;低位字節(jié)相加 MOV 50H,A ;結果送50H單元 MOV A,31H ;取高字節(jié)被加數(shù) ADDC A,41H ;加高字節(jié)和低位來的進位 MOV 51H,A ;結果送51H單元 第3章 MSC-51單片機的指令系統(tǒng) 3. 3. 帶借位減法指令帶

36、借位減法指令4 4條條 SUBB A SUBB A,data data ;AA-data-CYAA-data-CY SUBB A SUBB A,direct direct ;AA-(direct)-CYAA-(direct)-CY SUBB A SUBB A,Ri Ri ;AA-(Ri)-CYAA-(Ri)-CY SUBB A SUBB A, Rn Rn ;AA-Rn-CYAA-Rn-CY 以上指令把立刻數(shù)、直接地址、間接地址及任務存以上指令把立刻數(shù)、直接地址、間接地址及任務存放器的內(nèi)容和借位位放器的內(nèi)容和借位位CYCY與累加器與累加器A A中內(nèi)容相減,結果送回中內(nèi)容相減,結果送回A A中。中

37、。 OV OV1 1表示帶符號數(shù)相減時,從一個正數(shù)中減去一個表示帶符號數(shù)相減時,從一個正數(shù)中減去一個負數(shù)結果為負數(shù),或從一個負數(shù)中減去一個正數(shù)結果為負數(shù)結果為負數(shù),或從一個負數(shù)中減去一個正數(shù)結果為正數(shù)的錯誤情況。正數(shù)的錯誤情況。 第3章 MSC-51單片機的指令系統(tǒng) 例3.10 AC9H,R354H,CY1,執(zhí)行指令 SUBB A,R3,那么操作如下: 11001001 01010100 ) 1 01110100 運算后,CY=0,AC=0,OV=1,P=0,A=74H。 留意:在進展單字節(jié)或多字節(jié)減法的低位運算前,要保證借位標志位CY的值為0,故在進展運算前要對CY清0。 第3章 MSC-5

38、1單片機的指令系統(tǒng)47 例3.11 利用SUBB指令進展雙字節(jié)的減法運算。 設被減數(shù)存放在30H、31H單元中,減數(shù)存放在40H、41H單元中,差存在50H、51H單元中。編程如下: MOVA,30H ;被減數(shù)低字節(jié)送A CLRC ;低字節(jié)減無借位CY清0 SUBBA,40H ;低位字節(jié)相減 MOV50H,A ;結果送50H單元 MOVA,31H ;被減數(shù)高字節(jié)送A SUBBA,41H;高字節(jié)相減 MOV51H,A ;結果送51H單元 第3章 MSC-51單片機的指令系統(tǒng) 4. 4. 乘法指令乘法指令1 1條條 MUL AB MUL AB ; BAA BAAB B 功能:將累加器功能:將累加器

39、A A和存放器和存放器B B中的中的8 8位無符號整數(shù)相乘,位無符號整數(shù)相乘,所得所得1616位乘積的低位乘積的低8 8位存放在位存放在A A中,高中,高8 8位存放在位存放在B B中。假中。假設乘積大于設乘積大于FFHFFH,那么溢出標志,那么溢出標志OVOV為為1 1,否那么為,否那么為0 0,乘法,乘法運算總使進位標志運算總使進位標志CY=0CY=0。 例例3.12 A=4EH3.12 A=4EH,B=5DHB=5DH,執(zhí)行,執(zhí)行 MUL AB MUL AB指令,指令,那么結果如下:那么結果如下: A=55H B=1CH OV=1 P=0 A=55H B=1CH OV=1 P=0 第3章

40、 MSC-51單片機的指令系統(tǒng) 例3.13 利用乘法指令編寫15H33H的程序,將乘積的高8位存入31H單元,低8位存入30H單元。編程如下: MOV A,15H;被乘數(shù)送A MOV B,33H;乘數(shù)送B MUL AB;相乘 MOV 30H,A ;積的低8位送30H MOV 31H,B ;積的高8位送31H 第3章 MSC-51單片機的指令系統(tǒng) 5. 除法指令1條 DIV AB ;AAB的商,B余數(shù) 功能:把累加器A中的8位無符號整數(shù)除以存放器B中8位無符號整數(shù),所得商送入A中,余數(shù)送入B中。除法運算總使CY和OV清0。 假設除數(shù)(B中內(nèi)容)為00H,那么執(zhí)行結果為不定值,此時OV1,表示除法

41、溢出。 例3.14 A=87H,B=0CH,執(zhí)行DIV AB 指令,那么結果如下所示: A=0BH B=03H OV=0 CY=0 第3章 MSC-51單片機的指令系統(tǒng) 6. 加1指令5條 INC A ;AA+1 INC direct ;(direct)(direct)+1 INC Ri ;(Ri)(Ri)+1 INC Rn ;RnRn+1 INC DPTR ;DPTRDPTR+1 功能:把所指定存放器或存儲單元的內(nèi)容加1,結果仍送回原存放器或存儲單元,運算結果不影響任何標志位。假設原來的內(nèi)容為0FFH,那么加1后將為00H。該組指令運用了直接、存放器、存放器間接尋址方式。 在第二條指令中,假

42、設直接地址是I/O口,那么進展“讀改寫操作。其功能是先讀入端口鎖存器的內(nèi)容,然后在CPU中加1,繼而再輸出到該端口。 第3章 MSC-51單片機的指令系統(tǒng) 7. 7. 減指令減指令4 4條條 DEC A DEC A ;AA-1AA-1 DEC direct DEC direct ;(direct)(direct)-1(direct)(direct)-1 DEC Ri DEC Ri ;(Ri)(Ri)-1(Ri)(Ri)-1 DEC Rn DEC Rn ;RnRn-1RnRn-1 DEC DEC指令把所指定存放器或存儲單元的內(nèi)容減指令把所指定存放器或存儲單元的內(nèi)容減1 1,結,結果仍送回原存放器

43、或存儲單元,假設原來的內(nèi)容為果仍送回原存放器或存儲單元,假設原來的內(nèi)容為00H00H,那么減那么減1 1后將為后將為0FFH0FFH,運算結果不影響任何標志位,該組,運算結果不影響任何標志位,該組指令運用了直接、存放器和存放器間接尋址。指令運用了直接、存放器和存放器間接尋址。 同同INCINC指令一樣,在第二條指令中,假設直接地指令一樣,在第二條指令中,假設直接地址是址是I/OI/O口,那么同樣是進展口,那么同樣是進展“讀改寫操作。讀改寫操作。 第3章 MSC-51單片機的指令系統(tǒng)53 8. 十進制BCD碼調(diào)整指令1條 DA A 在進展BCD碼運算時,跟在ADD和ADDC指令之后,將相加后存放

44、在累加器A中的結果進展調(diào)整修正。 修正的條件和方法為: 假設(A03)9或(AC)=1,那么(A03)(A03)+6H 假設(A47)9或(CY)=1,那么(A47)(A47)+60H 假設以上兩條同時發(fā)生,或高4位雖等于9,但低4位修正后有進位,那么應加66H調(diào)整。 第3章 MSC-51單片機的指令系統(tǒng) 例3.15 利用十進制加法調(diào)整指令作十進制減法運算應采用補碼相加的方法,用9AH減去減數(shù)即得以10為模的減數(shù)補碼。 設被減數(shù)存放在30H單元,減數(shù)存放在40H單元,結果存放在50H單元,編程如下:CLR C ;清進位位MOV A,9AH ;求減數(shù)補碼 SUBB A,40H ADD A,30H

45、 ;與補碼相加 DA A ;十進制調(diào)整 MOV 50H,A ;結果存放在50H單元 第3章 MSC-51單片機的指令系統(tǒng)3.2.3 3.2.3 邏輯運算類指令邏輯運算類指令 邏輯運算類指令包括與、或、異或、清零、求反、邏輯運算類指令包括與、或、異或、清零、求反、左右移位等操作指令。其對應的尋址方式有直接尋址、左右移位等操作指令。其對應的尋址方式有直接尋址、存放器尋址和存放器間接尋址。執(zhí)行時普通不影響程序存放器尋址和存放器間接尋址。執(zhí)行時普通不影響程序形狀存放器形狀存放器PSWPSW,僅當目的操作數(shù)為,僅當目的操作數(shù)為A A時對奇偶標志時對奇偶標志P P位有位有影響,帶進位的移位指令影響影響,帶

46、進位的移位指令影響CYCY位。邏輯運算指令用到位。邏輯運算指令用到的助記符有的助記符有ANLANL、ORLORL、XRLXRL、RLRL、RLCRLC、RRRR、RRCRRC、CLRCLR和和CPLCPL共共9 9種。種。 第3章 MSC-51單片機的指令系統(tǒng) 1. 循環(huán)移位指令4條 RR A ; RL A ; RLC A ; RRC A ; 第3章 MSC-51單片機的指令系統(tǒng) 前兩條指令是將累加器A的內(nèi)容循環(huán)左移或右移一位,后兩條指令是將累加器A的內(nèi)容連同進位位CY一同循環(huán)左移或右移一位。 例3.16 利用累加器循環(huán)左移指令對A中內(nèi)容進展乘10操作。設A=X,編程如下: RL A ;得到2

47、 X MOV B,A;轉(zhuǎn)存到B RL A ;得到4 X RL A ;得到8 X ADD A,B ;A(8 X +2 X) 第3章 MSC-51單片機的指令系統(tǒng)58 2. 2.累加器半字節(jié)交換指令累加器半字節(jié)交換指令1 1條條 SWAP A SWAP A ;A3A30 0A7A74 4 功能:將累加器功能:將累加器A A的高低兩半字節(jié)交換。如的高低兩半字節(jié)交換。如(A)=50H(A)=50H,執(zhí)行執(zhí)行SWAP ASWAP A指令后,結果指令后,結果(A)=05H(A)=05H。 3. 3.求反指令求反指令1 1條條 CPL A CPL A ;AAAA 4. 4.清清0 0指令指令1 1條條 CL

48、R A CLR A ;A0A0 第3章 MSC-51單片機的指令系統(tǒng) 5. 5.邏輯與指令邏輯與指令6 6條條 ANL A ANL A,data data ; AAdata AAdata ANL direct ANL direct,data data ;(direct)(direct)data(direct)(direct)data ANL A ANL A,Rn Rn ; AARn AARn ANL A ANL A,direct direct ; AA(direct) AA(direct) ANL direct ANL direct,A A ;(direct)(direct)A(direct)

49、(direct)A ANL A ANL A, Ri Ri ; AA(Ri) AA(Ri) 這組指令的第二條和第五條指令中,假設直接地址正這組指令的第二條和第五條指令中,假設直接地址正好是好是I/OI/O口,那么也是進展口,那么也是進展“讀改寫操作。讀改寫操作。 第3章 MSC-51單片機的指令系統(tǒng) 6.邏輯或指令6條ORL A,data ;AAdata ORL direct,data ;(direct)(direct)dataORL A,Rn ;AARnORL A,direct ;AA(direct)ORL direct,A ;(direct)(direct)AORL A, Ri ;AA(Ri

50、) 這組指令的第二條和第五條也具有“讀改寫功能。7.邏輯異或指令6條XRL A,data; AAdataXRL direct,data ;(direct)(direct)data XRL A,Rn;AARn XRL A,direct ;AA(direct) XRL direct,A ;(direct)(direct)A XRL A, Ri ;AA(Ri) 第3章 MSC-51單片機的指令系統(tǒng) 例3.17 設P1中內(nèi)容為AAH,A中內(nèi)容為15H,執(zhí)行以下程序:ANL P1,0F0H;P1=0A0H ORL P1,0FH ;P1=0AFH XRL P1,A;P1=0BAH 從上例可見,邏輯操作是按

51、位進展的,所以“ANL操作常用來屏蔽字節(jié)中的某些位,要保管的位用“1去“與,要去除的位用“0去“與?!癘RL操作常用來對字節(jié)中的某些位置“1,要保管的位用“0去“或,要置1的位用“1去“或?!癤RL操作常用來對字節(jié)中的某些位求反,要保管的位用“1去“異或。 第3章 MSC-51單片機的指令系統(tǒng)62例3.18 把累加器A中的低4位送到外部RAM的2000H單元中,程序為: MOVDPTR,2000H ;DPTR2000H ANLA,0FH ;AA0FH(屏蔽A的高4位) MOVXDPTR,A ;DPTRA 第3章 MSC-51單片機的指令系統(tǒng)3.2.4 3.2.4 控制轉(zhuǎn)移類指令控制轉(zhuǎn)移類指令

52、控制轉(zhuǎn)移類指令用于控制程序的走向。包括:無條件控制轉(zhuǎn)移類指令用于控制程序的走向。包括:無條件轉(zhuǎn)移指令、條件轉(zhuǎn)移指令以及子程序調(diào)用和前往指令,作轉(zhuǎn)移指令、條件轉(zhuǎn)移指令以及子程序調(diào)用和前往指令,作用區(qū)間是程序存儲器空間,普通不影響標志位??刂妻D(zhuǎn)移用區(qū)間是程序存儲器空間,普通不影響標志位??刂妻D(zhuǎn)移類指令用到的助記符有:類指令用到的助記符有:LJMPLJMP、AJMPAJMP、SJMPSJMP、JMPJMP、JZJZ、JNZJNZ、CJNECJNE、DJNZDJNZ等多種。等多種。 第3章 MSC-51單片機的指令系統(tǒng) 1.無條件轉(zhuǎn)移指令4條 無條件轉(zhuǎn)移指令的功能是當程序執(zhí)行完此類轉(zhuǎn)移指令后,程序就無

53、條件地轉(zhuǎn)到指令所提供的目的地址去。 LJMP addr16 ;PCaddr16 AJMP addr11 ;PCPC+2,PC100addr11, ; PC1511不變 SJMP rel ;PCPC+2+rel JMP A+DPTR ;PCA+DPTR64 第3章 MSC-51單片機的指令系統(tǒng) 第一條指令稱為長轉(zhuǎn)移指令。該指令為3字節(jié)指令,指令中提供16位目的地址,將指令中第二字節(jié)和第三字節(jié)地址碼分別裝入PC的高8位和低8位中,以實現(xiàn)程序的轉(zhuǎn)移。所以該指令轉(zhuǎn)移的目的地址范圍是在整個64K字節(jié)的存儲空間內(nèi)。 第二條指令稱為絕對轉(zhuǎn)移指令。該指令為2字節(jié)指令,指令中提供11位目的地址,所以該指令轉(zhuǎn)移的

54、目的地址范圍是從下條指令開場的2K字節(jié)的存儲空間內(nèi),如圖3-8所示。 由圖3-8可見,該指令的轉(zhuǎn)移地址由指令操作碼的高3位和第二字節(jié)組成,可以在2K字節(jié)的存儲空間內(nèi)實現(xiàn)轉(zhuǎn)移。 第3章 MSC-51單片機的指令系統(tǒng)圖3-8 AJMP 指令執(zhí)行表示圖 AJMP指令第一字節(jié)(操作碼)第二字節(jié) A10 A9 A8 0 0 0 0 1A7 A6 A5 A4 A3 A2 A1 A0 PCPC高5位PC低11位 Addr 11 第3章 MSC-51單片機的指令系統(tǒng) 第三條指令稱為相對轉(zhuǎn)移指令又稱為短轉(zhuǎn)移指令。該指令為2字節(jié)指令,指令中的rel是一個帶符號的相對偏移量,范圍為-128+127。負數(shù)表示向后轉(zhuǎn)移

55、,正數(shù)表示向前轉(zhuǎn)移,該指令執(zhí)行后程序轉(zhuǎn)移到當前PC值與rel之和所指示的單元地址處。 第四條指令稱為間接轉(zhuǎn)移指令又稱散轉(zhuǎn)移指令。轉(zhuǎn)移地址由數(shù)據(jù)地址指針DPTR與該累加器A中的8位無符號數(shù)之和構成。該指令執(zhí)行后不影響DPTR和A中的原內(nèi)容,也不影響任何標志位,只是把相加的結果直接送PC,以實現(xiàn)程序的轉(zhuǎn)移。 第3章 MSC-51單片機的指令系統(tǒng) 例3.19 根據(jù)data的數(shù)值設計散轉(zhuǎn)表程序,當data=0時,轉(zhuǎn)處置程序G0,當data=1時,轉(zhuǎn)處置程序G1, ,當data=n時,轉(zhuǎn)處置程序Gn。編程如下: MOV A,data RL A ;將A修正為偶數(shù) MOV DPRT,TABLE ;表首址送D

56、PTR JMP A+DPTR ;以A中內(nèi)容為偏移量跳轉(zhuǎn)TABLE:AJMPG0 AJMP G1 AJMP G2 AJMP Gn 留意:data可以是恣意數(shù),但由于AJMP是雙字節(jié)指令, 所以A中的數(shù)值必需修正為偶數(shù)。 第3章 MSC-51單片機的指令系統(tǒng) 2.條件轉(zhuǎn)移指令條件轉(zhuǎn)移指令13條條 條件轉(zhuǎn)移指令是根據(jù)某種特定條件實現(xiàn)轉(zhuǎn)移的指令。條條件轉(zhuǎn)移指令是根據(jù)某種特定條件實現(xiàn)轉(zhuǎn)移的指令。條件滿足時實現(xiàn)轉(zhuǎn)移,其目的地址在下一條指令的起始地址件滿足時實現(xiàn)轉(zhuǎn)移,其目的地址在下一條指令的起始地址為中心的為中心的256個字節(jié)范圍內(nèi)個字節(jié)范圍內(nèi)-128+127;條件不滿足;條件不滿足時那么順序執(zhí)行下面一條指

57、令。時那么順序執(zhí)行下面一條指令。 條件轉(zhuǎn)移指令非常豐富,包括判累加器零轉(zhuǎn)移、判位形條件轉(zhuǎn)移指令非常豐富,包括判累加器零轉(zhuǎn)移、判位形狀轉(zhuǎn)移、比較轉(zhuǎn)移和循環(huán)轉(zhuǎn)移共狀轉(zhuǎn)移、比較轉(zhuǎn)移和循環(huán)轉(zhuǎn)移共4組。組。 JZ rel ;假設;假設A0,那么轉(zhuǎn)移,那么轉(zhuǎn)移,PCPC+2+rel 假設假設A0,那么順序執(zhí)行,那么順序執(zhí)行,PCPC+2 JNZ rel ;假設;假設A0,那么轉(zhuǎn)移,那么轉(zhuǎn)移,PCPC+2+rel 假設假設A0,那么順序執(zhí)行,那么順序執(zhí)行,PCPC+2 第3章 MSC-51單片機的指令系統(tǒng) CJNE A,direct,rel ;假設A(direct),那么順序執(zhí)行, PCPC+3,C0 假設

58、A(direct),那么轉(zhuǎn)移, PCPC+3+rel,C0 假設A(direct),那么轉(zhuǎn)移, PCPC+3+rel,C1 CJNEA,#data,rel ;假設Adata,那么順序執(zhí)行, PCPC+3,C0 假設Adata,那么轉(zhuǎn)移, PCPC+3+rel,C0 假設Adata,那么轉(zhuǎn)移, PCPC+3+rel,C1 第3章 MSC-51單片機的指令系統(tǒng) CJNERn,#data,rel ;假設Rndata,那么順序執(zhí)行, PCPC+3,C0 假設Rndata,那么轉(zhuǎn)移, PCPC+3+rel,C0 假設Rndata,那么轉(zhuǎn)移, PCPC+3+rel,C1 CJNERi,#data,rel

59、;假設(Ri)data,那么順序執(zhí)行, PCPC+3,C0 假設(Ri)data,那么轉(zhuǎn)移, PCPC+3+rel,C0 假設(Ri)data,那么轉(zhuǎn)移, PCPC+3+rel,C1 第3章 MSC-51單片機的指令系統(tǒng) DJNZRn,rel ;RnRn-1,假設Rn0,那么轉(zhuǎn)移 PCPC+2+rel假設Rn0,那么順序 執(zhí)行,PCPC+2 DJNZdirect,rel ;(direct)(direct)-1,(direct)0, 那么轉(zhuǎn)移,PCPC+3+rel 假設(direct)0,那么順序執(zhí)行, PCPC+3 JC rel ;假設C=1,那么轉(zhuǎn)移,PCPC+2+ rel 假設C=0,順序

60、執(zhí)行,PCPC+2 JNC rel ;假設C=0,那么轉(zhuǎn)移,PCPC+2+ rel 假設C=1,順序執(zhí)行,PCPC+2 第3章 MSC-51單片機的指令系統(tǒng) JB bit,rel ;假設(bit)=1,那么轉(zhuǎn)移,PCPC+3+ rel 假設(bit)=0,順序執(zhí)行,PCPC+3 JNB bit,rel ;假設(bit)=0,那么轉(zhuǎn)移,PCPC+3+ rel 假設(bit)=1,順序執(zhí)行,PCPC+3 JBC bit,rel ;假設(bit)=1,那么轉(zhuǎn)移,PCPC+3+ rel 且(bit)0 假設(bit)=0,順序執(zhí)行, PCPC+3 第3章 MSC-51單片機的指令系統(tǒng) JZ和JNZ指令

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論