freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

匯編語言及其程序設(shè)計-文庫吧資料

2025-01-13 21:55本頁面
  

【正文】 MPASM的運算符 ? 取當前指令的地址值: $ ? 。在絕大多數(shù)情形下,匯編源代碼的最后一行應(yīng)該是 END 。其他未被初始化的 EEPROM單元全部是 0xFF。EEPROM地址單元 [0]=0x20, [1]=0x32 ? DE OK 。 ?例如: ? ORG 0x2100 。 第 40頁 DE ?DE 偽指令可以讓程序員在源程序中定義片內(nèi) EEPROM 的初值。實際產(chǎn)生指令 RETLW 0x43(?C? 的 ASCII碼 ) ?當程序執(zhí)行完以下兩行指令后, W的內(nèi)容就變?yōu)榱恕?A?。實際產(chǎn)生指令 RETLW 0x41(?A? 的 ASCII碼 ) ? 。實際產(chǎn)生指令 RETLW 2 ? 。實際產(chǎn)生指令 RETLW 0 ? DT 1, 2, ?3? 。 ?指令范例: ? LTABLE ADDWF PCL,F 。SUB1子程序代碼 ? RETURN 第 39頁 DT ? DT 的作用是定義表格數(shù)據(jù)( Define Table),實現(xiàn)程序存儲器的查表操作。主程序代碼 ? ORG 0x800 。定義中斷入口地址,以下指令從地址 0x004開始存儲 ? MOVWF W_TEMP 。 ?指令范例: ? ORG 0x000 。定義常數(shù)符號,即用 DELAY_TIME符號代替 200 ?define KEY1 PORTB,0 。所以一般用其定義常量。 _LVP_OFF 第 37頁 define ?define的作用是定義常數(shù)符號,即用符號名替換一個常數(shù)或符號名。若使用外部的高速振蕩器 ,可以改寫為 ? __CONFIG _WDT_OFF amp。關(guān)閉看門狗定時器 ? 。 _RC_OSC amp。建議大家盡量用此偽指令把芯片的配置字寫在程序中,便于程序的燒寫和調(diào)試。 ?此偽指令的重要作用是把芯片的配置字設(shè)定在源程序中。 ? LIST P=16F877A,R=DEC 。包含PIC16F877A的頭文件 第 35頁 LIST ? LIST偽指令可以設(shè)定程序編譯時的一些信息,例如所選單片機的型號,編譯時選擇的缺省數(shù)制等。最經(jīng)常被包含的是針對 PIC單片機內(nèi)部特殊功能寄存器定義的包含頭文件。結(jié)束變量塊定義 第 34頁 include 或 include ? include用來把另外一個文件的內(nèi)容全部包含復制到本偽指令所在的位置。VARL的地址為 0x2A,占 1個字節(jié) ? VAR2 。TEMP地址為 00,占 1個字節(jié) ? BUFFER:8 。例如: ? CBLOCK 0x20 。如果 MYCOUNT沒有事先定義則會產(chǎn)生一個錯誤 第 33頁 CBLOCK 和 ENDC ? CBLOCK 偽指令聲明變量塊的起始地址, ENDC 偽指令聲明變量塊定義結(jié)束, CBLOCK/ENDC中間可以插入任意多的變量聲明。定義 MYCOUNT 符號替換立即數(shù) 0x70 ? STEP EQU 0x23 。其作用是用一個標號名(符合MPASM的命名規(guī)則)替換其他數(shù)字或已經(jīng)定義過的符號名。 END后的內(nèi)容將被編譯器忽略。除了注釋內(nèi)容外,程序的其他地方不建議使用漢字或全角符號?!焙笾钡酱诵薪Y(jié)束的內(nèi)容全為注釋信息。”引導。正確 ? MOVLW O01 。錯誤,不是正確的二進制形式 ?八進制數(shù): O?12?,注意是英文字母“ O”而不是數(shù)字“ 0”開頭。正確 ?二進制數(shù): B?10100101? ? MOVLW B?11100011? 。如: ? MOVLW .255 。正確 ? ADDWF A8H,F 。錯誤 ? ADDWF H?8?,F 。正確 ? ADDWF 8H,F 。若以字母開頭時前面需加 0或 H?1234?、 H?FFFF?。等價于 ? addwf PORTB,F 第 30頁 MPASM的語法 ?程序中立即數(shù)字的描述方式有以下幾種: ?十六進制數(shù):以 0x開頭(推薦),如 0x1 0xFF、 0xFF。 錯誤,變量或標號不能包含 MPASM運算符“ ” ?MPASM內(nèi)的保留字 (匯編指令碼或偽指令 )不區(qū)分大小寫(大小寫作用相同)。、 |、!等符號。 跳轉(zhuǎn)用的標號必須頂格書寫 ? ADDWF PORTB,F ?SUB_2: 。例如: ?COUNT EQU 0x21 。正確 第 29頁 MPASM的語法 ?程序跳轉(zhuǎn)用的語句標號和程序員定義的變量符號必須頂格,即起始于一行的第一個字符位置處。正確 ?COUNT1 EQU 0x23 。例如: ?1COUNT EQU 0x22 。 匯編指令不能頂格書寫 ?標號或變量符號的命名規(guī)則:只能由字母、數(shù)字和下劃線構(gòu)成。 指令后的操作數(shù)不能另起一行 ?匯編指令不要在每一行的起始處開始編寫,至少在行首留有一個空格符。 錯誤,“ 0x88”中第二個8不是 ASCII字符 ?一個指令代碼(包含指令及其操作數(shù))必須在同一行中描述完畢。不包括其它國家的任何專用字符。但在絕對定位的程序開發(fā)模式下, MPLINK將不會被用到。 ?MPLAB安裝后匯編編譯器的可執(zhí)行文件名為,如是缺省安裝則存放路徑“ C:\PROGRAM FILES\MICROCHIP\MPASM SUITE”下。 ORG 0000H NOP BANKSEL TRISC MOVLW 00H MOVWF TRISC BANKSEL PORTC MOVF 20H,W ANDLW 0FH MOVWF 20H MOVF 30H MOVF 30H,W ANDLW 0F0H IORWF 20H,W MOVWF PORTC 第 26頁 MPASM匯編語言 ? MPASM簡介 ? MPASM的語法 ? MPASM的偽指令 ? MPASM的運算符 ? MPASM的內(nèi)置宏指令 第 27頁 MPASM簡介 ?在 MPLAB IDE中已經(jīng)集成了 MPASM編譯器工具集。 ORG 0000H NOP MOVLW 0FH MOVWF 20H ANDWF 24H,1 MOVWF 40H 程序舉例 第 21頁 例 分析程序段,指出程序執(zhí)行后,存儲單元的結(jié)果 MOVLW 22H 22H MOVWF 22H 22H 22H ADDWF 22F , F 44H 22H INCF 22F,F 45H 22H SWAPF 22H,W 45H 54H RLF 22H , F 8AH 54H 22H W 22H 22H INCF ,F 22H,W 第 22頁 要想控制單片機端口的輸入輸出 ,首先需對 端口 方向寄存器 和 數(shù)據(jù)寄存器 進行設(shè)置 ,引 腳的方向寄存器的相應(yīng)位設(shè)置為 1表示輸入 。 第 1頁 第四章 PIC匯編語言及其程序設(shè)計 ? PIC的 RISC指令集 ? MPASM 匯編語言 ? 匯編語言的尋址模式 ? MPASM常用子程序設(shè)計 第 2頁 PICmicro 單片機指令集 按 操作數(shù)訪問形式 分類 NOP 空操作 MOVWF f 把 W內(nèi)容送 f CLRW 清除 W CLRF f 清除 f SUBWF f,d f減去 W DECF f,d f遞減 1 IORWF f,d W和 f邏輯或 ANDWF f,d W和 f邏輯與 XORWF f,d W和 f邏輯異或 ADDWF f,d W和 f相加 MOVF f,d 傳送 f COMF f,d f取反 INCF f,d f遞增 1 DECFSZ f,d f遞減 1, 結(jié)果為 0則跳 RRF f,d 帶進位循環(huán)右移 RLF f,d 帶進位循環(huán)左移 SWAPF f,d f高低 4位內(nèi)容交換 INCFSZ f,d f遞增 1, 結(jié)果為 0則跳 BCF f,b f位清 0 BS
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1