版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)
第3章STC單片機(jī)的指令系統(tǒng)單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第1頁。主要內(nèi)容54321匯編器的偽指令6STC系列單片機(jī)指令系統(tǒng)概述尋址方式數(shù)據(jù)傳送指令運(yùn)算和位移指令控制轉(zhuǎn)移和位操作指令單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第2頁。什么是指令系統(tǒng)?指令系統(tǒng)是指微型單片計(jì)算機(jī)CPU所有指令的集合,反映CPU的基本功能,是硬件人員和程序員能見到的機(jī)器的主要屬性,是硬件構(gòu)成的計(jì)算機(jī)系統(tǒng)向外部世界提供的直接界面。一個(gè)CPU的指令系統(tǒng)是固定的,不同類型的CPU的指令系統(tǒng)不同,同一系列向上兼容。
如STC系列單片機(jī)與AVR單片機(jī)、MSP430單片機(jī)、PIC單片機(jī)等指令系統(tǒng)都不相同。3.1STC系列單片機(jī)指令系統(tǒng)概述單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第3頁。什么是CISC和RISC?STC系列單片機(jī)是復(fù)雜指令集系統(tǒng)CISC(ComplexInstructionSetComputer),而AVR單片機(jī)、MSP430單片機(jī)、PIC單片機(jī)等都是精簡(jiǎn)指令集系統(tǒng)RISC(ReducedInstructionSetComputer)。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第4頁。
CISC和RISC分別是CPU的兩種典型構(gòu)架,二者的主要差異:
1.指令系統(tǒng):RISC常用指令具有簡(jiǎn)單高效的特色。對(duì)不常用的功能,一般沒有設(shè)置專門的指令。而CISC的指令系統(tǒng)比較豐富,有專用指令來完成特定的功能。
2.存儲(chǔ)器操作:RISC對(duì)存儲(chǔ)器的限制較多,而CISC對(duì)存儲(chǔ)器操作的指令多。
3.程序:RISC匯編語言程序一般需要交大的內(nèi)存空間,實(shí)現(xiàn)特殊功能時(shí)程序復(fù)雜,不容易設(shè)計(jì);而CISC程序語言相對(duì)簡(jiǎn)單,科學(xué)計(jì)算及復(fù)雜操作的程序設(shè)計(jì)容易。
4.用戶使用:RISC結(jié)構(gòu)簡(jiǎn)單,指令規(guī)整,性能容易把握,易學(xué)易用;CISC結(jié)構(gòu)復(fù)雜,功能強(qiáng)大,實(shí)現(xiàn)特殊功能容易。
5.應(yīng)用范圍:RISC是適合于專用機(jī);而CISC更適合于通用機(jī)。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第5頁。機(jī)器指令單片機(jī)編程時(shí),無論是用匯編語言還是高級(jí)語言,如C語言,最終都要由編譯器將匯編語言或高級(jí)語言轉(zhuǎn)換成機(jī)器語言,那么什么是機(jī)器語言呢?在理解機(jī)器語言前,需要先知道機(jī)器指令。所謂機(jī)器指令就是用二進(jìn)制數(shù)編碼表示的指令,它是CPU能直接識(shí)別的唯一的語言。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第6頁。匯編語言和高級(jí)語言區(qū)別匯編語言是面向機(jī)器,反映機(jī)器運(yùn)動(dòng)的實(shí)際過程,與計(jì)算機(jī)的硬件結(jié)構(gòu)和指令系統(tǒng)密切相關(guān)。它占用內(nèi)存空間小,執(zhí)行速度快,但是缺點(diǎn)是編程繁瑣,調(diào)試?yán)щy,可讀性和可移植性差。高級(jí)語言是獨(dú)立于機(jī)器、面向過程或?qū)ο蟮恼Z言。其算法是按照人的思維方式給出,比較接近人的自然語言。C語言等高級(jí)語言編程效率高、可讀性和可移植性強(qiáng)。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第7頁。STC系列單片機(jī)內(nèi)的8051CPU指令集總共有111條指令,與傳統(tǒng)的MCS-51單片機(jī)的指令系統(tǒng)完全兼容??偣灿?11條指令,其中數(shù)據(jù)傳送類指令29條,算術(shù)運(yùn)算類指令24條,邏輯運(yùn)算類指令24條,控制轉(zhuǎn)移類指令17條,位操作類指令17條。STC單片機(jī)指令系統(tǒng)屬于復(fù)雜指令集系統(tǒng)(CISC,ComplexInstructionSetComputing)。在CISC微控制器中,程序的各條指令是按照程序的順序串行執(zhí)行的,每條指令中的各個(gè)操作也是按順序串行執(zhí)行的。3.1.2指令系統(tǒng)概述單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第8頁。一指令、指令系統(tǒng)和程序CPU是一個(gè)可以完成一些基本操作的電子器件。下面介紹一下指令、指令系統(tǒng)和程序的概念。指令:通常來說,編碼表示CPU的一個(gè)基本操作,成為一條指令。指令系統(tǒng):全部指令集稱為指令系統(tǒng)。指令系統(tǒng)反映CPU的基本功能,是硬件人員和程序員能見到的機(jī)器的主要屬性,是硬件構(gòu)成的計(jì)算機(jī)系統(tǒng)向外部世界提供的直接界面。一般來說,一個(gè)CPU的指令系統(tǒng)是固定的,不同類型CPU的指令系統(tǒng)是不同的,同一系列CPU的指令系統(tǒng)是向上兼容。程序:程序是為要解決的問題編寫出來的指令集合。用戶為解決自己的問題所編寫的程序稱為源程序。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第9頁。二機(jī)器碼和機(jī)器語言機(jī)器碼
用二進(jìn)制數(shù)編碼表示的指令,稱為機(jī)器指令或機(jī)器碼。機(jī)器語言機(jī)器碼機(jī)器使用的一組規(guī)則,稱為機(jī)器語言。所謂機(jī)器語言,就像學(xué)習(xí)外語一樣,除了要掌握詞匯(指令),還要學(xué)習(xí)語法。機(jī)器語言的特點(diǎn)是CPU能夠直接識(shí)別的唯一語言;面向機(jī)器,可直接被單片機(jī)執(zhí)行;執(zhí)行速度快,占內(nèi)存空間??;編程效率低。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第10頁。三匯編語言的指令格式指令格式是指令碼的結(jié)構(gòu)形式。一般來說,指令由操作碼和操作數(shù)兩部分組成。其中操作碼部分比較簡(jiǎn)單,是由指令功能的英文單詞的縮寫形式組成;操作數(shù)部分則比較復(fù)雜,分為無操作數(shù)、一個(gè)操作數(shù)和兩個(gè)操作數(shù)等情況。匯編語言的指令一般由四個(gè)部分組成,其格式如下:[標(biāo)號(hào):]指令助記符[操作數(shù)1][,操作數(shù)2][,操作數(shù)3][;注釋]單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第11頁。(1)標(biāo)號(hào)標(biāo)號(hào)是指令的符號(hào)地址。通常作為轉(zhuǎn)移指令的操作數(shù)。對(duì)標(biāo)號(hào)的規(guī)定如下:①標(biāo)號(hào)名稱由1-31個(gè)字符組成,首字符不能是數(shù)字,可以包括字母、數(shù)字、“_”和“?”等字符;②不能用已定義的保留字(如指令助記符、偽指令、寄存器名稱和運(yùn)算符);③標(biāo)號(hào)后面必須跟英文冒號(hào)“:”。(2)指令助記符指令助記符是指令功能的英文縮寫。它是匯編語句中唯一不能空缺的部分。匯編器在匯編時(shí)會(huì)將其翻譯成對(duì)應(yīng)的二進(jìn)制代碼。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第12頁。(3)操作數(shù)操作數(shù)是指令要操作的數(shù)據(jù)或數(shù)據(jù)的地址。操作數(shù)可以空缺,也可能是一個(gè)、兩個(gè)、三個(gè)。各操作數(shù)之間以英文逗號(hào)分隔。操作數(shù)內(nèi)容額能包括以下幾種。①數(shù)據(jù)有以下4種形式:二進(jìn)制數(shù),末尾用字母B標(biāo)識(shí)。十進(jìn)制數(shù),末尾用字母D標(biāo)識(shí)或字母D省略。十六進(jìn)制數(shù),末尾用字母H標(biāo)識(shí)。ASCII碼,以單引號(hào)對(duì)其標(biāo)識(shí)。②符號(hào)符號(hào)可以用符號(hào)名、標(biāo)號(hào)或特定的符號(hào)“$”等。③表達(dá)式由運(yùn)算符和數(shù)據(jù)構(gòu)成的算式。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第13頁。(4)注釋
注釋只是對(duì)語句的說明。注釋字段可以增加程序的可讀性,有助于編程人員的閱讀和維護(hù)。該字段必須以英文分號(hào)“;”開頭,當(dāng)一行寫不下時(shí),允許換行接著寫,但是換行時(shí)要注意使用分號(hào)“;”開頭。指令系統(tǒng)中常用符號(hào)說明如表3-1所示。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第14頁。序號(hào)符號(hào)含義1Rn當(dāng)前選中的工作寄存器組中的寄存器R0~R72Ri當(dāng)前選中的工作寄存器組中的寄存器R0或R13@間接尋址或變址尋址前綴4#data8位立即數(shù)5#data1616位立即數(shù)6direct片內(nèi)RAM單元地址及SFR地址7addr1111位目標(biāo)地址8addr1616位目標(biāo)地址9rel補(bǔ)碼形式表示的8位地址偏移量10bit片內(nèi)RAM位地址、SFR中的位地址11(x)表示x地址單元或寄存器的內(nèi)容12((x))表示以x單元或寄存器內(nèi)容為地址所指定單元的內(nèi)容13/位操作的取反操作前綴表3-1指令系統(tǒng)符號(hào)說明單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第15頁。匯編指令形成的代碼由操作碼和操作數(shù)組成。操作碼表示指令要完成的何種動(dòng)作,操作數(shù)表示參與操作的數(shù)據(jù)來源及去處。所謂尋址方式:是指尋找操作數(shù)所在單元的方法?;?1核的STC系列單片機(jī)有7種尋址方法,下面將逐一進(jìn)行介紹。3.2尋址方式單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第16頁。在這種尋址方式中,指令多是雙字節(jié)的。立即數(shù)就是存放在程序存儲(chǔ)器中的常數(shù),換句話說就是操作數(shù)(立即數(shù))是包含在指令字節(jié)中的。立即數(shù)可以是一個(gè)字節(jié),也可以是兩個(gè)字節(jié),通常用“#”作前綴。例如:
MOV
A,#3AH這條指令的指令代碼為74H、3AH,是雙字節(jié)指令,這條指令的功能是把立即數(shù)3AH送入累加器A中。直接尋址是指令中直接給出操作數(shù)的地址。例如:
MOV
A,30H這條指令中操作數(shù)就在30H單元中,也就是30H是操作數(shù)的地址,并非操作數(shù)。3.2.1立即尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第17頁。
在基于51核的STC系列單片機(jī)中,直接地址只能用來表示內(nèi)部數(shù)據(jù)存儲(chǔ)器、位地址空間以及特殊功能寄存器,具體的說就是:(1)內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個(gè)單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第18頁。(2)位尋址區(qū)。20H-2FH地址單元。(3)特殊功能寄存器。專用寄存器除以單元地址形式給出外,還可以以寄存器符號(hào)形式給出。例如:MOV
IE,#85H
上述指令中斷允許寄存器IE的地址是80H,那么也就是此指令也可以以MOV
80H,#85H的形式表述?!咀ⅰ恐苯訉ぶ肥俏ㄒ荒茉L問特殊功能寄存器的尋址方式。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第19頁。
現(xiàn)在分析下面幾條指令:MOV
65H,A
;將A的內(nèi)容送入內(nèi)部RAM的65H單元地址MOV
A,direct
;將直接地址單元的內(nèi)容送入A中MOV
direct,direct;將直接地址單元的內(nèi)容送直接地址單元
MOV
IE,#85H
;將立即數(shù)85H送入中斷允許寄存器IE
數(shù)據(jù)前面加了“#”的,表示后面的數(shù)是立即數(shù),如#85H,就表示85H就是一個(gè)立即數(shù)。數(shù)據(jù)前面沒有加“#”號(hào)的,就表示后面的是一個(gè)存儲(chǔ)單元地址如MOV65H,A這條指令的65H就是一個(gè)單元地址。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第20頁。直接尋址是在指令中直接給出操作數(shù)單元的地址。在這種尋址方式中,指令的操作數(shù)部分直接是操作數(shù)的地址。51核單片機(jī)中,用直接尋址方式只能給出8位地址。因此,直接尋址的尋址范圍只能限于片內(nèi)RAM,具體來說,就是可以訪問內(nèi)部數(shù)據(jù)RAM區(qū)中00~7FH共128個(gè)單元以及所有的特殊功能寄存器。在指令助記符中,直接尋址的地址可用兩位十六進(jìn)制數(shù)表示。對(duì)于特殊功能寄存器,可用它們各自的名稱符號(hào)來表示,這樣可以增加程序的可讀性。例如:MOVA,1AH此條指令屬于直接尋址,其中1AH所表示的是直接地址,即內(nèi)部RAM區(qū)中的1AH單元。這條指令的功能是將內(nèi)部RAM區(qū)中1AH地址單元對(duì)應(yīng)的內(nèi)容傳送到累加器A中。3.2.2直接尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第21頁。操作數(shù)存放在工作寄存器R0~R7、累加器A或寄存器B中。例如:MOVA,R2寄存器尋址的尋址范圍是:
(1)4個(gè)工作寄存器組共有32個(gè)通用寄存器,但在指令中只能使用當(dāng)前寄存器組(工作寄存器組的選擇是由程序狀態(tài)字PSW中的RS1和RS0來確定的),因此在使用前常需要通過對(duì)PSW中的RS1、RS0位的狀態(tài)設(shè)置,來進(jìn)行對(duì)當(dāng)前工作寄存器組的選擇。3.2.3寄存器尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第22頁。(2)部分專用寄存器。如累加器A、通用寄存器B、地址寄存器DPTR和進(jìn)位位CY。寄存器尋址方式是指操作數(shù)在寄存器中,因此指定了寄存器名稱就能得到操作數(shù)。其實(shí)寄存器尋址方式就是對(duì)由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進(jìn)行讀/寫操作。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第23頁。寄存器間接尋址指令中寄存器的內(nèi)容作為操作數(shù)存放的地址,指令中間接尋址寄存器前用“@”表示前綴。寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過寄存器間接得到的,因此稱為寄存器間接尋址?;?1核的STC系列單片機(jī)規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲(chǔ)器的256個(gè)單元。例如:MOV
R0,#30H
;將值30H加載到R0中
MOV
A,@R0
;把內(nèi)部RAM地址30H內(nèi)的值放到累加器A中MOVXA,@R0
;把外部RAM地址30H內(nèi)的值放到累加器A中3.2.4寄存器間接尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第24頁。
如果用DPTR做為間址寄存器,那么它的尋址范圍是多少呢?DPTR是一個(gè)16位的寄存器,所以它的尋址范圍就是2的16次方=65536=64K。因此用DPTR做為間址寄存器的尋址空間是64K,所以訪問片外數(shù)據(jù)存儲(chǔ)器時(shí),我們通常就用DPTR做為間址寄存器。例如:
MOV
DPTR,#1234H
;將DPTR值設(shè)為1234H(16位)
MOVX
A,@DPTR
;將外部RAM或I/O地址1234H內(nèi)的值存入累加器A單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第25頁。在執(zhí)行PUSH(入棧)和POP(出棧)指令時(shí),采用堆棧指針SP作寄存器間接尋址。例如:PUSH
30H
;把內(nèi)部RAM地址30H內(nèi)的值放到堆棧區(qū)中堆棧區(qū)是由SP寄存器指定的,如果執(zhí)行上面這條命令前,SP為60H,命令執(zhí)行后會(huì)把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。
那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個(gè),R0、R1、DPTR、SP。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第26頁。寄存器間接尋址范圍總結(jié):(1)內(nèi)部RAM低128單元。對(duì)內(nèi)部RAM低128單元的間接尋址,應(yīng)使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。
(2)外部RAM64KB。對(duì)外部RAM64KB的間接尋址,應(yīng)使用@DPTR作間址尋址寄存器,其形式為@DPTR。例如:MOVXA,@DPTR;把DPTR指定的外部RAM單元的內(nèi)容送入累加器A單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第27頁。
(3)外部RAM的低256單元是一個(gè)特殊的尋址區(qū),除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如:MOVX
A,@R0;把R0指定的外部RAM單元的內(nèi)容送入累加器A(4)堆棧操作指令(PUSH和POP)也應(yīng)算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。(5)寄存器間接尋址方式不可以訪問特殊功能寄存器。寄存器間接尋址也須以寄存器符號(hào)的形式表示,為了區(qū)別寄存器尋址和寄存器間接尋址的區(qū)別,在寄存器間接尋址方式中,寄存器的名稱前面加前綴標(biāo)志“@”。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第28頁。變址尋址是以程序計(jì)數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時(shí),把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問程序存儲(chǔ)器ROM中的數(shù)據(jù)表格,即查表操作。例如:MOVCA,@A+PCMOVCA,@A+DPTR源操作數(shù)地址=變地址+基地址基地址寄存器DPTR或PC;變址寄存器@A。
3.2.5變址尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第29頁。
變址尋址只能讀出程序內(nèi)存入的值,而不能寫入,也就是說變址尋址這種方式只能對(duì)程序存儲(chǔ)器進(jìn)行尋址,或者說它是專門針對(duì)程序存儲(chǔ)器的尋址方式。例如:MOVC
A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲(chǔ)器地址單元的內(nèi)容送A。假若指令執(zhí)行前A=54H,DPTR=3F21H,則這條指令變址尋址形成的操作數(shù)地址就是54H+3F21H=3F75H。如果3F75H單元中的內(nèi)容是7FH,則執(zhí)行這條指令后,累加器A中的內(nèi)容就是7FH。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第30頁。
變址尋址的指令只有三條,分別如下:
JMP
@A+DPTRMOVC
A,@A+DPTRMOVC
A,@A+PC第一條指令是一條無條件轉(zhuǎn)移指令,這條指令的意思就是DPTR加上累加器A的內(nèi)容做為一個(gè)16位的地址,執(zhí)行JMP這條指令是,程序就轉(zhuǎn)移到A+DPTR指定的地址去執(zhí)行。第二和第三條指令MOVC
A,@A+DPTR和MOVC
A,@A+PC。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第31頁。這兩條指令的通常用于查表操作,功能完全一樣,但使用起來卻有一定的差別,現(xiàn)詳細(xì)說明如下:
1、PC是程序指針,是十六位。DPTR是一個(gè)16位的數(shù)據(jù)指針寄存器,它們的尋址范圍都應(yīng)是64K。程序計(jì)數(shù)器PC是始終跟蹤著程序的執(zhí)行的,也就是說PC的值是隨程序的執(zhí)行情況自動(dòng)改變的,不可以隨便給PC賦值。而DPTR是一個(gè)數(shù)據(jù)指針,可以給空的數(shù)據(jù)指針DPTR進(jìn)行賦值。再看MOVC
A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個(gè)地址,而PC是固定的,累加器A是一個(gè)8位的寄存器,它的尋址范圍是256個(gè)地址單元。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第32頁。2、MOVC
A,@A+PC
這條指令的尋址范圍其實(shí)就是只能在當(dāng)前指令下256個(gè)地址單元。如果需要查詢的數(shù)據(jù)表在256個(gè)地址單元之內(nèi),則可以用MOVC
A,@A+PC這條指令進(jìn)行查表操作。但如果超過了256個(gè)單元,則不能用這條指令進(jìn)行查表操作。3、DPTR是一個(gè)數(shù)據(jù)指針,這個(gè)數(shù)據(jù)指針我們可以給它賦值操作的。通過賦值操作可以使MOVC
A,@A+DPTR這條指令的尋址范圍達(dá)到64K。這就是這兩條指令在實(shí)際應(yīng)用當(dāng)中要注意的問題。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第33頁。基于51核的STC系列單片機(jī)有位處理功能,可以對(duì)數(shù)據(jù)位進(jìn)行操作,因此就有相應(yīng)的位尋址方式。所謂位尋址,就是對(duì)內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個(gè)位,直接加以置位為1或復(fù)位為0。3.2.6位尋址單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第34頁。位尋址的范圍,也就是哪些部份可以進(jìn)行位尋址:(1)51單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM的低128單元中有一個(gè)區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個(gè)單元,一個(gè)單元是8位,所以位尋址區(qū)共有128位。這128位都單獨(dú)有一個(gè)位地址,其位地址的名字就是00H-7FH。(2)對(duì)專用寄存器位尋址。一般來說,地址單元可以被8整除的專用寄存器,通常都可以進(jìn)行位尋址,當(dāng)然并不是全部,大家在應(yīng)用當(dāng)中應(yīng)引起注意。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第35頁。把指令中給定的地址偏移量與本指令所在單元地址(PC內(nèi)容)相加得到真正有效的操作數(shù)所存放的地址。專用寄存器的位尋址表示方法:下面我們以程序狀態(tài)字PSW來進(jìn)行說明。3.2.7相對(duì)尋址B7B6B5B4B3B2B1B0CYACF0RS1RS0OVF1P單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第36頁。(1)直接使用位地址表示:PSW的第五位地址是D5,可以表示為D5H。
MOVC,D5H(2)位名稱表示:表示該位的名稱,例如PSW的位5是F0,可用F0表示。
MOVC,F(xiàn)0(3)單元(字節(jié))地址加位表示:D0H單元位5,表示為DOH.5。
MOVC,D0H.5(4)專用寄存器符號(hào)加位表示:例如PSW.5。
MOVC,PSW.5
這四種方法實(shí)現(xiàn)的功能都是相同的,只是表述的方式不同而已。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第37頁。數(shù)據(jù)傳送指令是單片機(jī)的最基本和最主要操作。數(shù)據(jù)傳送操作可以在片內(nèi)RAM和SFR內(nèi)進(jìn)行,也可以在累加器A和片外存儲(chǔ)器之間進(jìn)行。指令中必須指定傳送數(shù)據(jù)的源地址和目的地址,以便機(jī)器執(zhí)行指令時(shí)把源地址中的內(nèi)容傳送到目的地址中,但源地址中的內(nèi)容不變。在這類指令中,除了在以累加器A為目的操作數(shù)時(shí)的傳送指令會(huì)對(duì)奇偶標(biāo)志位P有影響外,其余指令執(zhí)行時(shí)均不會(huì)影響任何標(biāo)志位。數(shù)據(jù)傳送指令共有28條,分為內(nèi)部數(shù)據(jù)傳送指令、外部數(shù)據(jù)傳送指令、堆棧操作指令和數(shù)據(jù)交換指令4類。3.3數(shù)據(jù)傳送指令單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第38頁。3.3.1內(nèi)部數(shù)據(jù)傳送指令內(nèi)部數(shù)據(jù)傳送指令共有15條,這些指令的源操作數(shù)和目的操作數(shù)地址都在單片機(jī)內(nèi)部,可以是片內(nèi)RAM的地址,也可以是特殊功能寄存器SFR的地址。指令格式如下:MOV<dest>,<src>其中<dest>是目的操作數(shù)地址,<src>是源操作數(shù)地址。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第39頁。1.立即尋址型傳送指令這類指令共有4條,其特點(diǎn)是源操作數(shù)是立即數(shù)。MOVA,#dataMOVRn,#dataMOV@Ri,#dataMOVdirect,#data2.直接尋址型傳送指令這類指令共有5條,其特點(diǎn)是指令碼中至少含有一個(gè)操作數(shù)的直接地址。MOVA,directMOVdirect,AMOVRn,directMOV@Ri,directMOVdirect1,direct2這些指令的功能是把源操作數(shù)傳送到目的存儲(chǔ)單元,目的存儲(chǔ)單元可以是累加器A、工作寄存器Rn和片內(nèi)RAM單元。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第40頁。3.寄存器尋址型傳送指令這類指令共有3條。其特點(diǎn)是源操作數(shù)和目的操作數(shù)有一個(gè)是工作寄存器Rn。
MOVA,Rn
MOVRn,A
MOVdirect,Rn單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第41頁。4.寄存器間址型傳送指令這類指令共有3條。其特點(diǎn)是Ri中存放的不是操作數(shù)本身,而是操作數(shù)所在存儲(chǔ)單元的地址。
MOVA,@Ri
MOV@Ri,A
MOVdirect,@Ri第一條指令的功能是把Ri中地址所指RAM單元中的操作數(shù)傳送到累加器A中。第二條指令的功能是把累加器A中的操作數(shù)傳送到以Ri中的內(nèi)容為地址的存儲(chǔ)單元。第三條指令的功能是把以Ri中內(nèi)容為地址的源操作數(shù)傳送到direct存儲(chǔ)單元。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第42頁。3.3.2外部數(shù)據(jù)傳送指令1.外部RAM/ROM的字傳送指令在基于51核的STC系列單片機(jī)指令系統(tǒng)中,只有唯一的一條字傳送指令(16位數(shù))。
MOVDPTR,#data16該指令的功能是把16位立即數(shù)傳送到DPTR寄存器中,其中高8位送入DPH,低8位送入DPL?!咀ⅰ緿PTR是一個(gè)16位的寄存器,可以分為兩個(gè)單獨(dú)的8位寄存器DPH和DPL分別使用。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第43頁。2.外部ROM的字節(jié)傳送指令這類指令共有2條,均屬于變址尋址指令,因?yàn)閷iT用于查表,故又稱為查表指令。
MOVCA,@A+DPTR
MOVCA,@A+PC第一條指令采用DPTR作為基址寄存器,查表時(shí)用來存放表的起始地址。第二條指令以PC作為基址寄存器,但指令中PC的地址是可以變化的,它隨著被執(zhí)行指令在程序中位置的不同而變化。一旦被執(zhí)行指令在程序中的位置確定以后,PC中的內(nèi)容也被給定。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第44頁。3.外部RAM的字節(jié)傳送指令這類指令共有4條,功能是實(shí)現(xiàn)外部RAM與累加器A直接的數(shù)據(jù)傳送。
MOVXA,@Ri
MOVX@Ri,A
MOVXA,@DPTR
MOVX@DPTR,A前兩條指令用于訪問外部RAM的低地址區(qū),地址范圍是0000H~00FFH;后兩條指令用于訪問外部RAM的64KB存儲(chǔ)區(qū),地址范圍是0000H~FFFFH。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第45頁。3.3.3堆棧操作指令堆棧操作指令是一種特殊的數(shù)據(jù)傳送指令,共有2條指令,其特點(diǎn)是根據(jù)堆棧指針SP中棧頂?shù)刂愤M(jìn)行數(shù)據(jù)傳送操作。
PUSHdirect
POPdirect第一條指令稱為入棧指令,功能是把direct為地址的操作數(shù)傳送到堆棧中。第二條指令稱為出棧指令,功能是把堆棧里的操作數(shù)傳送到direct中。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第46頁。3.3.4數(shù)據(jù)交換指令數(shù)據(jù)交換指令共有4條,其中字節(jié)交換指令3條,半字節(jié)交換指令1條。
XCHA,Rn
XCHA,direct
XCHA,@Ri
XCHDA,@Ri前3條指令的功能是把累加器A中的內(nèi)容和片內(nèi)RAM單元內(nèi)容相互交換。第4條指令是半字節(jié)交換指令,用于把累加器A中的低4位與Ri為間址尋址單元的低4位相互交換,各自的高4位保持不變。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第47頁。3.4運(yùn)算和位移指令在基于51核的STC系列單片機(jī)的指令系統(tǒng)中,這類指令和核心指令,共有49條,分為三大類:算術(shù)運(yùn)算指令邏輯運(yùn)算指令移位指令單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第48頁。3.4.1算術(shù)運(yùn)算指令
算術(shù)運(yùn)算指令共有24條,分為加法、減法、十進(jìn)制調(diào)整和乘除法指令四類。1.加法指令加法指令共有13條,由不帶Cy加法、帶Cy加法和加1指令三類組成。(1)不帶Cy加法指令
ADDA,RnADDA,direct
ADDA,@RiADDA,#data這類指令共4條,指令功能是把源地址所指示的操作數(shù)和累加器A中的操作數(shù)相加,并把兩數(shù)之和保留在累加器A中。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第49頁。
(2)帶Cy加法指令
ADDCA,RnADDCA,directADDCA,@RiADDCA,#data這類指令共4條,指令功能是把源操作數(shù)、累加器A中的操作數(shù)與Cy中的值相加,并把相加的結(jié)果保留在累加器A中。(3)加1指令加1指令又稱為增量指令,共有5條。
INCAINCRnINCdirect
INC@RiINCDPTR前4條指令是8位數(shù)加1指令,用于使源操作數(shù)內(nèi)容加1。第5條指令是對(duì)DPTR中的內(nèi)容加1。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第50頁。2.減法指令減法指令共8條,分為帶Cy減法指令和減1指令兩類。(1)帶Cy減法指令SUBBA,RnSUBBA,directSUBBA,@RiSUBBA,#data這組指令的功能是把累加器A中的操作數(shù)減去源操作數(shù)以及指令執(zhí)行前Cy的值,并把結(jié)果保留在累加器A中。(2)減1指令
DECA,RnDECA,directDECA,@RiDECA,#data這組指令的功能是把源操作數(shù)的內(nèi)容減1,并把結(jié)果保留在累加器A中。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第51頁。3.十進(jìn)制調(diào)整指令這是一條專用指令,用于實(shí)現(xiàn)BCD運(yùn)算。
DAA這條指令通常緊跟在加法指令后,用于對(duì)執(zhí)行加法后累加器A中的操作結(jié)果進(jìn)行十進(jìn)制調(diào)整。該指令的功能有兩個(gè):若在加法過程中低4位向高4位(即AC=1)或累加器A中低4位大于9,則累加器A進(jìn)行加6調(diào)整;若在加法過程中最高位有進(jìn)位(即Cy=1)或累加器A高4位大于9,則累加器A進(jìn)行加60H調(diào)整(即高4位加6調(diào)整)。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第52頁。4.乘法和除法指令
MULAB
DIVAB第1條指令是乘法指令,其功能是把累加器A和寄存器B中的兩個(gè)8位無符號(hào)整數(shù)相乘,并把積的高8位房在B寄存器中,低8位放在累加器A中。第2條指令的除法指令,其功能是把累加器A中的8位無符號(hào)整數(shù)除以寄存器B中的8位無符號(hào)整數(shù),所得商的整數(shù)部分存放在累加器A中,余數(shù)保留在B中。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第53頁。3.4.2邏輯運(yùn)算指令邏輯運(yùn)算指令共有20條,分為邏輯與、邏輯或、邏輯非和邏輯異或四類。1.邏輯與運(yùn)算指令邏輯與運(yùn)算指令又稱邏輯乘指令,共有6條。
ANLA,Rn
ANLA,direct
ANLA,@Ri
ANLA,#data
ANLdirect,A
ANLdirect,#data單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第54頁。2.邏輯或運(yùn)算指令邏輯或指令共有6條。
ORLA,Rn
ORLA,direct
ORLA,@Ri
ORLA,#data
ORLdirect,A
ORLdirect,#data
單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第55頁。3.邏輯異或運(yùn)算指令邏輯異或指令共有6條。
XRLA,Rn XRLA,direct XRLA,@Ri XRLA,#data XRLdirect,A XRLdirect,#data單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第56頁。
4.累加器清零和取反指令
CLRA CPLA第1條指令是把累加器A清零;第2條指令是把累加器A取反。取反指令常用于對(duì)某個(gè)存儲(chǔ)單元或某個(gè)存儲(chǔ)區(qū)域中帶符號(hào)數(shù)的求補(bǔ)。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第57頁。3.4.3位移指令移位指令共有5條。RLARRARLCARRCASWAPA
這組指令按功能分為3類:前2條指令屬于不帶Cy標(biāo)志位的環(huán)移指令,累加器A中最高位A7和最低位A0連接后進(jìn)行左移或右移;后面兩條指令為帶Cy標(biāo)志位的左移或右移。第3和第4條指令是帶Cy標(biāo)志位的左移或右移。第5條指令稱為半字交換指令,用于累加器A中的高4位和低4位相互交換。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第58頁。3.5控制轉(zhuǎn)移和位操作指令
基于51核的STC單片機(jī)的控制轉(zhuǎn)移和位操作指令共有34條??刂妻D(zhuǎn)移指令是任何指令系統(tǒng)都具有的一類指令,主要以改變程序計(jì)數(shù)器PC中的內(nèi)容為目的,以便控制程序執(zhí)行流向;位操作指令不是以字節(jié)為單位對(duì)操作數(shù)進(jìn)行操作,而是以字節(jié)中的某位為對(duì)象進(jìn)行操作。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第59頁。3.5.1控制轉(zhuǎn)移指令控制轉(zhuǎn)移指令共有17條,分為無條件轉(zhuǎn)移指令、條件轉(zhuǎn)移指令、子程序調(diào)用和返回指令、空操作指令等四類。1.無條件轉(zhuǎn)移指令這組指令共有4條。
LJMPaddr16
AJMPaddr11
SJMPrel
JMP@A+DPTR第一條指令稱為長(zhǎng)轉(zhuǎn)移指令,可以在64KB范圍內(nèi)轉(zhuǎn)移。第二條指令稱為絕對(duì)轉(zhuǎn)移指令,可以在2KB范圍內(nèi)轉(zhuǎn)移。第三條指令稱為短轉(zhuǎn)移指令,第四條指令稱為變址尋址轉(zhuǎn)移指令。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第60頁。3.5.2位操作指令
位操作指令的操作數(shù)不是字節(jié),而是字節(jié)中的某一位(其值只能是0或1),故又稱為布爾變量操作指令。位操作指令的操作對(duì)象是片內(nèi)RAM的位尋址區(qū)(20H~2FH)和SFR中的11個(gè)可以位尋址寄存器。位操作指令共有17條,分為位傳送、位置位和位清零、位運(yùn)算以及位控制轉(zhuǎn)移指令四類。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第61頁。1.位傳送指令位傳送指令共有2條。(1)MOVC,bit(2)MOVbit,C第一條指令的功能是把為地址bit中的內(nèi)容傳送到PSW中的進(jìn)位標(biāo)志位Cy。第二條指令的功能是把進(jìn)位標(biāo)志位Cy中的內(nèi)容傳送到位地址bit中。2.位置位和位清零指令這類指令共有4條。(1)CLRC(2)CLRbit(3)SETBC(4)SETBbit這類指令的功能是把進(jìn)位標(biāo)志位Cy和位地址中的內(nèi)容清零或置位。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第62頁。3.位運(yùn)算指令這類指令共6條,分為與、或、非三組,每組2條指令。(1)ANLC,bit(2)ANLC,/bit(3)ORLC,bit(4)ORLC,/bit(5)CPLC(6)CPLbit在這組指令中,除最后一條外,其余指令執(zhí)行時(shí)均不改變bit中的內(nèi)容。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第63頁。4.位控制轉(zhuǎn)移指令位控制轉(zhuǎn)移指令共有5條,分為以Cy內(nèi)容為條件的轉(zhuǎn)移指令和以位地址中的內(nèi)容為條件的轉(zhuǎn)移指令兩類。(1)以Cy中內(nèi)容為條件的轉(zhuǎn)移指令,共2條指令。
JCrel
JNCrel第一條指令的功能是當(dāng)指令執(zhí)行時(shí),機(jī)器先判斷Cy中的值。若Cy=1,則程序發(fā)生轉(zhuǎn)移;若Cy=0,則程序不轉(zhuǎn)移。第二條指令的功能與第一條指令相反。即:若Cy=1,則程序不發(fā)生轉(zhuǎn)移;若Cy=0,則程序轉(zhuǎn)移。這兩條指令是相對(duì)轉(zhuǎn)移指令,都是以Cy中的值來決定程序是否需要轉(zhuǎn)移。因此,這組指令常常與比較條件轉(zhuǎn)移指令CJNE一起使用,以便根據(jù)CJNE指令執(zhí)行過程中形成的Cy進(jìn)一步?jīng)Q定程序的流向。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第64頁。(2)以位地址中的內(nèi)容為條件的轉(zhuǎn)移指令,共3條指令。
JBbit,relJNBbit,relJBCbit,rel這三條指令可以根據(jù)位地址bit中的內(nèi)容來決定程序的流向。其中第一條指令和第三條指令的作用相同,二者區(qū)別是第三條指令JBC指令執(zhí)行后,還能把bit位清零。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第65頁。3.6匯編器的偽指令
偽指令是匯編器能力識(shí)別并對(duì)匯編過程進(jìn)行某種指示的命令。偽指令不是單片機(jī)可執(zhí)行的指令,沒有對(duì)應(yīng)的可執(zhí)行機(jī)器碼,匯編產(chǎn)生的目標(biāo)程序中不會(huì)出現(xiàn)偽指令。單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì)第3章--STC單片機(jī)的指令系統(tǒng)全文共73頁,當(dāng)前為第66頁。3.6.1狀態(tài)控制偽指令
1、起始地址設(shè)定偽指令ORG指令格式:ORG表達(dá)式該偽指令功能是說明緊接在該條指令后面的代碼或數(shù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 呼吁保護(hù)動(dòng)物的演講稿(9篇)
- 油漆施工行業(yè)的安全管理研究-洞察分析
- 文物修復(fù)與保護(hù)法律規(guī)范-洞察分析
- 虛擬現(xiàn)實(shí)技術(shù)在珠寶行業(yè)的應(yīng)用與忠誠度提升-洞察分析
- 藥物安全性評(píng)估方法-洞察分析
- 溯源技術(shù)對(duì)農(nóng)產(chǎn)品質(zhì)量提升-洞察分析
- 虛擬現(xiàn)實(shí)在建筑歷史重現(xiàn)中的應(yīng)用-洞察分析
- 虛擬現(xiàn)實(shí)縫紉設(shè)備操作模擬-洞察分析
- 太陽活動(dòng)與臭氧層變化關(guān)聯(lián)性分析-洞察分析
- 網(wǎng)絡(luò)輿情監(jiān)測(cè)分析-洞察分析
- 連續(xù)梁施工質(zhì)量通病及防治
- 機(jī)械滑臺(tái)的控制
- 羽毛球運(yùn)動(dòng)的教學(xué)理論與方法
- 海運(yùn)提單背面條款英文原版
- GB 37489.3-2019 公共場(chǎng)所設(shè)計(jì)衛(wèi)生規(guī)范 第3部分:人工游泳場(chǎng)所(高清版)
- 微重力狀態(tài)下的體重測(cè)量設(shè)計(jì)報(bào)告(共27頁)
- 運(yùn)動(dòng)特質(zhì)自信量表
- (精選)無菌檢查法
- 說一不二_《說一不二》相聲劇本
- 某電鍍車間廠區(qū)的供暖與通風(fēng)設(shè)計(jì)工業(yè)通風(fēng)課程設(shè)計(jì)word格式
- CRH3動(dòng)車組_空調(diào)系統(tǒng)
評(píng)論
0/150
提交評(píng)論