- 1
- 0
- 约5.1千字
- 约 56页
- 2016-12-09 发布于重庆
- 举报
8051单晶片嵌入式系统指令介绍
8051單晶片嵌入式系統 入門與實務應用 一.指令介紹 符號意義 算術運算指令集 資料搬移指令集 邏輯運算指令集 程式分支及其他指令集 符號意義 Rn: 表示暫存器R0~R7,受暫存器庫選擇位元RS0、RS1控制 Ri: 表示為R0或R1,作為間接定址的指標 @Ri: 暫存器間接定址,經由暫存器R0或R1做間接定址指標,可定址到內部資料記憶體0~255的位址 #data: 立即定址,表示八位元資料常數,0~255 Bit: 表示在內部資料記憶體可直接定址的位元或特殊功能暫存器(SFR)內可直接定址的位元 符號意義 Direct: 直接定址,表示八位元內部資料的位址碼,可定址到內部資料記憶體0~127的位址,或者是SFR中的I/O埠、控制暫存器、狀態暫存器等位址(80H~FFH) ():表示暫存器或變數內容 算術運算指令集 ADD ADDC SUBB INC DEC DIV MUL DA ADD ADD A, 來源位元組 功能: 加法 將指定位址的值與累積器相加,再將結果存回累積器中 ADD A, Rn ADD A, direct ADD A, @Ri ADD A, #data ADDC ADDC A, 來源位元組 功能: 帶進位的加法 將指定位址的值與累積器及進位旗標相加,再將結果存回累積器中,若結果值超過255 ,則進位旗標設為”1” ADDC A, Rn ADDC A, direct ADDC A, @Ri ADDC A, #data SUBB SUBB A, 來源位元組 功能: 有借位的減法 將累積器的內容減去進位旗標C的內容以及來源位元組內的內容,再將結果存回累積器中,若相減時ACC 之bit7需借位,則進位旗標將被設定為”1” ,否則將被清為”0” SUBB A, Rn SUBB A, direct SUBB A, @Ri SUBB A, #data INC INC 位元組 功能: 將指定位元組的內容加一 將指定位址的值加一,若原來的值為FFH ,則變為00H ,本指令不會影響任何旗標 INC A INC Rn INC direct INC @Ri INC DPTR 功能: 將16位元的資料指標暫存器的內容加一 若資料指標暫存器的低位元組DPL為FFH ,則變為00H ,高位元組DPL的內容再加一 DEC 功能: 將指定位元組的內容減一 將指定位址的值減一,若原來的值為00H ,則會產生借位變為FFH ,本指令不會影響任何旗標 DEC A DEC Rn DEC direct DEC @Ri DIV DIV AB 功能: A除以B 將ACC內數值除以暫存器B數值,相除結果將“商”存入ACC中,將”餘數”存入暫存器B裡 MUL MUL AB 功能: A乘以B 將ACC內數值乘以暫存器B數值,相乘結果將高位元組存入暫存器B裡,低位元組存入ACC中,進位旗標清為”0” DA DA A 功能: 將累積器ACC的內容調整為BCD的形式,並將結果存回累積器內,作加法之用 若累積器的bit0~bit3之數值大於9或輔助進位AC為”1” ,則ACC內含值加6 ,若有進位則高四位再加一,然後檢查bit4~bit7的數值若大於9或進位旗標為”1” ,則高四位元也要加6 ,結果若發生overflow ,則進位旗標設為”1” ,否則為”0” 資料搬移指令集 MOV MOVC MOVX POP PUSH XCH XCHD MOV MOV 目的位元組 ,來源位元組 功能: 位元組資料的轉移 複製來源位元組內的資料至目的位元組 MOV A, Rn MOV A, direct MOV A, @Ri MOV A, #data MOV Rn, A MOV direct, Rn MOV MOV 目的位元 ,來源位元 功能: 移動位元資料 複製來源位元內的資料至目的位元,兩者至少要有一個為進位旗標,另一個為任何可直接定址之位元 MOV C,bit MOV bit,C MOV DPTR MOV DPTR,#16位元位址碼 功能: 將16位元常數載入至資料指向器 將所標示之16位元常數載入DPTR內,高位元組置於DPH,低位元組置於DPL MOVC MOVC A, @A+ 基準暫存器 功能: 擷取表中的資料 以指令中的基準暫存器的內容為基準值,再以ACC內容為偏移量,至表中去取資料存入ACC中,即A的內容加上基準暫存器的內容 MOVC A, @A+DPTR MOVE A, @A+PC MOVX MOVX 目的位元組 ,來源位元組 功能: 外部資料記憶體
原创力文档

文档评论(0)