新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 數(shù)據(jù)傳送指令之:?jiǎn)渭拇嫫鞯腖oad/Store指令

數(shù)據(jù)傳送指令之:?jiǎn)渭拇嫫鞯腖oad/Store指令

作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò) 收藏

本文引用地址:http://2s4d.com/article/257080.htm

5.3

Load/Store內(nèi)存訪問(wèn)指令在寄存器和存儲(chǔ)器之間傳送數(shù)據(jù)。指令中有3種基本的。

(Single Register)

這些指令在寄存器和存儲(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è)谟脩?hù)級(jí)編程中很少用到。它的主要用途是在多處理器系統(tǒng)中實(shí)現(xiàn)信號(hào)量(Semaphores)的操作,以保證不會(huì)同時(shí)訪問(wèn)公用的數(shù)據(jù)結(jié)構(gòu)。

5.3.1 字

這種指令用于把單一的數(shù)據(jù)傳入或者傳出一個(gè)寄存器。支持的數(shù)據(jù)類(lèi)型有字節(jié)(8位)、半字(16位)和字(32位)。

表5.1總結(jié)了所有單寄存器的。

表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

用戶(hù)模式下將一個(gè)字節(jié)裝入寄存器

Rd←mem8[address] under user mode

STRBT

用戶(hù)模式下將寄存器中的低8位字節(jié)保存到存儲(chǔ)器

Rd→mem8[address] under user mode

LDRT

用戶(hù)模式下把一個(gè)字裝入一個(gè)寄存器

Rd←mem32[address]under user mode

STRT

用戶(hù)模式下將存儲(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所示。

圖5.3 LDR指令編碼格式

存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理



上一頁(yè) 1 2 3 4 5 6 7 8 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉