<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 單片機 >> 正文

      51單片機指令系統(tǒng)(1)

      作者:佚名    文章來源:網(wǎng)上收集    點擊數(shù):    更新時間:2008/11/4
      第十九課:匯編語言基礎(chǔ)
      所謂指令,就是規(guī)定計算機進行某種操作的命令。

      計算機按程序一條一條地依次執(zhí)行指令,從而完成指定任務(wù)。一條指令只能完成有限的功能,為使計算機完成一定的或者復(fù)雜的功能,就需要一系列指令。一般來說,一臺計算機的指令越豐富,尋址方式越多,且每條指令的執(zhí)行速度越快,則它的總體功能就越強。

      程序設(shè)計語言:
      機器語言
      匯編語言
      高級語言

      我們學習的80C51單片機共有111條指令,這111條指令共有七種尋址方式。其中:

      數(shù)據(jù)傳送類指令  29條

      算術(shù)運算類指令  24條

      邏輯運算及移位類指令  24條

      控制轉(zhuǎn)移類指令  17條

      位操作指令      17條

      這111條指令的具體功能我們在后面的課程中將會逐條的與大家進行分析。

      由于計算機只能識別二進制數(shù),所以計算機的指令均由二進制代碼組成。為了閱讀和書寫的方便,常把它寫成十六進制形式,通常稱這樣的指令為機器指令。現(xiàn)在一般的計算機都有幾十甚至幾百種指令。顯然即便用十六進制去書寫和記憶也是不容易的,為了便于記憶和使用的方便,制造廠家對指令系統(tǒng)的每一條指令都給出了助記符。助記符是根據(jù)機器指令不同的功能和操作對象來描述指令的符號。由于助記符是用英文縮寫來描述指令的特征,因此它不但便于記憶,也便于理解和分類。這種用助記符形式來表示的機器指令稱為匯編語言指令。

      匯編語言有如下特點:

      ① 助記符指令和機器指令一一對應(yīng),所以用匯編語言編寫的程序效率高,占用存儲空間小,運行速度快,因此匯編語言能編寫出最優(yōu)化的程序。

      ② 使用匯編語言編程比使用高級語言困難。因為匯編語言是面向計算機的,匯編語言的程序設(shè)計人員必須對計算機硬件有相當深入的了解。

      ③ 匯編語言能直接訪問存儲器及接口電路,也能處理中斷,因此匯編語言程序能直接管理和控制硬件設(shè)備。

      ④ 匯編語言缺乏通用性,程序不易移植,各種計算機都有自己的匯編語言,不同計算機的匯編語言之間不能通用。

      匯編指令的格式

      MCS-51匯編語言的語句格式表示如下:

        〔<標號>〕:<操作碼>〔<操作數(shù)>〕;〔<注釋>〕

        即一條匯編語句是由標號、操作碼、操作數(shù)和注釋四個部分所組成,其中方括號括起來的是可選擇部分,可有可無,視需要而定。

      指令通常兩部份組成:操作碼、操作數(shù)

      操作碼:是由助記符表示的字符串,操作碼其實就是告訴我們這條指令是起什么樣的一個功能,是加?減?傳送?還是控制?等等。

      操作數(shù):是指參加操作的數(shù)據(jù)或者是數(shù)據(jù)地址。

      注釋:為了便于我們閱讀程序,通常我們在指令的后面都會加上注釋。

      標號:用來表示子程序名稱或程序執(zhí)行條件跳轉(zhuǎn)時的程序跳轉(zhuǎn)地址,實際上是表示一個地址值。

      在80C51指令系統(tǒng)中,操作數(shù)可以是1、2、3個,也可以沒有。不同功能的指令,操作數(shù)作用也不同。例如,傳送類指令多數(shù)有兩個操作數(shù),寫在左面的稱為目的操作數(shù)(表示操作結(jié)果存放的單元地址),寫在右面的稱為源操作數(shù)(指出操作數(shù)的來源)。

      操作碼與操作數(shù)之間必須用空格分開,操作數(shù)與操作數(shù)之間必須用逗號“,”分開。帶方括號的項可有可無,稱為可選項。由指令格式可見,操作碼是指令的核心,不可缺少。

      例如一條傳送指令的書寫格式如為:MOV  A,3AH   ;(3AH)A
      它表示將3AH存儲單元的內(nèi)容送到累加器A中。

      指令的長度

      所謂指令的長度,就是描述一條指令所需要的字節(jié)數(shù),用一個字節(jié)能描述的指令我們叫1字節(jié)指令,同理,用兩個字節(jié)描述的叫2字節(jié)指令,用三個字節(jié)描述的指令就叫3字節(jié)指令。在這里我們對80C51的111條指令進行了分類:
      1字節(jié)指令共有49條
      2字節(jié)指令共有45條
      3字節(jié)指令共有17條
      到底哪條指令是1字節(jié)、2字節(jié)或者3字節(jié)指令,在我們后面的指令表中都可以查閱到的。

      這里有一個問題請大家引起注意,在前面的課程中,我們學習過指令計數(shù)器PC,PC是一個16位的計數(shù)器,那么這個指令計數(shù)器是怎樣來計數(shù)的呢?我們的指令有1字節(jié)、2字節(jié)、3字節(jié)指令。是不是每執(zhí)行一個字節(jié),這個指令計數(shù)器PC就自動加1?答案是錯誤的!!實際上,PC始終是跟蹤著指令的,并不是以字節(jié)數(shù)來相加。在我們存放程序的ROM中,是一個字節(jié)一個字節(jié)的向后執(zhí)行,但程序計數(shù)器PC并不是每加一個字節(jié)就加1,它是對特定的某一條指令執(zhí)行完了之后,相應(yīng)的程序計數(shù)器PC才加1,那么這條指令可能是1個字節(jié),也可能是2個或者3個字節(jié)。這個大家要引起重視。

      在學習指令系統(tǒng)時,先要了解某些符號的意義,現(xiàn)說明如下:

      Rn        :當前選中的工作寄存器組R0-R7(n=0-7)。它在片內(nèi)數(shù)據(jù)存儲器中的地址由PSW中的RS1和RS0確定,可以是00H-07H(第0組)、08H-0FH(第1組)、10H-17H(第2組)、18H-1FH(第3組)。

      Ri        :當前選中的工作寄存器組中可作為地址指針的兩個工作寄存器R0和R1(i=0或i=1)。它在片內(nèi)數(shù)據(jù)存儲器中的地址由RS0及RS1確字,分別為00H、01H;08H、09H;10H、11H;18H、19H。

      Direct    :8位片內(nèi)RAM單元(包含SFR)的直接地址

      #data     :代表指令中8位的常量數(shù)據(jù)

      #data16   :代表指令中16位的常量數(shù)據(jù)

      addr16    :LCALL與LJMP所使用的16位目的地址

      addr11    :ACALL與AJMP所使用的11位目的地址

      rel       :指程序遇條件跳躍時的相對地址,往前最多可以跳128個字節(jié),往后最多可以跳127個字節(jié)。

      bit       :特殊目的寄存器或內(nèi)部數(shù)據(jù)RAM中可直接尋址的位。

      @         :間接尋址方式中,表示間址寄存器的符號

      /         :位操作指令中,表示對該位先取反再參與操作,但不影響該位原值。

      X         :片內(nèi)RAM的直接地址或寄存器

      (X)     :在址接尋址方式中,表示直接地址X中的內(nèi)容;在間接尋址方式中,表示由間址寄存器X指出的地址單元中的內(nèi)容。

      →       :指令操作流程,將箭頭左邊的內(nèi)容送入箭頭右邊的單元內(nèi)。



      ←       :指令操作流程,將箭頭右邊的內(nèi)容送入箭頭左邊的單元內(nèi)。
      Tags:單片機開發(fā),倒計時器,倒計時設(shè)計,電路設(shè)計  
      責任編輯:admin
    4. 上一篇文章:
    5. 下一篇文章:
    6. 相關(guān)文章列表
      單片機倒計時定時器
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網(wǎng)友評論
      最新推薦
      關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 天天狠狠色综合图片区| 天天影视色香欲综合免费| 色婷婷久久综合中文网站 | 久久综合九色综合网站 | 亚洲国产成人九九综合| 亚洲国产欧洲综合997久久| 国产精品综合视频| 青青热久久综合网伊人| 综合久久久久久久综合网| 丁香婷婷色五月激情综合深爱 | 亚洲人成依人成综合网| 四月婷婷七月婷婷综合| 婷婷成人丁香五月综合激情 | 亚洲熟女综合色一区二区三区 | 一本色道久久鬼综合88| 色狠台湾色综合网站| 久久婷婷五月综合成人D啪| 亚洲狠狠色丁香婷婷综合| 久久91精品久久91综合| 亚洲伊人久久综合中文成人网| 久久综合给合久久狠狠狠97色69| 色综合合久久天天给综看| 色综合天天综合网站中国| 亚洲综合图色40p| 六月丁香婷婷综合| 久久久久久青草大香综合精品| 色综合67194| 狠狠色成人综合网图片区| 久久综合九色综合网站| 国产精品综合色区在线观看| 亚洲综合色自拍一区| 亚洲香蕉网久久综合影视| 亚洲综合熟女久久久30p| 青青青伊人色综合久久| 天天综合网色中文字幕| 国产成人综合在线观看网站| 一本久道综合在线无码人妻| 狠狠色综合网久久久久久| 热综合一本伊人久久精品 | 亚洲私人无码综合久久网| 国产精品免费综合一区视频|