在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > MCS-51單片機指令系統(tǒng)概述 2

      MCS-51單片機指令系統(tǒng)概述 2

      作者: 時間:2016-11-26 來源:網絡 收藏
      MCS-51邏輯運算及移位指令杭州電子元件郵購網地址:www.hpoo.net

      邏輯運算和移位指令共有25條,有與、或、異或、求反、左右移位、清0等邏輯操作,有直接、寄存器和寄存器間址等尋址方式。這類指令一般不影響程序狀態(tài)字(PSW)標志。

      [1].循環(huán)移位指令(4條)
      這4條指令的作用是將累加器中的內容循環(huán)左或右移一位,后兩條指令是連同進位位CY一起移位。

      RL A;累加器A中的內容左移一位
      RR A;累加器A中的內容右移一位
      RLC A;累加器A中的內容連同進位位CY左移一位
      RRC A;累加器A中的內容連同進位位CY右移一位調頻FM發(fā)射話筒制作套件

      [2].累加器半字節(jié)交換指令(1條)
      這條指令是將累加器中的內容高低半字節(jié)互換,這在上一節(jié)中內容已有介紹。

      SWAP A; 累加器中的內容高低半字節(jié)互換

      [3].求反指令(1條)
      這條指令將累加器中的內容按位取反。

      CPL A; 累加器中的內容按位取反

      [4].清零指令(1條)
      這條指令將累加器中的內容清0。

      CLR A; 0→(A),累加器中的內容清0

      本文引用地址:http://www.biyoush.com/article/201611/321693.htm

      電子元件郵購



      [5].邏輯與操作指令(6條)
      這組指令的作用是將兩個單元中的內容執(zhí)行邏輯與操作。如果直接地址是I/O地址,則為“讀—修改—寫”操作。

      ANL A,data;累加器A中的內容和直接地址單元中的內容執(zhí)行與邏輯操作。結果存在寄存器A中。
      ANL data,#data;直接地址單元中的內容和立即數(shù)執(zhí)行與邏輯操作。結果存在直接地址單元中。
      ANL A,#data;累加器A的內容和立即數(shù)執(zhí)行與邏輯操作。結果存在累加器A中。
      ANL A,Rn;累加器A的內容和寄存器Rn中的內容執(zhí)行與邏輯操作。結果存在累加器A中。

      單片機編程器 HPOO


      ANL data,A;直接地址單元中的內容和累加器A的內容執(zhí)行與邏輯操作。結果存在直接地址單元中。
      ANL A,@Ri;累加器A的內容和工作寄存器Ri指向的地址單元中的內容執(zhí)行與邏輯操作。結果存在累加器A中。

      [6].邏輯或操作指令(6條)
      這組指令的作用是將兩個單元中的內容執(zhí)行邏輯或操作。如果直接地址是I/O地址,則為“讀—修改—寫”操作。

      ORL A,data;累加器A中的內容和直接地址單元中的內容執(zhí)行邏輯或操作。結果存在寄存器A中。
      ORL data,#data;直接地址單元中的內容和立即數(shù)執(zhí)行邏輯或操作。結果存在直接地址單元中。

      調頻FM發(fā)射話筒制作套件


      ORL A,#data;累加器A的內容和立即數(shù)執(zhí)行邏輯或操作。結果存在累加器A中。
      ORL A,Rn;累加器A的內容和寄存器Rn中的內容執(zhí)行邏輯或操作。結果存在累加器A中。
      ORL data,A;直接地址單元中的內容和累加器A的內容執(zhí)行邏輯或操作。結果存在直接地址單元中。
      ORL A,@Ri;累加器A的內容和工作寄存器Ri指向的地址單元中的內容執(zhí)行邏輯或操作。結果存在累加器A中。

      [7].邏輯異或操作指令(6條)
      這組指令的作用是將兩個單元中的內容執(zhí)行邏輯異或操作。如果直接地址是I/O地址,則為“讀—修改—寫”操作。

      電子制作 HPOO



      XRL A,data;累加器A中的內容和直接地址單元中的內容執(zhí)行邏輯異或操作。結果存在寄存器A中。
      XRL data,#data;直接地址單元中的內容和立即數(shù)執(zhí)行邏輯異或操作。結果存在直接地址單元中。
      XRL A,#data;累加器A的內容和立即數(shù)執(zhí)行邏輯異或操作。結果存在累加器A中。
      XRL A,Rn;累加器A的內容和寄存器Rn中的內容執(zhí)行邏輯異或操作。結果存在累加器A中。
      XRL data,A;直接地址單元中的內容和累加器A的內容執(zhí)行邏輯異或操作。結果存在直接地址單元中。單片機學習 HPOO
      XRL A,@Ri;累加器A的內容和工作寄存器Ri指向的地址單元中的內容執(zhí)行邏輯異或操作。結果存在累加器A中。電子制作 HPOO

      MCS-51控制轉移指令電子制作 HPOO

      控制轉移指令用于控制程序的流向,所控制的范圍即為程序存儲器區(qū)間,MCS-51系列單片機的控制轉移指令相對豐富,有可對64kB程序空間地址單元進行訪問的長調用、長轉移指令,也有可對2kB字節(jié)進行訪問的絕對調用和絕對轉移指令,還有在一頁范圍內短相對轉移及其它無條件轉移指令,這些指令的執(zhí)行一般都不會對標志位有影響。

      [1].無條件轉移指令(4條)
      這組指令執(zhí)行完后,程序就會無條件轉移到指令所指向的地址上去。長轉移指令訪問的程序存儲器空間為16地址64kB,絕對轉移指令訪問的程序存儲器空間為11位地址2kB空間。

      LJMP addr16;addr16→(PC),給程序計數(shù)器賦予新值(16位地址)

      AJMP addr11;(PC)+2→(PC),addr11→(PC10-0)程序計數(shù)器賦予新值(11位地址),(PC15-11)不改變單片機設計

      SJMP rel;(PC)+ 2 + rel→(PC)當前程序計數(shù)器先加上2再加上偏移量給程序計數(shù)器賦予新值

      JMP @A+DPTR;(A)+ (DPTR)→(PC),累加器所指向地址單元的值加上數(shù)據指針的值給程序計數(shù)器賦予新值

      [2].條件轉移指令(8條)
      程序可利用這組豐富的指令根據當前的條件進行判斷,看是否滿足某種特定的條件,從而控制程序的轉向。

      JZ rel; A=0,(PC)+ 2 + rel→(PC),累加器中的內容為0,則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      單片機學習 HPOO



      JNZ rel; A≠0,(PC)+ 2 + rel→(PC),累加器中的內容不為0,則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      CJNE A, data, rel; A≠(data),(PC)+ 3 + rel→(PC),累加器中的內容不等于直接地址單元的內容,則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      CJNE A, #data, rel; A≠#data,(PC)+ 3 + rel→(PC),累加器中的內容不等于立即數(shù),則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      CJNE Rn, #data, rel; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Rn中的內容不等于立即數(shù),則轉移到偏移量所指向的地址,否則程序往下執(zhí)行單片機學習 HPOO

      CJNE @Ri, #data, rel; A≠#data,(PC)+ 3 + rel→(PC),工作寄存器Ri指向地址單元中的內容不等于立即數(shù),則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      DJNZ Rn, rel; (Rn)-1→(Rn),(Rn)≠0,(PC)+ 2 + rel→(PC)工作寄存器Rn減1不等于0,則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      DJNZ data, rel; (Rn)-1→(Rn),(Rn)≠0,(PC)+ 2 + rel→(PC)直接地址單元中的內容減1不等于0,則轉移到偏移量所指向的地址,否則程序往下執(zhí)行

      [3].子程序調用指令(1條)
      子程序是為了便于程序編寫,減少那些需反復執(zhí)行的程序占用多余的地址空間而引入的程序分支,從而有了主程序和子程序的概念,需要反復執(zhí)行的一些程序,我們在編程時一般都把它們編寫成子程序,當需要用它們時,就用一個調用命令使程序按調用的地址去執(zhí)行,這就需要子程序的調用指令和返回指令。
      電子制作 HPOO


      LCALL addr16; 長調用指令,可在64kB空間調用子程序。此時(PC)+ 3→(PC),(SP)+ 1→(SP),(PC7-0)→(SP),(SP)+ 1→(SP),(PC15-8)→(SP),addr16→(PC),即分別從堆棧中彈出調用子程序時壓入的返回地址

      ACALL addr11; 絕對調用指令,可在2kB空間調用子程序,此時(PC)+ 2→(PC),(SP)+ 1→(SP),(PC7-0)→(SP),(SP)+ 1→(SP),(PC15-8)→(SP),addr11→(PC10-0)

      RET; 子程序返回指令。此時(SP)→(PC15-8),(SP)- 1→(SP),(SP)→(PC7-0),(SP)- 1→(SP)

      RETI; 中斷返回指令,除具有RET功能外,還具有恢復中斷邏輯的功能,需注意的是,RETI指令不能用RET代替杭州電子元件郵購網地址:www.hpoo.net

      [4].空操作指令(1條)
      這條指令將累加器中的內容清0。

      NOP; 這條指令除了使PC加1,消耗一個機器周期外,沒有執(zhí)行任何操作。可用于短時間的延時

      電子制作 HPOO

      MCS-51布爾變量操作指令調頻FM發(fā)射話筒制作套件

      布爾處理功能是MCS-51系列單片機的一個重要特征,這是出于實際應用需要而設置的。布爾變量也即開關變量,它是以位(bit)為單位進行操作的。

      在物理結構上,MCS-51單片機有一個布爾處理機,它以進位標志做為累加位,以內部RAM可尋址的128個為存儲位。

      既然有布爾處理機功能,所以也就有相應的布爾操作指令集,下面我們分別談論。

      [1].位傳送指令(2條)
      位傳送指令就是可尋址位與累加位CY之間的傳送,指令有兩條。

      MOV C,bit;bit→CY,某位數(shù)據送CY

      MOV bit,C;CY→bit,CY數(shù)據送某位

      推薦電子制作郵購網站:www.hpoo.net



      [2].位置位復位指令(4條)
      這些指令對CY及可尋址位進行置位或復位操作,共有四條指令。

      CLR C; 0→CY,清CY

      CLR bit; 0→bit,清某一位

      SETB C; 1→CY,置位CY

      SETB bit; 1→bit,置位某一位

      [3].位運算指令(6條)調頻FM發(fā)射話筒制作套件
      位運算都是邏輯運算,有與、或、非三種指令,共六條。

      ANL C,bit;(CY)∧(bit)→CY

      ANL C,/bit;(CY)∧()→CY

      ORL C,bit;(CY)∨(bit)→CY

      ORL C,/bit;(CY)∧()→CY

      CPL C;()→CY

      杭州電子元件郵購網地址:www.hpoo.net



      CPL bit;()→bir

      [4].位控制轉移指令(5)
      位控制轉移指令是以位的狀態(tài)作為實現(xiàn)程序轉移的判斷條件,介紹如下:

      JC rel; (CY)=1轉移,(PC)+2+rel→PC,否則程序往下執(zhí)行,(PC)+2→PC。

      JNC rel; (CY)=0轉移,(PC)+2+rel→PC,否則程序往下執(zhí)行,(PC)+2→PC。

      JB bit, rel; 位狀態(tài)為1轉移。
      調頻FM發(fā)射話筒制作套件


      JNB bit, rel; 位狀態(tài)為0轉移。

      JBC bit, rel; 位狀態(tài)為1轉移,并使該位清“0”。

      后三條指令都是三字節(jié)指令,如果條件滿足,(PC)+3+rel→PC,否則程序往下執(zhí)行,(PC)+3→PC。



      評論


      相關推薦

      技術專區(qū)

      關閉