PIC系列單片機(jī)的偽指令
發(fā)布時間:2007/4/23 0:00:00 訪問次數(shù):1829
閱讀一些PIC單片機(jī)的源程序開始段,會發(fā)現(xiàn)有一些特殊指令助記符,這些助記符與指令系統(tǒng)的助記不同,沒有相對應(yīng)的操作碼,通常稱這些特殊指令助記符為偽指令。
偽指令在源程序中的作用是為完成匯編程序作各種準(zhǔn)備工作的(實際上是給PC機(jī)匯編的注釋),這些偽指令僅在匯編過程中起作用,一旦匯編結(jié)束,偽指令的使命就完成。
在匯編程序MPASM中,有四類偽指令:數(shù)據(jù)偽指令、列表偽指令、控制偽指令和宏匯編指令。
現(xiàn)在,我們將對前兩類中的常用偽指令予以說明,后兩類偽指令等到在具體程序中出現(xiàn)時,再加以說明。
(1)ORG 存放單元起始地址
格式:<標(biāo)號>ORG<地址表達(dá)式>
說明:ORG用于指定該偽指令后面的源程序存放的起始地址,也就是匯編后的目標(biāo)機(jī)器碼存放的首地址。若ORG后面不帶地址參數(shù),則默認(rèn)為0。若ORG帶標(biāo)號,則地址參數(shù)也賦值給該標(biāo)號。在一個源程序中,可以根據(jù)需要多次使用ORG偽指令來定位。
例:ORG 1FFH DELAY
GOTO MAIN MOVLM 2
;…… ……
ORG 0 END
右排接左
說明:指令末的偽指令END是通知匯編程序MPASM結(jié)束對源程序(ASM)的匯編,即使后面還有語句,也不再予以匯編。在一個源程序中必須有END偽指令,而且只能有一個END,且放在整個程序的最后。
(2)EQU 是對寄存器f和標(biāo)號賦值
格式:<標(biāo)號>EQU<表達(dá)式>
說明:給標(biāo)號或寄存器賦值,標(biāo)號一旦由EQU賦值,其值便不能再重新定義。
舉例:label EQU 0x20
注意:這里操作數(shù)中的0x表示十六進(jìn)制,即0x20相當(dāng)于20H。
(3)LIST 列表選擇指令
格式:LIST<選擇項>,…,<選擇項>
說明:用來設(shè)置各種匯編參數(shù)以控制匯編過程,或?qū)α斜砦募M(jìn)行格式化。此偽指令的所有參數(shù)只能在一行內(nèi)完成,參數(shù)的數(shù)值都用十進(jìn)制數(shù)設(shè)置。
LIST列表選擇偽指令可以選用的部分參數(shù)如下。
參數(shù)名 默認(rèn)值 作 用
f=<格式> 1NHX8M;規(guī)定固化編程文件格式(INHX16,INHX32或INHX8M)1NHX8M適于把目標(biāo)碼輸入到大多數(shù)的EPROM編程器中。
P=<類型> 無 設(shè)置微控制器類型,如16F84
r=<基數(shù)> HEX 設(shè)置常數(shù)數(shù)制的基數(shù)(如hex十六進(jìn)制;dec十進(jìn)制等)
例:LIST f=1NHX8M,r=DEC,P=16F84
(4)PROCESSOR<處理器類型>
說明:用于選擇所用微控制器的型號。
(5)INCLUDE 包含其它外部源文件
格式:INCLUDE “文件名”
INCLUDE <文件名>
說明:用于把指定文件讀入源程序中作為源程序代碼的一部分,直到檢測到文件結(jié)束符時為止,再恢復(fù)到原源程序中的代碼處。此偽指令可允許嵌套使用,最多可嵌套6層。文件名必須用雙引號或尖括號給出。
舉例:include “c:\PIC\sysdefs.inc”
include<picreg.h>
〖文章轉(zhuǎn)載或出處〗≡中國電子技術(shù)信息網(wǎng)
閱讀一些PIC單片機(jī)的源程序開始段,會發(fā)現(xiàn)有一些特殊指令助記符,這些助記符與指令系統(tǒng)的助記不同,沒有相對應(yīng)的操作碼,通常稱這些特殊指令助記符為偽指令。
偽指令在源程序中的作用是為完成匯編程序作各種準(zhǔn)備工作的(實際上是給PC機(jī)匯編的注釋),這些偽指令僅在匯編過程中起作用,一旦匯編結(jié)束,偽指令的使命就完成。
在匯編程序MPASM中,有四類偽指令:數(shù)據(jù)偽指令、列表偽指令、控制偽指令和宏匯編指令。
現(xiàn)在,我們將對前兩類中的常用偽指令予以說明,后兩類偽指令等到在具體程序中出現(xiàn)時,再加以說明。
(1)ORG 存放單元起始地址
格式:<標(biāo)號>ORG<地址表達(dá)式>
說明:ORG用于指定該偽指令后面的源程序存放的起始地址,也就是匯編后的目標(biāo)機(jī)器碼存放的首地址。若ORG后面不帶地址參數(shù),則默認(rèn)為0。若ORG帶標(biāo)號,則地址參數(shù)也賦值給該標(biāo)號。在一個源程序中,可以根據(jù)需要多次使用ORG偽指令來定位。
例:ORG 1FFH DELAY
GOTO MAIN MOVLM 2
;…… ……
ORG 0 END
右排接左
說明:指令末的偽指令END是通知匯編程序MPASM結(jié)束對源程序(ASM)的匯編,即使后面還有語句,也不再予以匯編。在一個源程序中必須有END偽指令,而且只能有一個END,且放在整個程序的最后。
(2)EQU 是對寄存器f和標(biāo)號賦值
格式:<標(biāo)號>EQU<表達(dá)式>
說明:給標(biāo)號或寄存器賦值,標(biāo)號一旦由EQU賦值,其值便不能再重新定義。
舉例:label EQU 0x20
注意:這里操作數(shù)中的0x表示十六進(jìn)制,即0x20相當(dāng)于20H。
(3)LIST 列表選擇指令
格式:LIST<選擇項>,…,<選擇項>
說明:用來設(shè)置各種匯編參數(shù)以控制匯編過程,或?qū)α斜砦募M(jìn)行格式化。此偽指令的所有參數(shù)只能在一行內(nèi)完成,參數(shù)的數(shù)值都用十進(jìn)制數(shù)設(shè)置。
LIST列表選擇偽指令可以選用的部分參數(shù)如下。
參數(shù)名 默認(rèn)值 作 用
f=<格式> 1NHX8M;規(guī)定固化編程文件格式(INHX16,INHX32或INHX8M)1NHX8M適于把目標(biāo)碼輸入到大多數(shù)的EPROM編程器中。
P=<類型> 無 設(shè)置微控制器類型,如16F84
r=<基數(shù)> HEX 設(shè)置常數(shù)數(shù)制的基數(shù)(如hex十六進(jìn)制;dec十進(jìn)制等)
例:LIST f=1NHX8M,r=DEC,P=16F84
(4)PROCESSOR<處理器類型>
說明:用于選擇所用微控制器的型號。
(5)INCLUDE 包含其它外部源文件
格式:INCLUDE “文件名”
INCLUDE <文件名>
說明:用于把指定文件讀入源程序中作為源程序代碼的一部分,直到檢測到文件結(jié)束符時為止,再恢復(fù)到原源程序中的代碼處。此偽指令可允許嵌套使用,最多可嵌套6層。文件名必須用雙引號或尖括號給出。
舉例:include “c:\PIC\sysdefs.inc”
include<picreg.h>
〖文章轉(zhuǎn)載或出處〗≡中國電子技術(shù)信息網(wǎng)
熱門點擊
- 8051單片機(jī)家族數(shù)據(jù)手冊鏈接大全
- dsPIC30F6010單片機(jī)的原理及應(yīng)用
- 一種通用的嵌入式系統(tǒng)ISP方法
- 浮點數(shù)保存代碼
- 基于FPGA/CPLD和USB技術(shù)的無損圖像
- 數(shù)字顯示器仍需處理模擬信號
- 常用PIC系列8位單片機(jī)芯片引腳符號的功能
- PIC系列單片機(jī)的偽指令
- 利用單片機(jī)PWM信號進(jìn)行舵機(jī)控制
- 產(chǎn)生低失真正弦波的CMOS六角反相器
推薦技術(shù)資料
- 硬盤式MP3播放器終級改
- 一次偶然的機(jī)會我結(jié)識了NE0 2511,那是一個遠(yuǎn)方的... [詳細(xì)]
- 分立器件&無源元件選型及工作原
- 新一代“超越EUV”光刻系統(tǒng)參
- 最新品BAT激光器制造工藝設(shè)計
- 新款汽車SoC產(chǎn)品Malibo
- 新芯片品類FPCU(現(xiàn)場可編程
- 電動汽車動力總成系統(tǒng)̴
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究