永发信息网

u-boot中start.s中的一段代码不能理解。在这里求大神提醒一下!!万分感激!!!

答案:1  悬赏:0  手机版
解决时间 2021-03-24 02:30
u-boot中start.s中的一段代码不能理解。在这里求大神提醒一下!!万分感激!!!
最佳答案
您好,这样的:
/*

备注这几个由.word伪操作符定义变量的作用及其取值 _TEXT_BASE: .word TEXT_BASE
_TEXT_BASE:此处定义一汇编语言标签,更好的理解就是:告诉编译器,为_TEXT_BASE分配存储空间,该空间的名字就叫_TEXT_BASE,该空间中存储的值就是由.word后面确定的TEXT_BASEC(即0x33F80000),相当于C语言中 long _TEXT_BASE=TEXT_BASE; TEXT_BASE定义在board\smdk2410\config.mk文件中。该值的作用是告诉链接器,本程序运行的基地址为TEXT_BASE。U-boot编译后,烧在FLASH的第一个块中,CPU复位上电后,PC寄存器为0x0000。怎么会跑到TEXT_BASE处执行呢?
事实上,CPU上电后,从地址0x0000处执行,而U-BOOT的最起始代码,即本文件中从_start开始的代码是与地址不相关的,这段代码放在任何空间执行的结果都是一样(当然不是绝对,假设u-boot代码段是100K,则放在TEXT_BASE-80K处,搬运时就会把u-boot代码后面20K部分覆盖为最前面的20K)。追问为什么是 _TEXT_BASE 和 _start 比较!! 我感觉应该是 TEXT_BASE(即0x33F80000)和 _start 比较啊!!!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
图示法具体怎么画,和示意图有什么区别
清江三鲜面地址有知道的么?有点事想过去
乌镇东栅怎么回杭州,从乌镇东栅景区出发怎么
单选题2008年12月3日,中央电视台《新闻联播
请问我的车是北京现代领动自动精英版的,有8
单人旁一个啤酒的啤不要口字旁叫什么字啊
是!尚先生哪里可以看全集
5:7的前项加上10,要使比值不变,比的后项应
山东省荣成市石岛桃园开发区离宁津镇石核路9
支付宝绑定银卡卡为什么要签约
单位能在网上查询英语四级证真假吗
十万个为什么读后感作文250字
天盛养生地址在哪,我要去那里办事
若x+y=6,xy=5,则x2+y2=________.
怎样用豆渣养羊
推荐资讯
准备搬家的,一家属蛇,定好的日子上写蛇日冲
单选题水圈的特点是[  ]A.连续而规则的圈层
安图恩是不是以后不要舰炮队了
帝王蟹怎么做,悉尼的9A级神护牛肉 澳洲大龙虾
单选题一辆客车夜晚行驶在公路上,发现油箱漏
新浪微博怎样更改昵称?
开心花甲(财大店)在哪里啊,我有事要去这个地
高考报志愿,一批退档到二批是直接退档了?还
二年级幸福是什么诗歌,求席慕容所有的爱情诗!
华能大厦酒店怎么样
英语披萨怎么写,披萨英文简介
王者荣耀墨子的红色铭文建议使用哪一个
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?