新聞中心

ARM_SWP指令用法

作者: 時(shí)間:2016-11-21 來(lái)源:網(wǎng)絡(luò) 收藏
存儲(chǔ)器訪(fǎng)問(wèn)指令
SWP
寄存器和存儲(chǔ)器交換指令。使用SWP 可實(shí)現(xiàn)信號(hào)量操作。
實(shí)列代碼如下:
SWP R1,R1,[R0] ;取出r0地址中的數(shù)據(jù),放在r1中,并把r1中的數(shù)據(jù)放在r0中。
SWP R1,R2,,[R0] ; 將R0 指向的存儲(chǔ)單元內(nèi)容讀取數(shù)據(jù)到R1 中
; 并將R2 的內(nèi)容寫(xiě)入到該內(nèi)存單元中
使用SWP 指令可以方便地進(jìn)行信號(hào)量的操作:
12C_SEM EQU 0x40003000
12C_SEM_WAIT
MOV R0,#0
LDR R0,=12C_SEM
SWP R1,R1,[R0] ;取出信號(hào)量,并設(shè)置其為0
CMP R1,#0 ;判斷是否有信號(hào)
BEQ 12C_SEM_WAIT ;若沒(méi)有信號(hào),則等待


關(guān)鍵詞: ARMSWP指令用

評(píng)論


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

關(guān)閉