資料介紹
MCS-51系列單片機(jī)作為經(jīng)典的單片機(jī)應(yīng)用十分廣泛,其指令總共有111條。其指令中對(duì)操作數(shù)的尋址方式有7種,分別為立即數(shù)尋址、直接尋址、寄存器尋址、寄存器間接尋址、變址尋址、相對(duì)尋址和位尋址。在學(xué)習(xí)相對(duì)尋址的內(nèi)容和有關(guān)相對(duì)尋址的指令時(shí),許多初學(xué)者會(huì)對(duì)于偏移量的值和跳轉(zhuǎn)目的地址的值混淆不清,產(chǎn)生疑惑和不解。許多教材對(duì)此問題的解釋也不一致,甚至有錯(cuò)誤,這加深了初學(xué)者的困惑和理解錯(cuò)誤。仿真技術(shù)在電子電路設(shè)計(jì)中得到了廣泛的應(yīng)用,利用Protues、偉福軟件等可以很直觀的展示程序的執(zhí)行過程。為了揭示相對(duì)尋址的本質(zhì),本文將利用Protues仿真軟件和偉福軟件的仿真功能對(duì)相對(duì)尋址進(jìn)行剖析。
相對(duì)尋址方式是為了程序的相對(duì)轉(zhuǎn)移而設(shè)計(jì)的,其過程是以當(dāng)前PC的內(nèi)容為基址,加偏移量作為轉(zhuǎn)移地址,從而實(shí)現(xiàn)程序的轉(zhuǎn)移。轉(zhuǎn)移的目的地址取決于表達(dá)式:目的地址=轉(zhuǎn)移指令地址+轉(zhuǎn)移指令字節(jié)數(shù)+偏移量。需要注意的是,偏移量是有正負(fù)號(hào)之分的,偏移量的取值范圍是當(dāng)前PC值的-128~+127之間。該表達(dá)式應(yīng)這樣理解:在執(zhí)行轉(zhuǎn)移指令語句時(shí),PC的內(nèi)容是轉(zhuǎn)移指令的下一條指令的地址值,該地址值加上要偏移的地址字節(jié)數(shù)形成新目的地址,然后程序跳轉(zhuǎn)到新的目的地址,其中要偏移的地址字節(jié)數(shù)為8位有符號(hào)數(shù)二進(jìn)制數(shù),即偏移量在-128~+127之內(nèi)。那么這個(gè)偏移量是如何得到的呢?在許多教材和文章中均以rel作為相對(duì)尋址的標(biāo)志,這些教材和文章對(duì)相對(duì)尋址的解釋都很相似,其解釋為:以程序計(jì)數(shù)器PC的當(dāng)前值為基址,加上匯編指令中給出的相對(duì)偏移量rel,形成新的PC值,即跳轉(zhuǎn)目的地址,相對(duì)偏移量rel為一字節(jié)補(bǔ)碼數(shù),其表示范圍為-128~+127[1-8]。舉例來說明此問題,如下面的匯編語言程序語句:
ORG 0200H
MOV A,#36 ;雙字節(jié)指令
JNZ 30H ;雙字節(jié)指令
按這些教材和文章中的解釋,執(zhí)行指令JNZ 08H時(shí)PC值變?yōu)?202H+2,30H就是相對(duì)偏移量,該指令執(zhí)行后程序應(yīng)該跳轉(zhuǎn)到目的地址=0202H(轉(zhuǎn)移指令地址)+2(轉(zhuǎn)移指令JZ的字節(jié)數(shù))+30H(偏移量)=0232H上。事實(shí)上這種解釋是錯(cuò)誤的,該跳轉(zhuǎn)指令執(zhí)行后程序不會(huì)跳轉(zhuǎn)到計(jì)算出的目的地址上去。筆者認(rèn)為應(yīng)該是:進(jìn)行相對(duì)尋址時(shí),確實(shí)是以PC的當(dāng)前值作為基址,加上相對(duì)偏移量形成新的目的地址,但是在匯編指令中并不能直接看出相對(duì)偏移量,這個(gè)偏移量體現(xiàn)在機(jī)器碼中;而匯編指令中的rel,不管是數(shù)值形式還是符號(hào)形式只能是目的地址值,且其距離在當(dāng)前PC值-128~+127的范圍內(nèi)。
- 單片機(jī)原理及應(yīng)用的詳細(xì)資料說明 20次下載
- 51單片機(jī)的匯編指令詳細(xì)資料說明
- 使用51單片機(jī)控制小燈閃爍的程序和資料說明
- 51單片機(jī)例函數(shù)的詳細(xì)資料說明
- 使用51單片機(jī)進(jìn)行按鍵控制的資料說明
- 使用51單片機(jī)進(jìn)行尋址的方式詳細(xì)說明
- 單片機(jī)有哪些尋址方式?7種尋址方式的詳細(xì)資料講解
- 51單片機(jī)的一些特殊寄存器資料說明
- 51單片機(jī)匯編語言的尋址方式詳細(xì)資料說明
- 51單片機(jī)的中斷系統(tǒng)詳細(xì)資料說明
- 51單片機(jī)系列命名規(guī)則資料說明
- 51單片機(jī)教程之51單片機(jī)的串行口應(yīng)用舉例資料說明 18次下載
- MCS-51單片機(jī)結(jié)構(gòu)資料說明 4次下載
- 51單片機(jī)匯編語言教程_單片機(jī)尋址方式與指令系統(tǒng) 0次下載
- CPLD擴(kuò)展51單片機(jī)尋址范圍
- 什么是51單片機(jī)最小系統(tǒng) 2802次閱讀
- PIC系列單片機(jī)的詳細(xì)資料說明 5549次閱讀
- 單片機(jī)的結(jié)構(gòu)和原理說明 5517次閱讀
- 51單片機(jī)的最小系統(tǒng)應(yīng)用說明 8207次閱讀
- PIC單片機(jī)以及51和AVR單片機(jī)的IO口操作方法解析 3127次閱讀
- 80C51單片機(jī)實(shí)現(xiàn)專用寄存器位尋址的設(shè)計(jì)方案 3407次閱讀
- PIC單片機(jī)以及51單片機(jī)和AVR單片機(jī)的IO口操作方法介紹 2049次閱讀
- 51單片機(jī)引腳簡介 5.4w次閱讀
- 如何學(xué)習(xí)51單片機(jī) 5082次閱讀
- 探討單片機(jī)的尋址方式 8372次閱讀
- 如何對(duì)51單片機(jī)進(jìn)行外部擴(kuò)展 1.5w次閱讀
- 基于80C51單片機(jī)位尋址編程 3504次閱讀
- 新手學(xué)習(xí)單片機(jī)的首選:51單片機(jī) 8836次閱讀
- 單片機(jī)8x8矩陣鍵盤原理說明 2.6w次閱讀
- 51單片機(jī)學(xué)習(xí)感悟與51單片機(jī)上拉電阻心得 4295次閱讀
下載排行
本周
- 1常用電子元器件集錦
- 1.72 MB | 24490次下載 | 免費(fèi)
- 2PC2456高壓浪涌抑制器控制器數(shù)據(jù)手冊
- 3.03 MB | 12次下載 | 免費(fèi)
- 3PC2464具理想二極管的浪涌抑制控制器數(shù)據(jù)手冊
- 4.42 MB | 8次下載 | 免費(fèi)
- 4PC2466高電壓浪涌抑制器數(shù)據(jù)手冊
- 3.37 MB | 8次下載 | 免費(fèi)
- 5ssd1306單片 CMOS OLED/PLED 驅(qū)動(dòng)芯片中文手冊
- 1.66 MB | 5次下載 | 1 積分
- 6PC2596 40V 輸入 150KHz 3A 降壓型電源轉(zhuǎn)換器數(shù)據(jù)手冊
- 2.44 MB | 3次下載 | 免費(fèi)
- 7松下 rq-sx3隨身聽電路圖資料
- 2.93 MB | 2次下載 | 5 積分
- 8臺(tái)式主板DDR5內(nèi)存插槽引腳功能表資料
- 0.17 MB | 2次下載 | 5 積分
本月
- 1常用電子元器件集錦
- 1.72 MB | 24490次下載 | 免費(fèi)
- 2三相逆變主電路的原理圖和PCB資料合集免費(fèi)下載
- 27.35 MB | 111次下載 | 1 積分
- 3運(yùn)算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費(fèi)
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 12次下載 | 5 積分
- 5PC2456高壓浪涌抑制器控制器數(shù)據(jù)手冊
- 3.03 MB | 12次下載 | 免費(fèi)
- 6常用電子元器件介紹
- 3.21 MB | 11次下載 | 免費(fèi)
- 7PC2570低Iq理想二極管控制電路數(shù)據(jù)手冊
- 1.54 MB | 8次下載 | 免費(fèi)
- 8PC2557正向高壓理想二極管控制電路中文手冊
- 1.80 MB | 8次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183345次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73816次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65990次下載 | 10 積分
評(píng)論