|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請(qǐng)教幾個(gè)2410引導(dǎo)程序里面的 匯編語(yǔ)法問題 |
| 作者:divt 欄目:ARM技術(shù) |
大家好! 初學(xué)Arm2410引導(dǎo)程序的幾個(gè)問題,請(qǐng)大家?guī)臀医獯鹨幌孪旅娴膸讉(gè)問題,十分感謝! 有的問題可能說(shuō)的不是很清楚,也可能比較幼稚,請(qǐng)大家指正,我再重新發(fā)上來(lái)! 1、BIT_SELFREFRESH EQU (1<<22) 請(qǐng)問其中BIT_SELFREFRESH定義的是什么常量? (1<<22)是什么意思? 2、IMPOR |Image$$RO$$Base| IMPOR 是引用外部的標(biāo)號(hào) |Image$$RO$$Base| 什么意思呢? 3、 ASSERT :DEF:ENTRY_BUS_WIDTH ASSERT 是報(bào)告錯(cuò)誤,可這句話這么寫什么意思呢? 4、ChangeBigEndian ;@0x24 [ ENTRY_BUS_WIDTH=32 DCD 0xee110f10 ;0xee110f10 => mrc p15,0,r0,c1,c0,0 DCD 0xe3800080 ;0xe3800080 => orr r0,r0,#0x80; //Big-endian DCD 0xee010f10 ;0xee010f10 => mcr p15,0,r0,c1,c0,0 ] 我看書上說(shuō) DCD 的語(yǔ)法格式為 標(biāo)號(hào) DCD 表達(dá)式 可上面一段程序是什么意思呢? 5、ORR R0,R0,#(7<<17) 請(qǐng)問上面 什么意思呢? 尤其是#(7<<17) 6、SBUS R1,R1,#1 BNE %B0 上面一段程序是判別 運(yùn)算結(jié)果 等于零 就跳轉(zhuǎn)到 %B0 ?這樣理解對(duì)么? %B0 是什么意思?%是分配一 段連續(xù)的地址,B0是什么呢?? 萬(wàn)分感謝! |
| 2樓: | >>參與討論 |
| 作者: divt 于 2006/8/2 19:46:00 發(fā)布:
自己頂下 別沉了 ,麻煩大家?guī)臀铱纯矗?br> |
|
| 3樓: | >>參與討論 |
| 作者: divt 于 2006/8/3 17:07:00 發(fā)布:
請(qǐng)指點(diǎn)一下,謝謝 各位大蝦 麻煩幫忙指點(diǎn)一下 十分感謝 |
|
| 4樓: | >>參與討論 |
| 作者: icyacht 于 2006/8/4 9:01:00 發(fā)布:
拋磚引玉 我來(lái)回答幾個(gè)簡(jiǎn)單的,拋磚引玉 1<<22 是一個(gè)常數(shù), 是不是學(xué)C語(yǔ)言的時(shí)候最后幾章沒學(xué)好?"<<"是左移運(yùn)算符,所以 1<<22 == 10000000000000000000000b 7<<17 == 0111b 左移17位,自己移動(dòng)吧,呵呵 DCD :我的理解是類似51匯編里的 DB 和 DW ,在代碼段里定義一些常量表什么的 其他就不會(huì)了 呵呵 |
|
| 5樓: | >>參與討論 |
| 作者: liyuanhua 于 2006/8/4 9:41:00 發(fā)布:
我也來(lái)答兩個(gè)問題 |Image$$RO$$Base|:RO段起始地址,這個(gè)值是通過(guò)編譯器的設(shè)定來(lái)確定的 RO-Base BNE %B0:跳轉(zhuǎn)到向后的0標(biāo)識(shí)位置處 |
|
| 6樓: | >>參與討論 |
| 作者: icyacht 于 2006/8/4 9:50:00 發(fā)布:
to liyuanhua 跳轉(zhuǎn)到向后的0標(biāo)識(shí)位置處?可否詳細(xì)點(diǎn),謝謝 |
|
| 7樓: | >>參與討論 |
| 作者: liyuanhua 于 2006/8/4 10:05:00 發(fā)布:
re:icyacht 在你的匯編程序里,是不是有0,1(這里的0,1是代表程序地址的一個(gè)標(biāo)識(shí)符,跟我們自己給子程序起的名字一樣的作用) 這些標(biāo)識(shí)符存在? 在這里%B 代表向后查找,%F代表向前查找的意思。 |
|
| 8樓: | >>參與討論 |
| 作者: xzxxd 于 2006/8/5 16:07:00 發(fā)布:
回復(fù)主題:請(qǐng)教幾個(gè)2410引導(dǎo)程序里面的 匯編語(yǔ)法問題 ASSERT :DEF:ENTRY_BUS_WIDTH 確認(rèn)是否有定義ENTRY_BUS_WIDTH DCD 0xee110f10 ;0xee110f10 => mrc p15,0,r0,c1,c0,0 DCD 0xe3800080 ;0xe3800080 => orr r0,r0,#0x80; //Big-endian DCD 0xee010f10 ;0xee010f10 => mcr p15,0,r0,c1,c0,0 這個(gè)我也有疑問,有問過(guò)。DCD后的數(shù)據(jù)應(yīng)該是程序的指令代碼。 BIT_SELFREFRESH 呵~~,這個(gè)可以看看2410的PDF,這是關(guān)于SDRAM的。 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |