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

正文內容

[工學]單片機程序設計-文庫吧

2025-01-04 11:18 本頁面


【正文】 MOV C, ORL C, ANL C, 0F0H MOV , C amp。 ≥1 amp。 1 ≥1 1 數(shù)據(jù)的拼拆 【 例 】 設在 30H和 31H單元中各有一個 8位數(shù)據(jù) : (30H)=x7x6x5x4x3x2x1x0 , (31H)=y7y6y5y4y3y2y1y0 現(xiàn)在要從 30H單元中取出低 5位 , 并從 31H單元中取出低3位完成拼裝 , 拼裝結果送 40H單元保存 , 并且規(guī)定 : (40H)=y2y1y0x4x3x2x1x0 利用邏輯指令 ANL、 ORL來完成數(shù)據(jù)的拼拆: MOV 40H, 30H ;將 x7~ x0傳送到 40H單元 ANL 40H, 0001 1111B ;將高 3位屏蔽掉 MOV A, 31H ;將 y7~ y0傳送到累加器中 SWAP A ;將 A的內容左移 4次 RL A ; y2~ y0移到高 3位 ANL A, 1110 0000B ;將低 5位屏蔽掉 ORL 40H, A ;完成拼裝任務 助記符格式 機器碼 (B) 相應操作 機器周期 JB bit,rel 00100000bit rel 若 bit=1, 則 PC?PC+rel, 否則順序執(zhí)行 2 JNB bit,rel 00110000 bit rel 若 bit=0, 則 PC?PC+rel, 否則順序執(zhí)行 2 JBC bit,rel 00010000 bit rel 若 bit=1, 則 PC?PC+rel, bit?0,否則順序執(zhí)行 2 MOV A , 00110111B JB , LOOP1 MOV B , 4 SJMP LOOP2 LOOP1:MOV B , 5 LOOP2:SJMP $ 程序功能:根據(jù) ,設定 B的值 。 CY標志指令 助記符格式 機器碼 (B) 相應操作 機器周期 JC rel 01000000 若 CY=1, 則 PC?PC+rel, 否則順序執(zhí)行 2 JNC rel 01010000 若 CY≠1, 則 PC?PC+rel, 否則順序執(zhí)行 2 控制轉移類指令 —— 無條件轉移 指令 (4條 ) 1) 長轉移指令: LJMP AAAAH ; AAAAH?PC 注意 :該指令可以轉移到 64 KB程序存儲器中的任意位置。 2)絕對轉移指令 AJMP addr11 ; PC+2?PC, addr11 ?~ 3)相對轉移指令 SJMP rel 4) 間接轉移指令 指令格式: JMP @A+DPTR ; PC ← A + DPTR 該指令的特點是轉移地址可以在程序運行中加以改變 。 DPTR一般為確定值,根據(jù)累加器 A的值來實現(xiàn)轉移到不同的分支。在使用時往往與一個轉移指令表一起來實現(xiàn)多分支轉移。 下面的程序能根據(jù)累加器 A的值 0、 3轉移到相應的 TAB0~TA6分支去執(zhí)行。 MOV DPTR, TABLE ;表首地址送 DPTR ADD A,ACC JMP @A+DPTR ;根據(jù) A值轉移 TABLE: AJMP TAB0 ;當( A) =0時轉 TAB0執(zhí)行 AJMP TAB2 ;當( A) =1時轉 TAB2執(zhí)行 AJMP TAB4 ;當( A) =2時轉 TAB4執(zhí)行 AJMP TAB6 ;當( A) =3時轉 TAB6執(zhí)行 —— 條件轉移 指令 (8條 ) 1)累加器 A判 0指令 (2條 ) 助記符格式 機器碼 (B) 相應操作 機器周期 JZ rel 01100000 rel 若 A=0, 則 PC?PC+rel, 否則程序順序執(zhí)行 2 JNZ rel 01110000 rel 若 A≠0, 則 PC?PC+rel, 否則程序順序執(zhí)行 2 2)減 1非零轉移 指令 (2條 ) 助記符格式 機器碼 (B) 相應操作 機器周期 DJNZ Rn,rel 11011rrr rel Rn?Rn1, 若 Rn≠0, 則 PC?PC+rel, 否則順序執(zhí)行 2 DJNZ direct,rel 11010101 direct rel ( direct) ?( direct) 1, 若 ( direct)≠0, 則 PC?PC+rel, 否則順序執(zhí)行 2 3)比較轉移 指令 (4條 ) 助記符格式 機器碼 (B) 相應操作 機器 周期 CJNE A,data,rel 10110100 data rel 若 A≠data, 則 PC?PC+rel, 否則順序執(zhí)行;若 Adata, 則 CY=1, 否則CY=0 2 CJNE Rn,data,rel 10111rrr data rel 若 Rn≠data , 則 PC?PC+rel, 否則順序執(zhí)行;若 Rndata, 則 CY=1, 否則 CY=0 2 CJNE @Ri,data,rel 1011011i data rel 若 (Ri)≠data , 則 PC?PC+rel, 否則順序執(zhí)行;若 (Ri)data,則 CY=1,否則 CY=0 2 CJNE A,direct,rel 10110101 direct rel 若 A≠(direct) , 則 PC?PC+rel, 否則順序執(zhí)行;若 A(direct), 則 CY=1,否則 CY=0 2 操作數(shù)為無符號數(shù) 條件轉移類指令范例 —— 方案一 還有什么方法實現(xiàn)循環(huán)的終止 ? 將 00H~0FH這 16個數(shù)順序地置入片內RAM20H~2FH單元中 。 MOV R0, 20H MOV R7, 0FH CLR A LOOP: MOV @R0, A INC A INC R0 DJNZ R7, LOOP SJMP $ 地址指針 循環(huán)計數(shù)器 第一個數(shù)據(jù) 條件轉移類指令范例 —— 方案二 MOV R0, 20H MOV R7, 0FH CLR A LOOP: MOV @R0, A INC A INC R0 CJNE A, 0FH, LOOP SJMP $ 條件轉移類指令范例 —— 方案三 MOV R0, 20H MOV A, 0FH MOV 30H, 00H LOOP: MOV @R0, 30H INC 30H INC R0 DEC A JNZ LOOP SJMP $ 地址指針 循環(huán)計數(shù)器 第一個數(shù)據(jù) 條件轉移類指令范例 —— 方案四 MOV R0, 20H MOV A, 0FH MOV 30H, 00H LOOP: MOV @R0, 30H INC 30H INC R0 SUBB A, 01H JNC LOOP SJMP $ 地址指針 循環(huán)計數(shù)器 第一個數(shù)據(jù) —— 調用和返回 指令 (8條 ) 1)絕對調用 指令( 1條) 助記符格式 機器碼 (B) 相應操作 機器周期 ACALL addr11 a10a9a810001 addr7~0 PC ?PC+2 SP ? SP+1,(SP)?PC0~ 7 SP ? SP+1,(SP)?PC8~15 PC0~10 ? addr11 2 2)長調用 指令( 1條) 助記符格式 機器碼 (B) 相應操作 機器周期 LCALL addr16 00010010 addr15~8 addr7~0 PC?PC+3 SP? SP+1,SP?PC0~7 SP? SP+1,SP?PC8~15 PC? addr16 2 3)返回 指令 助記符格式 機器碼 (B) 相應操作 機器周期 RET 00100010 PC8~15 ? (SP), SP ?SP1 PC0~7 ? (SP), SP ?SP1 子程序返回指令 2 RETI 00110010 PC8~15 ? SP, SP ?SP1 PC0~7 ? SP, SP ?SP1 中斷返回指令 2 助記符格式 機器碼 (B) 相應操作 指令說明 NOP 00000000 空操作 消耗 1個機器周期 4)空操作 分支程序 循環(huán)程序 簡單程序 查表程序 子程序 應用舉例 匯編語言程序設計 簡單程序 —— 結構特點 : 按指令的先后順序依次執(zhí)行。 將 20H單元的兩個壓縮 BCD碼拆開變成 ASCII碼,存入 21H、 22H單元。 (假設 20H中的 BCD碼為 00110100) 什么是 BCD碼? 什么是 ASII碼? 20H 21H 22H A B 0011 壓縮 BCD碼 0011 0011 0100 低四位 ASII碼 高四位 ASII碼 方法 1: 將 BCD碼除以 10H,恰好是將 BCD碼分別移到了 A、 B的低 4位。然后再各自與 30H相 或 ,即成為 ASCII碼。 方法 2: 利用半字節(jié)交換指令來實現(xiàn)。 ORG 0000H MOV A, 20H MOV B, 10H DIV AB ORL B, 30H MOV 22H, B ORL A, 30H MOV 21H, A SJMP $ END 開始 (20H)?A 10H?B A/B (A中為高 4位 BCD碼, B中為低 4位 BCD碼 ) B+30H?B B?(22H) A+30H?A A?(21H) 結束 簡單程序例 1方法 1 源程序如下: 20H 21H 22H A B 0011 0100 PC PC 1 01000001 0000 PC 0011 0000 0000 0100PC 0011 0100PC PC PC 0011PC ORG 0000H
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1