久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術(shù)中心 >> 單片機入門 >> 單片機尋址方式小結(jié)

單片機尋址方式小結(jié)

關(guān)鍵字:單片機 尋址方式 作者:admin 來源:不詳 發(fā)布時間:2018-05-18  瀏覽:22

當前,單片機種類很多,且實際工作中僅應(yīng)用一種單片機也是不現(xiàn)實的,必得對常用的幾種單片機有所了解。

盡管現(xiàn)在單片機編程大多使用C語言,但必得對單片機的內(nèi)核結(jié)構(gòu)、存儲結(jié)構(gòu)及指令集有一定的了解,才有可能寫出優(yōu)秀的程序代碼。對于單片機指令的學習,尋址方式的學習是其中的一個重點和難點,尋址方式的正確理解不僅對匯編編程至關(guān)重要,而且有助于對于單片機內(nèi)核結(jié)構(gòu)(如RISC和CISC的區(qū)別)、存儲結(jié)構(gòu)的更深刻理解。

但是,不同單片機都提供了一些不同的尋址方式,且即使同樣的尋址方式在不同的單片機中也有不同的名稱,使得尋址方式顯得混亂,不一致,不易理解。

推薦閱讀:MCS-51單片機尋址方式總結(jié)

不過,經(jīng)過仔細的對比、學習和分析,我發(fā)現(xiàn),其實所有的尋址方式,都可以歸為以下六類:

1)立即尋址

2)無址尋址

3)寄存器直接尋址

4)寄存器間接尋址

5)內(nèi)存直接尋址

6)內(nèi)存間接尋址

下面對以上六類指令一一分解:

1、立即尋址,即在指令中直接給出實際的操作數(shù)數(shù)值,如MOV R1,#0

2、無址尋址,就是說指令中根本沒有給出操作數(shù)或操作數(shù)地址,其原因可能是以下兩者之一:其一,本指令確實不需要操作數(shù),如NOP指令;其二,本指令本身就是專門為某一個操作數(shù)制造的,它不可能用來操作其他的操作數(shù),如CLRA指令(由其名稱可知,它用來清零累加器A)。

3、寄存器直接尋址,這是一種十分重要,十分常見,也十分易于理解、易于掌握和應(yīng)用的尋址方式,就是在指令中直接給出寄存器編號(在匯編中,給出的是寄存器的標號,也可以視作寄存器的名稱)作為操作數(shù)的尋址方式,而待操作的數(shù)據(jù)就存在此寄存器中。如指令MOV R1,R2就是一條雙操作數(shù)都采用寄存器直接尋址的指令。

另外,這種尋址方式在一些處理器構(gòu)架中又會有一些細微變化,如在ARM中由于大量使用寄存器直接尋址方式,為了增強此尋址方式的威力,ARM處理器中的寄存器直接尋址加入了移位功能,即在實際指令執(zhí)行中的數(shù)據(jù)不是簡單的寄存器中直接存儲的數(shù)據(jù),而是此數(shù)據(jù)經(jīng)過移位后得到的數(shù)據(jù)。

4、寄存器間接尋址,如同寄存器直接尋址,都是在指令編碼中給出寄存器編號(在匯編中表現(xiàn)為寄存器名稱);但與寄存器直接尋址不同的是,此處寄存中存儲的并非操作數(shù)本身,而是操作數(shù)在內(nèi)存中的位置,即操作數(shù)的地址(相當于C語言中的指針),在內(nèi)存中此地址處存儲的才是真正的操作數(shù)。所以,CPU要獲取此操作數(shù),在微觀上需要進行兩次數(shù)據(jù)獲取操作,第一次從寄存器中獲取操作數(shù)的地址,第二此從剛才獲取的地址處在內(nèi)存中獲取真正的操作數(shù)。在多數(shù)處理器中,指令使用寄存器間接尋址比使用寄存器直接尋址運行要耗費更多的指令周期。如指令 MOV R1,@R2將R1中的數(shù)據(jù)復制到R2中地址所指向的內(nèi)存中。

寄存器間接尋址是變種最多、擴展最多的尋址方式,正因如此,他也是處理器中最為靈活、最為強大、最為難于掌握的尋址方式。不僅不同處理器對它進行了不同的擴展,而且即使對于完全相同的擴展,不同匯編中也可能給出相差極大的書寫格式,這就更加導致了寄存器間接尋址難于理解、難于掌握。

其擴展主要有以下形式:1)自增、自減型,@R1++、@R1--、@(--R1)、@(++R1),看到它們的書寫形式大家應(yīng)該也大體明白它們的意思了,當然具體的匯編書寫格式那就根據(jù)不同的處理器和匯編器變得五花八門了,比如有的不用@號而用中括號,有的只用一個加減號而不是兩個,有的只提供了四種變體中的一種或幾種,情況不一而足,但其實質(zhì)內(nèi)容卻大體一致。2)索引型(或叫偏移型),就是指寄存器中存儲的地址還不是操作數(shù)的最終地址,須得對此地址加一個數(shù)才是最終的操作數(shù)地址。這種情況就更加復雜了,其一,書寫格式更加紛亂,如我就見過X(R1)、[R1,X]、(R1+X)等多種形式;其二,偏移量X本身也涉及尋址方式這個問題,最常用的當然是立即尋址和寄存器直接尋址兩種,但也不排除有更加復雜的寄存器間接尋址這種方式的使用,要是這個X本身要是也能使用寄存器間接尋址的變種——索引尋址,那可就真是熱鬧了(試想一下,這不就是迭代了嗎)。

5、內(nèi)存直接尋址,就是在指令中直接給出操作數(shù)的地址——存儲于內(nèi)存中的位置,表現(xiàn)在匯編中,為了區(qū)分立即數(shù)和內(nèi)存地址,一般對地址加&或$前綴。如 MOV R1,$100

這個內(nèi)存地址可以可以分兩種情況給出:其一,直接給出完整的地址;其二,僅給出一個偏移量,將此偏移量加上PC才能得到操作數(shù)的地址。其中,前者一般叫做絕對尋址,后者一般叫做相對尋址(當然,有些匯編中可能并不這樣稱呼),二者很容易理解,也很容易區(qū)分。當然,二者也是各有優(yōu)劣:絕對尋址簡化了執(zhí)行電路,因為他無需進行PC和偏移量的加法運算;而相對尋址則可精簡編碼長度,從而節(jié)省程序存儲器消耗,當然,還有一個更加重要的好處,那就是可以利用這個特性編寫“可搬移”的代碼。因為使用相對地址,那么把程序整段搬移到其他的地址空間去,程序也能夠正確的執(zhí)行而不致出差。

對于同時提供了絕對尋址和相對尋址的CPU,在其匯編語法層面就需要給出區(qū)別兩種尋址方式的語法,由于不同匯編給出的解決方法不同,這里僅以MSP430編程手冊中給出的匯編語法為例進行介紹,以方便理解:

相對尋址:MOV ADDR,R4

絕對尋址:MOV &ADDR,R4

可見,這里是通過一個“&”符合進行絕對尋址和相對尋址的區(qū)分的。

另外,還有一個不大不小的問題需要注意,很多時候,使用內(nèi)存直接尋址的匯編中并不直接給出地址數(shù)值,而是給出“標號,即label”,匯編器自己把這個標號用實際的地址值進行替代,所以就免除了地址的手工計算的麻煩。

6、內(nèi)存間接尋址,參考寄存器直接尋址與寄存器間接尋址的異同,我們可以通過上面講到內(nèi)存直接尋址來推測出內(nèi)存間接尋址的內(nèi)容和概念。但是,鑒于在嵌入式處理器和單片機中一般都不使用內(nèi)存間接尋址方式,所以,這里也就不再展開談了。

另外,應(yīng)該清楚,尋址方式并不是處理器設(shè)計者想怎么設(shè)計就怎么設(shè)計的,它很大程度上是由處理器內(nèi)核結(jié)構(gòu)和存儲結(jié)構(gòu)所決定的。一般來說,立即尋址和無址尋址在所有的處理器或單片機中都是存在的;而RISC構(gòu)架的處理器中一般大量使用寄存器直接尋址,而寄存器間接尋址和內(nèi)存直接尋址一般只用于加載(LDR)、存儲(STR)指令之中,內(nèi)存間接尋址則在RISC中基本不使用;而對于CISC架構(gòu)的處理器,不僅大量使用寄存器直接尋址,而且大量使用靈活多變的寄存器間接尋址和內(nèi)存直接尋址,甚至于會提供強大的內(nèi)存間接尋址。所以,CISC構(gòu)架處理器的指令一般功能更豐富、更強大,可以用比RISC技術(shù)更少的指令完成相同的功能,但代價是必須增加更多的地址解析譯碼電路,增加了芯片體積和功耗。

當然,我學單片機時間也不長,水平一般,也沒有了解過太多的單片機,只是就自己了解過的ARM、51、AVR、PIC和MSP430做一個小小總結(jié),希望能幫助初學者更快的學習和理解單片機指令。但是能力和見識有限,未免以偏概全,所以也希望功力深厚、見識廣博的老前輩能夠指正錯誤,或添加其他未提到的尋址方式。當然,若是那位有更好的尋址方式歸納總結(jié)方法分享,那將是更好了。

擴展閱讀:訪問單片機各部分使用的尋址方式

編輯:admin  最后修改時間:2018-05-18

聯(lián)系方式

0755-82591179

郵箱:ivy@yingtexin.net

地址:深圳市南山區(qū)桃源街道平山社區(qū)平山一路2號南山云谷創(chuàng)業(yè)園二期11棟410-411

Copyright © 2014-2026 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4

久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网
欧美国产在线一区| 欧美a v在线播放| 999精品视频在线| 91丨porny丨探花| 麻豆tv在线播放| 欧美在线观看成人| 99久久久无码国产精品6| 日韩精品一区二区三区四| 91成人在线视频观看| 91xxx视频| 日本免费a视频| 日韩欧美视频网站| 日韩免费高清在线| 亚洲美女性囗交| 伊人久久在线观看| 国内外成人激情视频| 久久久久久久片| 91香蕉国产线在线观看| 欧美另类videos| 91九色在线观看视频| 欧美伦理片在线观看| 一级做a爱视频| 男的插女的下面视频| 欧在线一二三四区| 青春草在线视频免费观看| 成人免费视频91| 激情婷婷综合网| 一区二区三区国产好的精华液| 草草草视频在线观看| 污污视频网站免费观看| 国产精品久久久久久9999| 国产精品入口芒果| 午夜免费福利视频在线观看| 国内自拍中文字幕| 日韩av片网站| 黄色一级视频片| 性久久久久久久久久久久久久| 久久av综合网| 黄色网络在线观看| 一区二区三区 欧美| 国产自产在线视频| 免费成人深夜夜行网站视频| 成人黄色片视频| 欧美亚洲日本一区二区三区 | 色天使在线观看| 日韩极品视频在线观看| 久久久精品高清| 欧美成人免费高清视频| 91成人综合网| 国产一区 在线播放| 午夜精品免费看| 中文字幕网av| 国产高清视频网站| 能看的毛片网站| 国产成人精品视频ⅴa片软件竹菊| 成人小视频在线观看免费| 日韩视频在线观看一区二区三区| 日韩a在线播放| 99久久久无码国产精品6| 国产中文字幕视频在线观看| 久久久天堂国产精品| 欧美美女黄色网| 日韩精品久久一区二区| 日本天堂免费a| 久久久久亚洲av无码专区喷水| gogogo高清免费观看在线视频| 另类小说第一页| 亚洲老女人av| 成人高清在线观看视频| 国产精品无码乱伦| 肉大捧一出免费观看网站在线播放| 亚洲欧美日韩网站| 加勒比av中文字幕| 国产成人三级视频| 国产欧美日韩网站| 欧美xxxxx在线视频| 天堂一区在线观看| 永久免费在线看片视频| 日本国产中文字幕| 国产美女网站在线观看| 日本精品免费在线观看| 一本色道久久亚洲综合精品蜜桃 | 中国黄色片免费看| 四虎1515hh.com| 欧美激情视频免费看| 国产xxxxx在线观看| 日韩中文字幕a| 999久久欧美人妻一区二区| 国产69精品久久久久久久| 午夜肉伦伦影院| 日本77777| 久久精品国产sm调教网站演员| 日韩黄色片视频| 亚洲激情免费视频| 日韩欧美xxxx| 日韩一区二区高清视频| 亚洲欧美激情网| 国产肉体ⅹxxx137大胆| 手机看片福利日韩| 欧美久久久久久久久久久久久久| 国产日韩成人内射视频| 精品无码av无码免费专区| 男人天堂999| 9色视频在线观看| 一区二区三区 日韩| 日韩视频免费播放| 亚洲精品在线网址| 日本爱爱免费视频| 欧美成人免费在线观看视频| 特级黄色片视频| 成人在线观看a| 日韩欧美国产综合在线| 亚洲欧美日韩不卡| 污污的视频免费| 日韩精品你懂的| 黄色一级一级片| av网站在线观看不卡| 免费在线观看视频a| 中文字幕在线中文| 国产免费xxx| 青春草在线视频免费观看| 伊人国产在线视频| 国产aaaaa毛片| 男人插女人下面免费视频| 日本www在线视频| 欧美三级一级片| 337p粉嫩大胆噜噜噜鲁| 国产精品一区二区免费在线观看| 国产91沈先生在线播放| 亚洲中文字幕无码一区二区三区 | 奇米精品一区二区三区| 奇米777四色影视在线看| 亚洲区成人777777精品| 日本老太婆做爰视频| 国产精品久久久久9999爆乳| 黑人巨茎大战欧美白妇| 9色porny| 久久久精品在线视频| 五月婷婷六月丁香激情| 在线免费观看av网| 99亚洲国产精品| 精品久久久久久久久久中文字幕| www黄色日本| 日韩精品免费播放| 婷婷免费在线观看| 天天av天天操| 国产精品久久..4399| 欧美日韩在线中文| 五月天婷婷在线观看视频| 少妇高潮大叫好爽喷水| 国产高清av在线播放| 久久久久免费精品| 天堂av手机在线| 欧美精品久久久久久久自慰| 欧美 日韩 国产一区| 激情文学亚洲色图| 水蜜桃色314在线观看| 超碰在线公开97| 免费网站在线观看视频| 欧美黄色免费影院| 亚洲一区二区三区四区精品| www在线观看免费| 色91精品久久久久久久久| 欧美精品久久久久久久久久久| 久章草在线视频| 亚洲天堂第一区| 国产又猛又黄的视频| 日韩不卡视频一区二区| 色乱码一区二区三区在线| 国产视频在线观看网站| 天堂中文av在线| 成人在线观看a| 欧美不卡在线播放| 97精品国产97久久久久久粉红| 久久久久久香蕉| 免费看一级大黄情大片| 女女同性女同一区二区三区按摩| 97xxxxx| 成人在线免费高清视频| 亚洲欧美日本一区二区三区| 日韩在线视频在线观看| 五月天激情图片| 日韩视频在线观看视频| 天天碰免费视频| 国产无套粉嫩白浆内谢的出处| 2019日韩中文字幕mv| 91成人在线视频观看| 国产乱女淫av麻豆国产| 天天色综合社区| www.99在线| 国产福利在线免费| 牛夜精品久久久久久久| 91视频最新入口| 日本一区二区黄色| 欧美日韩在线中文| 麻豆av免费在线| 亚洲性生活网站| 日本在线一二三区| 国产精品探花在线播放| 成人手机视频在线|