- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 ARM系统硬件设计基础67223.ppt
第 4 章 ARM系统硬件设计基础 4.2.2 ARM汇编语言的基本结构 ★在ARM汇编语言程序中,以程序段为单位来组织代码。 ★段是相对独立的指令或数据序列,具有特定的名称。 ★段可以分为代码段和数据段,代码段的内容为执行代码,数据段存放代码运行时所需的数据。 ★可执行映像文件通常由以下几部分构成: 一个或多个代码段,代码段为只读属性。 零个或多个包含初始化数据的数据段,数据段的属性为 可读写。 零个或多个不包含初始化数据的数据段,数据段的属性为可读写。 4.2.3 ARM汇编语言支持的伪指令 汇编语言的伪指令分为符号定义,数据定义, 汇编控制,宏指令以及其他的伪指令 一、其他的伪指令 1、AREA 定义一个代码段或数据段 格式:AREA 段名称 段属性 段属性:CODE(代码段),DATA(数据 段),READONLY(只读),READWRITE(可读可写) 例:AREA Init,CODE,READONLY 4.2.3 ARM汇编语言伪指令(续) 2、ENTRY 指定汇编程序的入口点 3、END 指定汇编程序的结尾 4、CODE16/CODE32 通知编译器,其后的指令为16位的thumb指令或是32位的arm指令。 5、ALIGN 当前位置的对齐方式 例:ALIGN =2 6、LDR,用32位常量或一个地址加载寄存器。 句法:LDR {cond} register,=32位数据或地址 例:LDR R0,=0XFFFFFFFF LDR R1,=LABEL(符号地址) 例: GET option.s GET memcfg.s GET 2410addr.s …….. AREA Init,CODE,READONLY ;定义代码段 ENTRY b ResetHandler … ResetHandler LDR R0, =WTCON 禁止看门狗 LDR R1, =0x0 STR R1, [R0] LDR R0, =INTMSK ;禁止所有中断 LDR R1, =0xFFFFFFFF STR R1, [R0] ……. AREA Ramdata ,DATA,READWRITE ,ALIGN=2 ;定义数据段 ^ _ISR_STARTADDRESS HandleReset #4 ……. END 4.2.3 ARM汇编语言支持的伪指令(续) 二、符号定义伪指令 定义汇编程序中使用的变量,并对变量赋值 1、GBLA/GBLL/GBLS:分别用于定于全局的数值变量、逻辑变量和字符串变量 2、LCLA/LCALL/LCLS:分别用于定于局部的数字变量、逻辑变量和字符串变量 3、SETA/SETL/SETS:分别用于数据、逻辑、字符串变量的赋值 4.2.3 ARM汇编语言支持的伪指令(续)二、符号定义伪指令(续) 例: GBLL AAA ;定义全局逻辑变量 AAA SETL {TRUE} ;全局逻辑变量赋值 GBLA BBB BBB SETA 16 GBLL THUMBCODE THUMBCODE SETL {TRUE} 4.2.3 ARM汇编语言支持的伪指令(续)三、数据定义伪指令 一般用于为特定的数据分配存储空间,同时可完成存储空间的初始化 1、SPACE 分配一段连续的存储空间,并初始化为0,也可用%代替。 例:data space 100 4.2.3 ARM汇编语言支持的伪指令(续)三、数据定义伪指令(续) 2、MAP,FIELD MAP:定义一个结构化的内存表首地址,可用^代替 FIELD:定义一个结构化内存表的数据域,可用#代替 例: MAP 0X1000 ;定义结构化内存表首地址为0X1000 FIR FIELD 16 ;定义FIR长度为16字节,位置为0X1000 SEC FIELD 32 THR FIELD 256 4.2.3 ARM汇编语言支持的伪指令(续)三、数据定义伪指令(续) 3、存储器单元分配 DCB\DCW\DCD 分
您可能关注的文档
最近下载
- JTT 1037-2022公路桥梁结构监测技术规范.docx VIP
- 《铁路工程术语标准》GBT50262-2024知识培训.pptx
- 2025年植物生理学习题集及参考答案1 .pdf VIP
- 02J603-1 铝合金门窗图集标准.docx VIP
- 2024中级经济师《人力资源管理》第19章精讲讲义【打印版】&.pdf VIP
- YYT 0471.1-2004 接触性创面敷料试验方法 第1部分 液体吸收性.docx VIP
- 《建筑与市政工程施工现场临时用电安全技术标准2024》解读.pptx VIP
- 2025江西省江铜集团招573人笔试参考题库附带答案详解.doc
- TSAIAS 018-2024 具身智能语料库建设导则.pdf VIP
- 2025年应急科普答题考试题库300题(含答案).docx VIP
文档评论(0)