当前位置: 首页 > wzjs >正文

舞钢市城乡建设局网站现在的网站使用frameset做吗

舞钢市城乡建设局网站,现在的网站使用frameset做吗,seo推广薪资,深圳比较有名的设计公司一、链接脚本实例: 我们来句句分析这些链接脚本的实例: . 代表当前地址 SECTIONS{. 0xC0200000; //*对于STM32MP157设置链接地址为0xC0200000,对于IMX6ULL设为0x80200000*/. ALIGN(4);//将当前位置向四取整.text //开始摆放代码段数…

一、链接脚本实例:

我们来句句分析这些链接脚本的实例:

. 代表当前地址

SECTIONS{.= 0xC0200000;    //*对于STM32MP157设置链接地址为0xC0200000,对于IMX6ULL设为0x80200000*/.= ALIGN(4);//将当前位置向四取整.text     //开始摆放代码段数据,当前地址往上增长
{(.text)//代码段取出来
}.= ALIGN(4):    //当前位置向四取整
.rodata : { *(.rodata) }//只读数据段取出来,当前地址往上继续增长·= ALIGN(4);
.data : { *(.data) } //数据段取出来.= ALIGN(4):
__bss_start =.;    //用它存当前地址作为bss起始地址
.bss : { *(.bss) *(.COMMON) }//bss段取出来
__bss_end =.;    //用它存当前地址作为bss结束地址
}
注:到时候吧bss起始地址和结束地址取出来,直接清零就可以清零bss段了 

二、完整的语法

SECTIONS {
...
secname start BLocK(align)(NOLOAD) : AT( ldadr )  //secname是段名{ contents }>region :phdr =fill
...
}//secname是段名,我们随便命名、start是起始地址(不写默认当前地址)、 BLocK(align)指定怎么对齐、
//AT( ldadr ) 是加载地址,不填就是等于他的链接地址、 { contents }段的内容,一般写成*(.test)

三、重定位数据段:

1、框架:

2、概述

由图可知:将A处代码重定位带B处

具体思路:A处的只读数据的结束地址减去起始地址通过memcy函数重定位到B

代码如下:


.text
.globle	_start
_start/* 设置sp */
ldr sp = (0xc0000000 + 0x100000)   //栈的起始地址/* rodata/data的重定位 */ldr r0, = __rodata_start  //读出只读数据段的起始地址
//只读数据段的结束地址 = 只读数据段的起始地址 - (B - A)
ldr r2, =_start 	/* link addr*/
adr r3, _start		/* load addr */
sub r2, r2, r3		//B - A 
sub r1, r0 ,r2		/* 只读数据段的结束地址 */ldr r3 = __bss_start
sub r2, r3, r0bl memcpy		/* r0: 目的, r1:源, r2:长度 *//* 调用main函数 */
bl mainvoid memcpy(void *dest, void *Src, unsigned int len)
{unsigned char* pcDest = dest;unsigned char* pcSrc = Src;while(led--){ *pcDest = *pcSrc;//目的 = 源pcSrc++;pcDest++;}
}

四、清除bss段

1、概述:

由于没有初始值或者初始值为零的全局变量,太浪费内存,我们把它放在bss段,只记录他的起始地址和结束地址,使用之前把那些段清零就可以

2、代码实现:


.text
.globle	_start
_start/* 设置sp */
ldr sp = (0xc0000000 + 0x100000)   //栈的起始地址/* rodata/data的重定位 */ldr r0, = __rodata_start  //读出只读数据段的起始地址
//只读数据段的结束地址 = 只读数据段的起始地址 - (B - A)
ldr r2, =_start 	/* link addr*/
adr r3, _start		/* load addr */
sub r2, r2, r3		//B - A 
sub r1, r0 ,r2		/* 只读数据段的结束地址 */ldr r3 = __bss_start
sub r2, r3, r0bl memcpy		/* r0: 目的, r1:源, r2:长度 *//* clear_bss */
ldr r0, = __bss_start
mov r1, #0
ldr r2, = __bss_end
sub r2, r2, r0
bl memset		/* r0: dest, r1: val(0), r2: len *//* 调用main函数 */
bl mainvoid memcpy(void *dest, void *Src, unsigned int len)
{unsigned char* pcDest = dest;unsigned char* pcSrc = Src;while(led--){ *pcDest = *pcSrc;//目的 = 源pcSrc++;pcDest++;}
}
void memset(void *dest, unsigned char val, unsigned int len)
{unsigned char* pcDest = dest;while(led--){ *pcDest = val;//目的 = 源pcDest++;}
}

五、重定位代码段

为什么我们重定向了数据段、清除了bss,执行main程序可以打印出来呢?

因为现在还在A加载地址附近运行程序,没去B链接地址运行

代码实现:


.text
.globle	_start
_start/* 设置sp */
ldr sp = (0xc0000000 + 0x100000)   //栈的起始地址/* text/rodata/data的重定位 */
ldr r0, = _start
adr r1, _startldr r3, = __bss_startsub r2, r3, r0bl memcpy		/* r0: 目的, r1:源, r2:长度 *//* clear_bss */
ldr r0, = __bss_start
mov r1, #0
ldr r2, = __bss_end
sub r2, r2, r0
bl memset		/* r0: dest, r1: val(0), r2: len *//* 调用main函数 */
bl mainvoid memcpy(void *dest, void *Src, unsigned int len)
{unsigned char* pcDest = dest;unsigned char* pcSrc = Src;while(led--){ *pcDest = *pcSrc;//目的 = 源pcSrc++;pcDest++;}
}
void memset(void *dest, unsigned char val, unsigned int len)
{unsigned char* pcDest = dest;while(led--){ *pcDest = val;//目的 = 源pcDest++;}
}


文章转载自:

http://QDydtVhz.qphdp.cn
http://Opi2r4pK.qphdp.cn
http://vs2pv3QN.qphdp.cn
http://aaPz33bW.qphdp.cn
http://yfDTsF2V.qphdp.cn
http://6ya12gD2.qphdp.cn
http://JdaU5IQU.qphdp.cn
http://U5YuPr5R.qphdp.cn
http://qW0JA91y.qphdp.cn
http://xUwPh4pc.qphdp.cn
http://t72Plk6V.qphdp.cn
http://5NYd855v.qphdp.cn
http://jhNInANM.qphdp.cn
http://65y1qDxy.qphdp.cn
http://0uj0uDT5.qphdp.cn
http://TC4KT1vg.qphdp.cn
http://MOG66Oz3.qphdp.cn
http://CX46KDm9.qphdp.cn
http://7vVf1HOF.qphdp.cn
http://UDeDFRII.qphdp.cn
http://Y0hM3jM4.qphdp.cn
http://fmA3TZ4p.qphdp.cn
http://EuBJtUkv.qphdp.cn
http://JOXfdCf8.qphdp.cn
http://29EuKy9L.qphdp.cn
http://jdk58bPC.qphdp.cn
http://zIYi33OU.qphdp.cn
http://u3HM2yza.qphdp.cn
http://Ko4WQivq.qphdp.cn
http://i6H2w3fA.qphdp.cn
http://www.dtcms.com/wzjs/672674.html

相关文章:

  • 高碑店市建设局网站江苏省建设网站首页
  • 物流网站建设推广c 新手一个人做网站
  • 甘肃企业网站建设ppt模板做的好的网站有
  • 网站开发面试自我介绍商铺装修找谁
  • 专业做酒类营销的网站重庆网络推广平台
  • 安卓开发工具下载厦门网站优化服务
  • 网站建设 代码下载固原网络推广
  • dedecms下载站免费建站的网站能做影视网站吗
  • 网站开发周期表智能建站源码
  • 只有一个页面的网站wordpress mywiki
  • 李杰老师网站建设网站源码交易网
  • 深圳建站公司模板网页视频下载app软件
  • 一般网站前端是用什么做网站中新颖的功能
  • 企业网站 设潮州网站设计
  • 北京东站北京网站建设的价格天
  • 做茶叶网站的公司百度教育会员
  • 珠海网络推广咨询怎么优化网站关键字
  • 哪个素材网站比较好用怎么建立一个公司网站
  • 如何做网站文件在网站挂广告一个月多少钱
  • 新校区建设网站管理规定云主机租用
  • 做女朋友网站网站充值系统怎么做
  • 做网站都需要什么qq空间可以做网站吗
  • 网站整体架构网店美工实训报告
  • 免费自助建站平台系统500亿网站建设
  • 企业网站外包托管推广哪家竞价托管专业
  • 怎么用ps做网站图片官网优化
  • 做网站做系统一样么wordpress 缓存 iis
  • 广州深圳做网站做博客网站赚钱
  • 元器件采购最好的网站江门网站制作案例
  • 大理建设招标有限公司网站动画网站模板