新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > PIC系列單片機的偽指令

        PIC系列單片機的偽指令

        作者: 時間:2011-02-22 來源:網(wǎng)絡 收藏
        閱讀一些PIC的源程序開始段,會發(fā)現(xiàn)有一些特殊指令助記符,這些助記符與指令系統(tǒng)的助記不同,沒有相對應的操作碼,通常稱這些特殊指令助記符為偽指令。
          偽指令在源程序中的作用是為完成匯編程序作各種準備工作的(實際上是給PC機匯編的注釋),這些偽指令僅在匯編過程中起作用,一旦匯編結(jié)束,偽指令的使命就完成。
          在匯編程序MPASM中,有四類偽指令:數(shù)據(jù)偽指令、列表偽指令、控制偽指令和宏匯編指令。
          現(xiàn)在,我們將對前兩類中的常用偽指令予以說明,后兩類偽指令等到在具體程序中出現(xiàn)時,再加以說明。
          (1)ORG 存放單元起始地址
          格式:標號>ORG地址表達式>
          說明:ORG用于指定該偽指令后面的源程序存放的起始地址,也就是匯編后的目標機器碼存放的首地址。若ORG后面不帶地址參數(shù),則默認為0。若ORG帶標號,則地址參數(shù)也賦值給該標號。在一個源程序中,可以根據(jù)需要多次使用ORG偽指令來定位。
          例:ORG1FFH     DELAY
           GOTO MAIN        MOVLM 2
           ;……         ……
          ORG0          END
                        右排接左
          說明:指令末的偽指令END是通知匯編程序MPASM結(jié)束對源程序(ASM)的匯編,即使后面還有語句,也不再予以匯編。在一個源程序中必須有END偽指令,而且只能有一個END,且放在整個程序的最后。
          (2)EQU 是對寄存器f和標號賦值
          格式:標號>EQU表達式>
          說明:給標號或寄存器賦值,標號一旦由EQU賦值,其值便不能再重新定義。
          舉例:labelEQU0x20
          注意:這里操作數(shù)中的0x表示十六進制,即0x20相當于20H。
          (3)LIST 列表選擇指令
          格式:LIST選擇項>,…,選擇項>
          說明:用來設置各種匯編參數(shù)以控制匯編過程,或?qū)α斜砦募M行格式化。此偽指令的所有參數(shù)只能在一行內(nèi)完成,參數(shù)的數(shù)值都用十進制數(shù)設置。
          LIST列表選擇偽指令可以選用的部分參數(shù)如下。
        參數(shù)名  默認值    作  用
        f=格式> 1NHX8M;規(guī)定固化編程文件格式(INHX16,INHX32或INHX8M)1NHX8M適于把目標碼輸入到大多數(shù)的EPROM編程器中。
        P=類型>無  設置類型,如16F84
        r=基數(shù)>HEX設置常數(shù)數(shù)制的基數(shù)(如hex十六進制;dec十進制等)
          例:LIST f=1NHX8M,r=DEC,P=16F84
          (4)PROCESSOR處理器類型>
          說明:用于選擇所用的型號。
          (5)INCLUDE 包含其它外部源文件
          格式:INCLUDE “文件名”
          INCLUDE 文件名>
          說明:用于把指定文件讀入源程序中作為源程序代碼的一部分,直到檢測到文件結(jié)束符時為止,再恢復到原源程序中的代碼處。此偽指令可允許嵌套使用,最多可嵌套6層。文件名必須用雙引號或尖括號給出。
          舉例:include “c:PICsysdefs.inc”
            includepicreg.h>


        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 呼伦贝尔市| 夏邑县| 德化县| 龙山县| 二连浩特市| 涟水县| 罗甸县| 万荣县| 阆中市| 黔西| 永清县| 宜昌市| 潜江市| 贵定县| 神木县| 疏勒县| 同心县| 博湖县| 和硕县| 凤庆县| 万盛区| 射洪县| 从化市| 鸡西市| 忻州市| 小金县| 江阴市| 巴里| 通山县| 吉林市| 黔西县| 长宁区| 麻江县| 大宁县| 徐闻县| 科技| 安新县| 广汉市| 泸水县| 屏东县| 丰原市|