電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>ARM>單寄存器的Load/Store指令詳解

單寄存器的Load/Store指令詳解

2017-10-18 | rar | 0.4 MB | 次下載 | 1積分

資料介紹

 5.3 單寄存器的Load/Store指令
  Load/Store內(nèi)存訪問(wèn)指令在ARM寄存器和存儲(chǔ)器之間傳送數(shù)據(jù)。ARM指令中有3種基本的數(shù)據(jù)傳送指令。
 ?、?單寄存器Load/Store指令(Single Register)
  這些指令在ARM寄存器和存儲(chǔ)器之間提供更靈活的單數(shù)據(jù)項(xiàng)傳送方式。數(shù)據(jù)項(xiàng)可以是字節(jié)、16位半字或32位字。
 ?、?多寄存器Load/Store內(nèi)存訪問(wèn)指令
  這些指令的靈活性比單寄存器傳送指令差,但可以使大量的數(shù)據(jù)更有效地傳送。它們用于進(jìn)程的進(jìn)入和退出、保存和恢復(fù)工作寄存器以及拷貝存儲(chǔ)器中的一塊數(shù)據(jù)。
 ?、?單寄存器交換指令(Single Register Swap)
  這些指令允許寄存器和存儲(chǔ)器中的數(shù)值進(jìn)行交換,在一條指令中有效地完成Load/Store操作。它們?cè)谟脩艏?jí)編程中很少用到。它的主要用途是在多處理器系統(tǒng)中實(shí)現(xiàn)信號(hào)量(Semaphores)的操作,以保證不會(huì)同時(shí)訪問(wèn)公用的數(shù)據(jù)結(jié)構(gòu)。
  5.3.1 字?jǐn)?shù)據(jù)傳送指令
  這種指令用于把單一的數(shù)據(jù)傳入或者傳出一個(gè)寄存器。支持的數(shù)據(jù)類型有字節(jié)(8位)、半字(16位)和字(32位)。
  表5.1總結(jié)了所有單寄存器的Load/Store指令。
  表5.1 單寄存器Load/Store指令
  指 令作 用操 作
  LDR把一個(gè)字裝入一個(gè)寄存器Rd←mem32[address]
  STR將存儲(chǔ)器中的字保存到寄存器Rd→mem32[address]
  LDRB把一個(gè)字節(jié)裝入一個(gè)寄存器Rd←mem8[address]
  STRB將寄存器中的低8位字節(jié)保存到存儲(chǔ)器Rd→mem8[address]
  LDRH把一個(gè)半字裝入一個(gè)寄存器Rd←mem16[address]
  STRH將寄存器中的低16位半字保存到存儲(chǔ)器Rd→mem16[address]
  LDRBT用戶模式下將一個(gè)字節(jié)裝入寄存器Rd←mem8[address] under user mode
  STRBT用戶模式下將寄存器中的低8位字節(jié)保存到存儲(chǔ)器Rd→mem8[address] under user mode
  LDRT用戶模式下把一個(gè)字裝入一個(gè)寄存器Rd←mem32[address]under user mode
  STRT用戶模式下將存儲(chǔ)器中的字保存到寄存器Rd→mem32[address] ]under user mode
  LDRSB把一個(gè)有符號(hào)字節(jié)裝入一個(gè)寄存器Rd←sign{mem8[address]}
  LDRSH把一個(gè)有符號(hào)半字裝入一個(gè)寄存器Rd←sign{mem16[address]}
  1.LDR指令
  (1)指令編碼格式
  LDR指令用于從內(nèi)存中將一個(gè)32位的字讀取到目標(biāo)寄存器。
  指令的編碼格式如圖5.3所示。
  單寄存器的Load/Store指令詳解
  圖5.3 LDR指令編碼格式
  LDR指令根據(jù)《addr_mode》所確定的地址模式將一個(gè)32位字讀取到指令中的目標(biāo)寄存器《Rd》。如果指令中的尋址方式確定的地址不是字對(duì)齊的,則讀出的數(shù)值要進(jìn)行循環(huán)右移。所移位數(shù)為尋址方式確定的地址bits[1∶0]8的倍,也就是說(shuō)處理器將取到的數(shù)值作為字的最低位處理。
  如果設(shè)置了L位,則進(jìn)行裝載,否則進(jìn)行存儲(chǔ)。
  如果設(shè)置了P位,則使用預(yù)先變址尋址,否則使用過(guò)后變址尋址。
  如果設(shè)置了U位,則給出的偏移量被加到基址寄存器上,否則從中減去偏移量。
  如果設(shè)置了B位,傳送內(nèi)存的一個(gè)字節(jié),否則傳送一個(gè)字。這在助記符末尾添加后綴“B”,如MOV r7,r5變?yōu)镸OVB r7,r5。
  W位的解釋依賴于使用的地址模式。
  · 對(duì)于預(yù)先變址尋址,設(shè)置W位強(qiáng)制把它用做地址轉(zhuǎn)換的最終地址寫回基址寄存器中(例如,傳送的副作用是Rn:= Rn +/-offset。這在匯編器中表示為給指令加上后綴“!”。)。
  · 對(duì)于過(guò)后變址尋址,地址總是寫回,設(shè)置 W 位指示在進(jìn)行傳送之前強(qiáng)制地址轉(zhuǎn)換。這在匯編器中表示為給指令加上后綴“T”。
  當(dāng)PC作為L(zhǎng)DR的目的寄存器《Rd》時(shí),從存儲(chǔ)器取得的數(shù)據(jù)將被當(dāng)作目標(biāo)地址值,程序?qū)⑻D(zhuǎn)到目標(biāo)地址開(kāi)始執(zhí)行。
 ?。?)指令的語(yǔ)法格式
  LDR{《cond》} 《Rd》,《addr_mode》
 ?、?《cond》
  為指令編碼中的條件域。它指示LDR指令在什么條件下執(zhí)行。當(dāng)《cond》忽略時(shí),指令為無(wú)條件執(zhí)行(cond=AL(Alway))。
 ?、?《Rd》
  確定使用哪個(gè)通用寄存器作為目標(biāo)寄存器。
 ?、?《addr_mode》
  它確定了指令編碼中的I、P、U、W、Rn和《addr_mode》位。所有的尋址模式中,都會(huì)確定一個(gè)基址寄存器Rn。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1490次下載  |  免費(fèi)
  3. 2單片機(jī)典型實(shí)例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實(shí)例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識(shí)別和講解說(shuō)明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開(kāi)關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費(fèi)
  11. 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
  12. 0.11 MB  |  4次下載  |  免費(fèi)
  13. 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
  14. 0.63 MB  |  3次下載  |  免費(fèi)
  15. 89天練會(huì)電子電路識(shí)圖
  16. 5.91 MB  |  3次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)