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

正文內(nèi)容

[工學]第三章指令系統(tǒng)(已修改)

2025-02-02 13:01 本頁面
 

【正文】 南昌大學過控教研室 第 3章 指令系統(tǒng) 南昌大學過控教研室 指令是指揮計算機工作的命令,一種計算機所能執(zhí)行的指令集合稱之為該種計算機的指令系統(tǒng)。 指 令 機器指令 0010 0100 0000 1010B (二進制數(shù)表示) 24 0A(十六進制數(shù)表示) 匯編指令 ADD A, 0AH 南昌大學過控教研室 指令格式 指令的表示形式稱指令格式。編寫程序時必須嚴格按指令格式書寫。 MCS51指令由操作碼和操作數(shù)組成 。 匯編語言指令格式如下: 操作碼助記符 〔 操作數(shù) 1〕〔 ,操作數(shù) 2〕〔 ,操作數(shù) 3〕 南昌大學過控教研室 尋址方式 指令中,操作數(shù)可能是 具體的數(shù)據(jù) ,也可能是具體的存放 數(shù)據(jù)的地址或符號 ,無論何種情況,都可由操作數(shù)取得參與指令運行的二進制數(shù)據(jù)。這個過程叫作尋址。 尋 指 方 式 立即尋址方式 直接尋址方式 寄存器尋址方式 寄存器間接尋址方式 基址加變尋址方式 位尋址方式 相對尋址方式 南昌大學過控教研室 立即尋址方式 所謂立即尋址就是 操作數(shù)在指令中直接給出 。立即尋址方式的操作數(shù)稱立即數(shù),立即數(shù)只能是源操作數(shù),不能作為目的操作數(shù)。 立即數(shù)有 8位立即數(shù)和 16位立即數(shù) 。使用時在立即數(shù)前加 “ ”標志。 例: MOV A, 20H MOV DPTR, 20D8H 南昌大學過控教研室 直接尋址方式 直接尋址就是操作數(shù) 直接以單元地址的形式 給出。直接地址以存貯單元形式出現(xiàn) 。 例如指令: MOV A, 20H 0 8HA0 8HA21H20H1FHARAM南昌大學過控教研室 寄存器尋址方式 寄存器尋址就是 操作數(shù)在寄存器 中。 例如指令: MOV A, R2 A南昌大學過控教研室 寄存器間接尋址方式 寄存器間接尋址使用的寄存器為 Ri和 DPTR, 使用時寄存器前面加 “ @“ 標志 。 MOV A, @Ri ; MOVX A, @DPTR 例如:( R1)= 80H、( 80H) =33H,則執(zhí)行指令 MOV A,@Ri后, 累加器 A的內(nèi)容 為 33H而 不是 80H。 33HA33H80H80H內(nèi)部R A M 寄存器間接尋址是 以寄存器中的內(nèi)容為地址 取得操作數(shù)的方法。和寄存器尋址相比,寄存器尋址時,寄存器中存放的是操作數(shù),而寄存器間接尋址中時,寄存器中存放的是操作數(shù)的地址。 南昌大學過控教研室 基址加變址尋址方式 基址加變址尋址就是以 DPTR或 PC為基址寄存器 ,以 A為變址寄存器 ,以兩者內(nèi)容相加 形成 16位地址 作為操作數(shù)地址。 例如指令: MOVC A, @A+DPTR 88HA09H1000H1009H RAMDPTR+????100AH1009H1008H南昌大學過控教研室 位尋址方式 位尋址方式就是 以位為操作數(shù) 。 MCS51單片機有相當強的位處理功能,可以對位進行直接操作。 例如指令: MOV C, 4AH 位尋址范圍: 1)內(nèi)部 RAM的位尋址區(qū) 2)可供位尋址的 11個專用寄存器 南昌大學過控教研室 相對尋址方式 相對尋址是在相對轉(zhuǎn)移指令中,根據(jù) 地址相對當前 PC的偏移量 得到操作數(shù)的方式。如: JZ rel 偏移量 rel是一帶符號 8位二進數(shù)的補碼數(shù),范圍為 128~ +127。實際書寫程序時往往先用地址標號代替,在匯編為機器指令時再計算出來。 南昌大學過控教研室 〔 例 31〕 指出下列每一條指令的尋址方式。 ① MOV 2FH, 40H ② MOV A,@R0 ③ MOV DPTR, 2020H ④ MOV 45H, P0 ⑤ MOV A, R1 ⑥ MOVC A, @A+PC ⑦ JC LOOP ① 中的源操作數(shù)為立即尋址 , 目的操作數(shù)為直接尋址 。 ② 中的源操作數(shù)為寄存器間接尋址 ,目的操作數(shù)為寄存器尋址 。 ③ 中的源操作數(shù)為 16位立即尋址 ,目的操作數(shù)為寄存器尋址 。 ④ 中的源操作數(shù)和目的操作數(shù)都是直接尋址 。 ⑤ 中的源操作數(shù)和目的操作數(shù)都為寄存器尋址 。 ⑥ 中的源操作數(shù)為基址加變址尋址 ,目的操作數(shù)為寄存器尋址 。 ⑦ 中的操作數(shù)為相對尋址 。 南昌大學過控教研室 〔 例 32〕 判斷下列指令是否正確,若不正確請指出錯誤: ① MOV A ,DPTR ② MOV DPTR, 03H ③ MOV 80H, R7 ④ MOV B, C 〔 解 〕 ① 不正確 。 A是 8位寄存器 , DPTR為 16位寄存器 , 不匹配 。 ② 正確 。 ③ 不正確 。 80H為立即數(shù) , 不能作為目的地址 。 ④ 不正確 。 B為 8位字節(jié)寄存器 , C為 1位位累加器 , 不匹配 。 南昌大學過控教研室 數(shù)據(jù)傳送指令 1. 通用傳送指令 MOV 指令格式: MOV 目的操作數(shù) , 源操作數(shù) 功能:把源操作數(shù)所表示的數(shù)據(jù)傳送到目的地址指定的存貯單元之中,而不改變源操作數(shù)。即該指令是 “ 復制 ” ,不是 “ 搬家 ” 。 RAM數(shù)據(jù)傳送指令 南昌大學過控教研室 2) 以 Rn為目的地址的指令 MOV Rn, A ; Rn ← (A) MOV Rn, direct ; Rn ← (direct ) MOV Rn, data ; Rn ← data 1) 以累加器 A為目的地址的指令 MOV A, Rn ; A ← (R n) MOV A, direct ; A ← (direct) MOV A, @Ri ; A ← ((R i)) MOV A, data ; A ← data 南昌大學過控教研室 4) 以寄存器間接地址為目的的地址的指令 MOV @Ri, A ; (Ri)←(A) MOV @Ri, direct ; (Ri)←(direct) MOV @Ri, data ; (Ri)←data 3) 以直接地址為目的地址的指令 MOV direct, A ; direct ← (A) MOV direct, Rn ; direct ← (R n) MOV direct, direct ; direct ← (direct) MOV direct , @Ri ; direct ← ((R i)) MOV direct , data ; direct ← data 5)16位數(shù)據(jù)傳送指令 MOV DPTR, data16 ; DPTR ← data16 ; DPL ← data 7~ 0 ; DPH ← data 15~ 8 南昌大學過控教研室 Dir ect ( 直接尋址) @R (間接尋址)iA(累 加器)R (寄存 器尋址)n Dat a(立 即數(shù)尋址)圖35 MOV指令8位數(shù)據(jù)傳送路線示意圖南昌大學過控教研室 〔 例 33〕 設 RAM 40H單元的內(nèi)容為 80H, 80H單元內(nèi)容為 47H, P1口的輸入狀態(tài)為 0FFH, 試判斷下列程序執(zhí)行結(jié)果 。 MOV R0, 40H MOV A, @R0 MOV R1, A MOV B, @R1 MOV @R1, P1 MOV P2, P1 〔 解 〕 執(zhí)行結(jié)果為: ( A)= 80H, ( B)= 47H, ( R0)= 40H, ( R1)= 80H, ( P1)= 0FFH, ( P2)= 0FFH, ( 80H)= 0FFH。 ; R0 ← 40H ; A ← ( 40H)= 80H ; R1 ← 80H ; B ← ( 80H)= 47H 。( 80H) ← 0FFH ; P2 ← 0FFH 南昌大學過控教研室 1) 字節(jié)交換指令 XCH XCH A, Rn ; (A)←→ (Rn) XCH A, direct ; (A)←→ (direct) XCH A, @Ri ; (A)←→( (Ri)) 2. 數(shù)據(jù)交換指令 例:設 (A)=08H, (R7)=0DCH, 執(zhí)行指令 XCH A, R7 結(jié)果為: (A)=0DCH, (R7)=08H 功能:將累加器 A中內(nèi)容與源操作數(shù)互換。 南昌大學過控教研室 例: (A)=80H, (R0)=30H, (30H)=0FH, 執(zhí)行指令 XCHD A, @R 結(jié)果為: (A)=8FH, (30H)=00H 2) 半字節(jié)交換 XCHD XCHD A, @Ri ; (A)低 4位 ←→ ( (Ri))低 4位 功能:累加器 A中內(nèi)容與源操作數(shù)低 4位交換 , 高 4位不變 。 3) 累加器高低數(shù)字節(jié)交換指令 SWAP A SWAP A ; (A)低 4位 ←→ (A)高 4位 功能: A中高 4位與低 4位互換 。 例: (A)=80H ,執(zhí)行 SWAP A結(jié)果為: (A)= 08H. 南昌大學過控教研室 〔 解 〕 XCH A, 20H SWAP A MOV R1, 21H XCHD A, @R1 SWAP A XCH A, 20H 〔 例 34〕 試用交換指令使片內(nèi) 20H單元的高 4位與 21H 單元的低 4位交換。 南昌大學過控教研室 數(shù)據(jù)寫入堆棧稱 入棧 ,數(shù)據(jù)從堆棧中讀出稱 出棧 。 棧頂棧底SP S P+1SP← 棧頂棧底SPSP S P1←a)入 棧 b)出 棧 圖36 堆 棧示意圖3. 棧操作指令 南昌大學過控教研室 PUSH direct ; SP ← (SP)+1, (SP) ← (direct) 功能:將堆棧指針加 1后 , 片內(nèi) RAM單元內(nèi)容送進棧頂單元 , 原 RAM單元內(nèi)容不變 。 說明: ① PUSH指令常用于保護 CPU現(xiàn)場 。 ② 棧操作是字節(jié)指令 , 每次只能壓入或彈出 1個字節(jié)的內(nèi)容 。 如 PUSH DPTR是錯誤的 , 但可以用以下兩條指令完成 DPTR的入棧 。 PUSH DPH PUSH DPL 1) 入棧指令 PUSH 南昌大學過控教研室 例:設 (A)=30H, (B)=80H , (SP)=50H .則執(zhí)行指令: PUSH A PUSH B 結(jié)果為: (51H)=30H, (52H)=80H, (SP)=52H ? ← SP?4AH50H ?← SP?4 A H5 0 H3 0 H5 1 H?← SP?50H30H51H80H 5 2 H4AH南昌大學過控教研室 PO
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1