第3章80C51的匯編語言與程序設(shè)計課件.ppt
《第3章80C51的匯編語言與程序設(shè)計課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《第3章80C51的匯編語言與程序設(shè)計課件.ppt(74頁珍藏版)》請在匯文網(wǎng)上搜索。
1、2022/8/23,1,第3章 80C51的指令系統(tǒng),匯編語言概述,3.1,80C51的指令系統(tǒng),3.2,數(shù)據(jù)傳送指令 (29條),算數(shù)運(yùn)算指令 (24條),邏輯運(yùn)算與循環(huán)類指令(24條),控制轉(zhuǎn)移類指令 (17條),位操作類指令 (17條),偽操作類指令,80C51匯編語言的編程方法,3.3,2022/8/23,2,3.1 匯編語言概述,3.1.1 機(jī)器指令的字節(jié)編碼形式,單字節(jié)指令(49條),機(jī)器指令:計算機(jī)能直接識別和執(zhí)行的指令。由操作碼和操作數(shù)組成。操作碼規(guī)定指令執(zhí)行的操作功能,操作數(shù)是指參與操作的數(shù)據(jù)。 機(jī)器指令的字節(jié)編碼形式就是指機(jī)器指令以什么樣的二進(jìn)制碼形式存儲在ROM中。,雙字
2、節(jié)指令(45條),三字節(jié)指令(17條),2022/8/23,3,8位編碼僅為操作碼,單字節(jié)指令(49條),如:INC A 編碼為:,即:04H,8位編碼含操作碼和寄存器編碼,如:MOV A,R0 編碼為:,即:E8H,2022/8/23,4,雙字節(jié)指令(45條),三字節(jié)指令(17條),如:MOV A,#50H 編碼為:,即:74H 50H,如:MOV 20H,#50H 編碼為:,即:75H 20H 50H,2022/8/23,5,注意:操作碼不能缺少,表示指令碼的功能操作數(shù)個數(shù)可為:1、2、3個2個操作數(shù)的指令,目的操作數(shù)在左邊格式中的標(biāo)點(diǎn)符號都是英文符號,一般格式,3.1.2 符號指令的書寫
3、格式,標(biāo)號: 操作碼 操作數(shù)1, 操作數(shù)2, 操作數(shù)3, ;注釋,2022/8/23,6,非數(shù)字字符開頭,后跟字母、數(shù)字、“-”、“?”等不能用已定義的保留字(指令助記符、偽指令等)后跟英文冒號“:”,標(biāo)號(即符號地址),數(shù)據(jù):二進(jìn)制(B) 十進(jìn)制(D或省略D) 十六進(jìn)制(H),注意AF開頭時要加“0” ASCII碼,如 A,1245,操作數(shù),注釋,英文分號“;”開頭,2022/8/23,7,指令中出現(xiàn)的描述符號的含義,Rn(n=07)-當(dāng)前工作寄存器組中的寄存器R0R7之一Ri(i=0,1)-當(dāng)前工作寄存器組中的寄存器R0或R1 -間址寄存器前綴,表示后面寄存器中數(shù)據(jù)為地址#data -8位
4、立即數(shù)#data16-16位立即數(shù)direct-片內(nèi)低128個RAM單元地址及SFR名稱addr11-表示2KB范圍內(nèi)11位目的地址addr16-表示64KB范圍內(nèi)16位目的地址rel-8位地址偏移量,范圍:128127bit-片內(nèi)RAM位地址、SFR的位地址或名稱$ -當(dāng)前指令的首地址()-表示 地址單元或寄存器中的內(nèi)容/ -位操作數(shù)的取反操作前綴,2022/8/23,8,80C51單片機(jī)有7種尋址方式,尋址方式:尋找操作數(shù)操作所在的位置(地址),把操作數(shù)取出來的方法。,1、寄存器尋址2、直接尋址3、寄存器間接尋址4、立即尋址5、相對尋址 6、變址尋址7、位尋址,3.1.2 80C51的尋址
5、方式,2022/8/23,9,1 寄存器尋址,操作數(shù)存放在工作寄存器中,指令中直接給出工作寄存器名稱的尋址方式。,操作數(shù)表示符號 R0、R1、R7,【例】若(R0)=30H,,執(zhí)行MOV A,R0后,(A)=?,2022/8/23,10,2 直接尋址,在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算的操作數(shù)的地址。,操作數(shù)表示符號 direct,【例】若(50H)=3AH ,,執(zhí)行MOV A,50H后,(A)=?,2022/8/23,11,3 立即尋址,指令碼中直接給出操作數(shù)的尋址方式。立即數(shù)前必須加“#”標(biāo)記。指令中的立即數(shù)有8位立即數(shù)和16位立即數(shù)。,注意區(qū)別這個指令:MOV A, 50H,通用
6、符號:#data (8位),#data16(16位),【例】執(zhí)行指令 MOV A,#50H和MOV DPTR,#3050H ,A值分別是多少?,小結(jié):立即數(shù)與地址的區(qū)別是什么?,2022/8/23,12,4 寄存器間接尋址,在這種尋址方式中,操作數(shù)項(xiàng)中的工作寄存器中存放的不是真正的數(shù)據(jù),而是操作數(shù)的地址。間接尋址要在工作寄存器前加表示間址操作。,符號 R0和R1,【例】若(R0)=30H,(30H)=5AH,執(zhí)行MOV A,R0后,(A)=?,【例】若(R1)=4CH,(A)=26H,執(zhí)行MOV R1,A后,(R1)=?,(4CH)=?,2022/8/23,13,5 變址尋址(基址寄存器變址寄
7、存器的間接尋址),【例】(A)= 05H;(DPTR)= 2400H,執(zhí)行MOVC A,A+DPTR后,結(jié)果:(A)=?,以某個基址寄存器的內(nèi)容為基礎(chǔ),在這個基礎(chǔ)上再加上地址偏移量,形成真正的操作數(shù)地址。基址寄存器只能是DPTR或PC,變址寄存器只能是累加器A。,采用變址尋址的指令有兩條:MOVC A, A+DPTR (最常用) MOVC A, A+PC,2022/8/23,14,6 相對尋址,相對尋址主要針對將程序轉(zhuǎn)移到相對地址的跳轉(zhuǎn)指令。,以當(dāng)前PC值作為基址,以rel作為變址,兩者之和作為新的地址。,【例】若SJMP 75H存放在1000H地址中,執(zhí)行指令SJMP 75H后,PC值是多少
8、?,通過查詢指令表,指令SJMP 75H的二進(jìn)制碼為80H,75H,為兩字節(jié)指令,因此新的PC值為1000H+2H+75H=1077H,2022/8/23,15,7 位尋址,【例】位地址00H內(nèi)容為1,MOV C,00H 執(zhí)行后,位地址PSW.7的內(nèi)容為1。,對位地址中的內(nèi)容進(jìn)行位操作的尋址方式。,注意:與MOV A,00H的區(qū)別。,2022/8/23,16,分類,數(shù)據(jù)傳送類指令 29,數(shù)學(xué)運(yùn)算類指令 24,邏輯運(yùn)算類指令 24,控制轉(zhuǎn)移類指令 17,位操作指令 17,共有111條匯編指令,3.2 8051單片機(jī)指令系統(tǒng),2022/8/23,17,數(shù)據(jù)傳送類指令 29條,2022/8/23,1
- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
20 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 80 C51 匯編語言 程序設(shè)計 課件