色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          關(guān)于匯編ARM指令DCD

          作者: 時(shí)間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
          數(shù)據(jù)定義(DataDefinition)偽指令

          數(shù)據(jù)定義偽指令一般用于為特定的數(shù)據(jù)分配存儲(chǔ)單元,同時(shí)可完成已分配存儲(chǔ)單元的初始化。

          本文引用地址:http://cafeforensic.com/article/201611/322059.htm

          DCDDCDU用于分配一片連續(xù)的字存儲(chǔ)單元并用指定的數(shù)據(jù)初始化。

          3、DCD(或DCDU)

          語法格式:

          標(biāo)號(hào)DCD(或DCDU表達(dá)式

          DCD(或DCDU)偽指令用于分配一片連續(xù)的字存儲(chǔ)單元并用偽指令中指定的表達(dá)式初始化。其中,表達(dá)式可以為程序標(biāo)號(hào)或數(shù)字表達(dá)式。DCD也可用&代替。

          DCD分配的字存儲(chǔ)單元是字對(duì)齊的,而用DCDU分配的字存儲(chǔ)單元并不嚴(yán)格字對(duì)齊。

          使用示例:

          DataTestDCD4,5,6;分配一片連續(xù)的字存儲(chǔ)單元并初始化。

          舉例1:

          SwiFunction
          DCDTASK_SW;0
          DCDENTER_CRITICAL;1
          DCDEXIT_CRITICAL;2
          DCDISRBegin;3
          DCDChangeToSYSMode;4
          DCDChangeToUSRMode;5
          DCD__OSStartHighRdy;6
          DCDTaskIsARM;7
          DCDTaskIsTHUMB;8
          DCDOSISRNeedSwap;9
          DCDGetOSFunctionAddr;10
          DCDGetUsrFunctionAddr;11

          TASK_SW
          MRSR3, SPSR;保存任務(wù)的CPSR

          MOVR2, LR;保存任務(wù)的PC

          舉例2:

          語句如下:
          FiqStackSpace SPACE FIQ_Stack_Legth
          FiqStack DCD FiqStackSpace + FIQ_Stack_Legth

          最后一條語句,DCD的后面跟FiqStackSpace + FIQ_Stack_Legth,
          DCD后面的FiqStackSpace,表示一串空字符,這好理解
          但是再上FIQ_Stack_Legth,就不明白了,WHY?

          FiqStackSpace是標(biāo)號(hào),相當(dāng)與地址,實(shí)際上就是在FiqStackSpace SPACE FIQ_Stack_Legth 這個(gè)語句給分配的空間的首地址,F(xiàn)iqStackSpace+ FIQ_Stack_Legth 是這個(gè)地址空間的結(jié)束地址,將FiqStack指向這個(gè)地址,當(dāng)做棧的頂部,該棧向下生長(zhǎng),長(zhǎng)度FIQ_Stack_Legth



          關(guān)鍵詞: 匯編ARM指令DC

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉