




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計丁躍軍丁躍軍 來清民等來清民等 編著編著第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計第二章第二章 PICPIC單片機指令系統(tǒng)和匯編言語程序設(shè)計單片機指令系統(tǒng)和匯編言語程序設(shè)計2.1指令系統(tǒng)概述 2.2字節(jié)操作指令 2.3位操作指令 2.4 簡單程序設(shè)計 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.1 指令的表示方法1機器指令的表示方法 指令用于規(guī)定計算機的根本操作。一臺計算機所能執(zhí)行的
2、指令集合就是它的指令系統(tǒng)。 指令共有兩種表示方法,分別是機器言語表示方法和匯編言語表示方法。不同種類的單片機有不同的一套命令(即所謂“指令系統(tǒng))。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2.1.1 指令的表示方法1機器指令的表示方法B13B0操作碼操作碼操作數(shù)操作數(shù)第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.1 指令的表示方法2匯編言語的表示方法 匯編言語是對機器言語的改良,它采用便于人們記憶的一些符號例如簡化的英文單詞來表示操作碼、操作數(shù)和地址碼
3、等。通常把表示指令的符號稱之為助記符。 MOVF 20H,0 ;ANDLW0FHMOVWF 21H第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.1 指令的表示方法3.PIC16F87X單片機指令 PIC16F87X單片機采用精簡指令集RISC構(gòu)造,指令效率高,功能強。它的指令為單字的寬字位14指令,由此生成的程序代碼短。指令條數(shù)少,僅有35條。 (1)面向字節(jié)操作類(2)面向位操作類(3)常數(shù)操作和控制類操作。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2
4、.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 1 1存放器間接尋址存放器間接尋址 所謂存放器間接尋址指的是經(jīng)過存放器所謂存放器間接尋址指的是經(jīng)過存放器F0F0、F4F4來實現(xiàn)。實踐的存放器地址放在來實現(xiàn)。實踐的存放器地址放在F4F4的低的低5 5位中,位中,經(jīng)過經(jīng)過F0F0來進展間接尋址。來進展間接尋址。 INDFINDF不是物理上實踐不是物理上實踐存在的存放器,而任何尋址存在的存放器,而任何尋址INDFINDF的指令都是以的指令都是以FSRFSR存放器內(nèi)容為地址的存放器內(nèi)容為地址的RAMRAM單元中存放著參與單元中存放著參與運算或操作的數(shù)據(jù)。運算或操作的數(shù)據(jù)。
5、第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 1 1存放器間接尋址存放器間接尋址 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.2 PIC單片機指令的尋址方式 2立刻數(shù)尋址 所謂立刻尋址就是操作數(shù)在指令中直接給出。通常把出如今指令中的操作數(shù)稱之為立刻數(shù),因此就把這種尋址方式稱之為立刻尋址。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2
6、.1 指令系統(tǒng)概述2.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 2 2立刻數(shù)尋址立刻數(shù)尋址立刻數(shù)尋址立刻數(shù)尋址第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 3 3直接尋址直接尋址 指令中操作數(shù)以其所在存儲單元地址的方式指令中操作數(shù)以其所在存儲單元地址的方式給出,就稱之為直接尋址。這種方式是對任何給出,就稱之為直接尋址。這種方式是對任何一存放器直接尋址訪問。一存放器直接尋址訪問。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯
7、編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 3 3直接尋址直接尋址第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述2.1.2 PIC2.1.2 PIC單片機指令的尋址方式單片機指令的尋址方式 4 4位尋址位尋址 這種尋址方式是對存放器中的任一位這種尋址方式是對存放器中的任一位bitbit進展操作進展操作 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計第二章第二章 PICPIC單片機指令系統(tǒng)和
8、匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.3 指令符號的意義闡明1. PIC匯編言語指令格式 PIC系列微控制器匯編言語指令與MCS51系列單片機匯編言語一樣,每條匯編言語指令由4個部分組成,其書寫格式如下:標號操作碼助記符操作數(shù)1,操作數(shù)2;注釋 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.1 指令系統(tǒng)概述 2.1.3 指令符號的意義闡明2.指令符號的意義闡明 在PIC系列單片機指令中常把數(shù)據(jù)存儲器RAM當作存放器來運用(處置)并用字母f(或F)表示。 d 代表操作數(shù)的目的選擇,定義d=0,結(jié)果存入W;d=
9、1結(jié)果存入(文件)存放器f,當運用匯編程序指令d缺省時,默許d=1。b代表(文件)存放器(8位)的位地址(07取值)。如存放器的8位為b7、b6b1、b0,假設(shè)b=1代表存放器的第b1位。字母符號k代表立刻數(shù)、常數(shù)和數(shù)據(jù)標號。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.2 字節(jié)操作 指令PIC16F87XPIC16F87X系列單片機字節(jié)操作系列單片機字節(jié)操作 指令詳解指令詳解 見下面表格見下面表格第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.3 位操作 指令PIC16F87XPIC16F87X系
10、列單片機位操作系列單片機位操作 指令詳解指令詳解 見下面表格見下面表格第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計表表2-1 PIC16F87X2-1 PIC16F87X單片機指令集單片機指令集數(shù)據(jù)傳送類指令數(shù)據(jù)傳送類指令指令助記符指令助記符功能簡述功能簡述周期周期14位指令字位指令字影響的形狀位影響的形狀位MOLW k立刻數(shù)立刻數(shù)k k送入存放送入存放器器W W1110 xx k k k k k k k kMOVWF fW送入送入f存放器存放器100 0000 1ffff ffffMOVFf,df送入送入f或或W100 1000dfff ffff
11、ZSWAPF f,df存放器半字節(jié)交存放器半字節(jié)交換換100 1110 dfff ffffADDLWkW加立刻數(shù)加立刻數(shù)k,結(jié),結(jié)果送入果送入W或或f111 111xkkkk kkkkOV,C,DC,ZADDWFf,dW加加f,結(jié)果送入,結(jié)果送入W或或f100 0111dfff ffffOV,C,DC,Z第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計算術(shù)操作類指令算術(shù)操作類指令指令助記符指令助記符功能簡述功能簡述周期周期 影響的形狀位影響的形狀位DECF f,df減減1100 0011 dfff ffffZDECFSZ f,df減減1,為,為0間跳間
12、跳1200 1011 dffff ffffINCF f,df加加1100 1010dfff ffffZINCFSZ f,df加加1,為,為0間跳間跳1200 1111 dfff ffffSUBLW k立刻數(shù)立刻數(shù)k減減W結(jié)果結(jié)果送入送入W或或f111110 xkkkkkkkkOV,C,DC,ZSUBWF f,df減減W,結(jié)果送入,結(jié)果送入或或f100 0010 dfff ffffOV,C,DC,Z第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計邏輯操作類指令邏輯操作類指令指令助記符指令助記符功能簡述功能簡述周期周期14位指令字位指令字影響的形狀影響的形
13、狀位位ANDLW k立刻數(shù)與立刻數(shù)與W,結(jié)果送入結(jié)果送入W111 1001 kkkk kkkkZANDWF f,df與與W,結(jié)果送,結(jié)果送入入W或或f100 0101dfff ffffZCLRF ff清清0100 0001 1fff ffffZCLRWW清清0100 0001 0 xxx xxxxZCOMF f,df取反取反100 1001 dfff ffffZ第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計IORLW kk或或W,結(jié)果,結(jié)果送入送入W111 1000 kkkk kkkkZIORWF f,df或或W,結(jié)果送,結(jié)果送入入W或或f100 0
14、100 dfff ffffZRLF f,df帶進位帶進位C循環(huán)循環(huán)左移左移100 1101dfff ffffCRRF f,df帶進位帶進位C循環(huán)循環(huán)右移右移100 1100dfff ffffCXORLW k立刻數(shù)或立刻數(shù)或W,結(jié)果送入結(jié)果送入W111 1010 kkkk kkkkZXORWF f,df異或異或W,結(jié)果,結(jié)果送入送入W和和f100 0110 dfff ffffZ第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計PDTO,控制轉(zhuǎn)移類指令控制轉(zhuǎn)移類指令指令助記符指令助記符功能簡述功能簡述周期周期14位指令字位指令字影響的形影響的形狀位狀位CLR
15、WDT去除去除WDT定時定時器器100 0000 0110 0100 CALL k調(diào)用子程序調(diào)用子程序210 0 kkk kkkk kkkk GOTO k無條件跳轉(zhuǎn)無條件跳轉(zhuǎn)211 1000 kkkk kkkk第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計NOP空操作空操作100 0000 0 xx 0000OPTION寫寫OPTION存放存放器器100 0000 0110 0010RETFIE中斷前往中斷前往200 0000 0000 1001DLINTDRETLW k常數(shù)送常數(shù)送W,子,子程序前往程序前往211 01xx kkkk kkkkRET
16、URN子程序前往子程序前往200 0000 0000 1000SLEEP進入休眠形狀進入休眠形狀100 0000 0110 0011 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計位操作類指令位操作類指令指令助記符指令助記符功能簡述功能簡述周期周期14位指令字位指令字影響的形狀影響的形狀位位BCF f,b去除去除f存放器的存放器的b位位101 00bb bfff ffffBSF f,b置置f存放器的存放器的b位位101 01bb bfff ffffBTFSC f,bf存放器的存放器的b位為位為0間距間距1201 10bb bfff ffffBTFSS
17、 f,bf存放器的存放器的b位產(chǎn)位產(chǎn)為為0間距間距1201 11bb bfff ffff第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.1 匯編言語程序設(shè)計知識1匯編言語源程序的構(gòu)造 匯編言語提供了一種不涉及實踐存儲器地址和機器指令編碼的編寫源程序的有效方法。 我們需求掌握的是: 匯編言語的程序格式、語句格式、助記符、偽指令。 程序的4種根本構(gòu)造: 順序、分支、循環(huán)和子程序。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.
18、4.1 匯編言語程序設(shè)計知識2PIC 匯編言語的程序流程圖 1程序流程圖常用的圖形符號 圓角矩形框為起始 /終止框,表示一個程序的開場或終了。 矩形框為義務(wù)框,表示要處置的義務(wù)。 菱形框為判別框,表示要判別的要素,判別結(jié)果將導致程序走入不同的分支。 指向線為帶有箭頭的線段,表示程序的走向。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.1 匯編言語程序設(shè)計知識2PIC 匯編言語的程序流程圖 (2)程序流程圖的畫法順序程序構(gòu)造 順序程序構(gòu)造在流程圖中表示為義務(wù)框一個一個地串行銜接。在計算機執(zhí)行程序
19、時表現(xiàn)為,從頭至尾嚴厲按照次序一條語句一條語句地順序執(zhí)行,并且每一條語句均被執(zhí)行一遍。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.1 匯編言語程序設(shè)計知識2PIC 匯編言語的程序流程圖分支程序流程圖 分支程序流程圖包含1個判別框和兩個或兩個以上的出口。從而構(gòu)成程序的2個或多個分支 .第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.1 匯編言語程序設(shè)計知識2PIC 匯編言語的程序流程圖循環(huán)程序流
20、程圖 循環(huán)程序的構(gòu)造包含以下4個組成部分: 循環(huán)初始化部分:為循環(huán)程序作預(yù)備。如循環(huán)變量設(shè)置,即指定或定義一個循環(huán)變量作循環(huán)次數(shù)計數(shù)器或地址指針,并給它設(shè)置一個初始值。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.1 匯編言語程序設(shè)計知識2PIC 匯編言語的程序流程圖循環(huán)體:要求反復(fù)執(zhí)行的程序段,即循環(huán)程序的主體部分。循環(huán)控制部分:循環(huán)控制就是根據(jù)循環(huán)終了條件,判別能否跳出循環(huán)。終了部分:對循環(huán)結(jié)果進展分析、處置和保管。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)
21、和匯編語言程序設(shè)計第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令 用來編寫匯編言語源程序的語句,主要是指令助記符,其次就是偽指令。所謂偽指令就是“假指令的意思,不是單片機的指令系統(tǒng)中的真實指令。偽指令與指令系統(tǒng)中的助記符的不同之處是沒有機器碼與它對應(yīng)。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令最常用的偽指令引見 1INCLODE 功
22、能: 讀入外部源文件 格式:INCLUDE 闡明:用于把指定文件讀入源程序中作為源程序代碼的一部分。文件名必需用雙引號或尖括號給出,假設(shè)被指定文件非當前任務(wù)目錄下,那么需求指令完好的途徑。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令最常用的偽指令引見(2) EQU 功能: 對標號賦值格式: EQU 闡明:使 EQU 兩端的8位值相等,即給標號賦予一個特定值或者說是給標號定義一個數(shù)值。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語
23、言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令最常用的偽指令引見(3) #DEFINE 功能:定義文本交換標號格式:#DEFINE闡明:用于定義文本交換標號,在匯編時把源代碼中的交換成。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令最常用的偽指令引見(4) ORG 功能: 存放程序單元的起始地址格式:標號 ORG 闡明:用于指定該偽指令后面的源程序存放的起始地址,也就是匯編后的機器碼目的程序在單片機的程序存儲器中開場
24、存放的首地址。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4 匯編言語程序設(shè)計2.4.2 PIC 匯編言語的偽指令最常用的偽指令引見(5) END 功能:程序終了偽指令格式:END 闡明: 這條偽指令通知匯編器 MPASM終了對源程序(.ASM)的匯編,即使在后面還有語句,也將不予繼續(xù)匯編。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.3 PIC 匯編言語程序設(shè)計根底1設(shè)置 I/O 口的輸入/輸出方向2檢查存放器能否為零 3.比較二個存放
25、器的大小 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.4 數(shù)據(jù)傳送程序的設(shè)計 數(shù)據(jù)傳送程序設(shè)計是最根本的程序設(shè)計,也是最常用的匯編程序設(shè)計。但是PIC單片機的數(shù)據(jù)傳送程序和其他的單片機不同,由于PIC單片機的數(shù)據(jù)存儲器RAM分成4個存儲區(qū),所以對PIC單片機來說,設(shè)計數(shù)據(jù)傳送程序時應(yīng)該隨時留意存儲區(qū)的選擇,否那么數(shù)據(jù)傳送達不到目的。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.4 數(shù)據(jù)傳送程序的設(shè)計【2-43】用直接尋址方式分別向4個存
26、儲區(qū)的0 x B0、0 x30、ox130、0 x1 B0傳送數(shù)據(jù)。;選擇存儲區(qū)0,直接尋址單元0 xB0實踐對應(yīng)到0 x30單元CLRFSTATUSMOVLW 0 xF0 MOVWF 0 x30MOVLW 0 x0FMOVWF 0 xB0第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 ;選擇存儲區(qū)1,直接尋址單元0 x30實踐對應(yīng)到0 xB0單元BSF STATUS,RP0MOVLW 0 xF1MOWWF 0 x30MOVLW 0 x1FMOVWF 0 xB0第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指
27、令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.5 算術(shù)邏輯運算程序的設(shè)計根本算術(shù)運算有:定點數(shù)、 浮點數(shù)運算; 無符號數(shù)、 有符號數(shù)運算等。邏輯運算- 邏輯運算包括:邏輯異或、邏輯與、邏輯或;1加法運算:二進制加法運算,可直接運用加法指令:ADDWF 或 ADDLW BCD加法運算 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.6 延時程序的設(shè)計1簡單延時程序的編寫 假設(shè)延時時間較短,可以讓程序簡單地延續(xù)執(zhí)行幾條空操作指令“NOP。假設(shè)延時時間長,可以用循環(huán)來實現(xiàn)。2延時程序的延時時間計算 延時程序中計算
28、指令執(zhí)行的時間和即為延時時間。假設(shè)運用4MHz振蕩,那么每個指令周期為1S。所以單周期指令時間為1S,雙周期指令時間為2S。在上例的LOOP循環(huán)延時時間即為:1+2*100+2=302S。在循環(huán)中插入空操作指令即可延伸延時時間。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.7 查表程序 查表程序常用于數(shù)據(jù)補償,非線性修正,求非函數(shù)和代碼轉(zhuǎn)換,這種方法就不需求計算,速度又快,而且實現(xiàn)容易。查表程序用得恰當能夠,大大簡化程序設(shè)計帶極大方便。 在單片微機中,要對程序存儲器的數(shù)據(jù)進展訪問,必需用讀表操作。而PIC系列MCU
29、沒有查表指今,PIC的查表程序是利用子程序帶值前往的特點來實現(xiàn)。詳細是在主程序中先取表數(shù)據(jù)地址放入W,接著調(diào)用子程序,子程序的第一條指令將W置入PC,那么程序跳到數(shù)據(jù)地址的地方,再由“RETLW指令將數(shù)據(jù)放入W前往到主程序。表格程序是經(jīng)過一偏移量來修正PC值,由一條帶參數(shù)前往指令實現(xiàn)。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計 2.4.8 子程序設(shè)計 在編程過程中,經(jīng)常會遇到一些完全一樣的計算和操作,例如求各種數(shù)據(jù)的加減乘除運算、代碼轉(zhuǎn)換和延時等。假設(shè)每次都編寫完全一樣的程序段,會使編程相當繁瑣、耽擱時間,而且浪費大量的
30、程序存儲器空間。因此,對這些根本操作功能都是將它編制成規(guī)范化的程序段,存儲于程序存儲器的指定區(qū)域,在每次需求時就調(diào)出運用,這種程序段就稱為子程序,調(diào)用子程序的程序稱為主程序或者調(diào)用程序。子程序構(gòu)造是程序設(shè)計規(guī)范化和模塊化的有效方法。 第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計2.4 匯編言語程序設(shè)計2.4.92.4.9分支跳轉(zhuǎn)子程序分支跳轉(zhuǎn)子程序 經(jīng)常需求根據(jù)條件判別,確定程序多方向轉(zhuǎn)經(jīng)常需求根據(jù)條件判別,確定程序多方向轉(zhuǎn)向選擇,實現(xiàn)對程序的靈敏控制。用向選擇,實現(xiàn)對程序的靈敏控制。用PICPIC單片機單片機指令可以輕松地構(gòu)成分支跳轉(zhuǎn)。在程序方式
31、上,指令可以輕松地構(gòu)成分支跳轉(zhuǎn)。在程序方式上,分支功能跳轉(zhuǎn)子程序與數(shù)據(jù)查表子程序的構(gòu)造類分支功能跳轉(zhuǎn)子程序與數(shù)據(jù)查表子程序的構(gòu)造類似,只是它是用似,只是它是用GOTOGOTO語句替代了語句替代了RETLWRETLW語句,并語句,并直接進入不同的子程序中。直接進入不同的子程序中。第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計本章小節(jié)1 1 根本概念根本概念指令:指揮計算機完成某個根本操作的命令。指令:指揮計算機完成某個根本操作的命令。程序:完成一項義務(wù)所需的一切指令的有序集合。程序:完成一項義務(wù)所需的一切指令的有序集合。指令系統(tǒng):一臺計算機所能執(zhí)行的指
32、令集合就是它的指令系統(tǒng):一臺計算機所能執(zhí)行的指令集合就是它的指令系統(tǒng)。指令系統(tǒng)。指令的表示方法:有機器言語表示方法和匯編言語表指令的表示方法:有機器言語表示方法和匯編言語表示方法。其中機器言語的指令是用二進制代碼表示,示方法。其中機器言語的指令是用二進制代碼表示,匯編言語的指令是用助記符表示。匯編言語的指令是用助記符表示。2 2 PIC16F87X PIC16F87X系列單片機的指令系列單片機的指令分類分類第二章第二章 PICPIC單片機指令系統(tǒng)和匯編語言程序設(shè)計單片機指令系統(tǒng)和匯編語言程序設(shè)計本章小節(jié)PIC16F87XPIC16F87X單片機采用精簡指令集單片機采用精簡指令集RISCRISC構(gòu)造,指構(gòu)造,指令效率高,功能強。它的指令為單字的寬字位令效率高,功能強。它的指令為單字的寬字位1414指令,由此生成的程序代碼短。指令條數(shù)少,僅有指令,由此生成的程序代碼短。指令條數(shù)少,僅有3535條。每條指令都由操作碼和操作數(shù)組成,按指令條。每條指令都由操作碼和操作數(shù)組成,按指令的操作對象將指令分為面向字節(jié)操作類指令、面向的操作對象將指令分為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五暑期工勞務(wù)派遣與就業(yè)環(huán)境優(yōu)化合同
- 二零二五年度物流公司貨車司機服務(wù)質(zhì)量考核與獎勵協(xié)議
- 2025年度網(wǎng)絡(luò)安全防護等級評定安全協(xié)議書
- 2025年度汽車零部件貨物運輸安全與質(zhì)量協(xié)議
- 二零二五年度環(huán)保產(chǎn)業(yè)技術(shù)人才招聘與綠色創(chuàng)新協(xié)議
- 2025年度環(huán)保型清潔公司員工聘用合同書
- 二零二五年度水利設(shè)施監(jiān)控維保及災(zāi)害預(yù)警服務(wù)合同
- 二零二五年度海鮮水產(chǎn)店轉(zhuǎn)讓與經(jīng)營協(xié)議
- 二零二五年度倆人共同創(chuàng)業(yè)經(jīng)營咖啡廳合伙協(xié)議
- 二零二五年度農(nóng)村土地租賃合同模板(現(xiàn)代農(nóng)業(yè)物流園區(qū))
- 阿爾茨海默病量表
- 《威尼斯商人》課本劇劇本:一場人性與金錢的較量(6篇)
- 煤礦應(yīng)急救援培訓教案
- 《圖書館資源利用》課件
- 2024-2030年中國光伏建筑一體化(BIPV)行業(yè)發(fā)展模式規(guī)劃分析報告
- 設(shè)備工程師招聘面試題與參考回答
- 部編版小學道德與法治五年級下冊《不甘屈辱-奮勇抗爭》第一課時課件
- 《贏利》精讀圖解
- 讀書分享讀書交流會《你當像鳥飛往你的山》課件
- 大學生職業(yè)素養(yǎng)訓練(第六版)教案 第二單元 學習職業(yè)禮儀
- 2022年中華護理學會輸液連接裝置安全管理專家共識解讀
評論
0/150
提交評論