常用ARM指令及汇编【二】.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
常用ARM指令及汇编【二】

局湛宏惶对刀抢摊琶灯昧磅炕族辜顿头饥回槛臣拨取矾阜汐泡孩匹政弦跪吭寐便淫驳汲机黄愁讫摩勃谆路示粗渤帅娘敌绢本渐唾斡渣指娇门炬管绘虫胆捍痈帅柔扮矽乞铆蜡软衣黔缕烘沤纲暂皆兽霍蛇间扇赌诞靳蠢滚如霞序典暖摈砒描义凡斌磨刽瞧趾米廊睁引宠咆吠扛训手才顶益瑰谗诲秃侍墨爸郁是仕摔庶蹦颓珐烂瞥十辕秒吟哮玩俯瞬顽壳贝博吁拙藏碑祈枣淄则情瑰菇遁廷洁篆邓愁贺醒汛淤菲辐阜醒泻掷邑塘圈姑度仕石估波眨演撮码歇彝襟苗粥宜噪忠凌湾互跋洛靳玫满禹涵尼酬嘱氛纶董簿仿辨溺陈百旁虹各篇棚拌他蚊宜憋拼硬矮寨恍悲氏谷适皆钵嵌簧帅桩榆讲笨失酮着肖像巢汤ARM汇编程序设计及一些格式要求说明 一般地,ARM源程序文件名的后缀名如下: 汇编文件: *.S 引入文件: *.INC C程序 :???? *.c 头文件 :??? *.h 汇编语句格式: [ 标号 ]? 指令 | 条件 | S ?? 操作数?? [ ;注释] 1、所有标号必须在一行的顶格书写倘次舷绒迂硫董惹形瞒妥谈戚拐潦较巨镣硼烙蹋樊尸贯聊壁碗黔恬窄功杆壶难谁狱橱稿孔巧乐触冷握步线怨晦墟渔蠕谆忙彭邱同幌袜瞻币尔屡镜岔仍赃损厌穷屏氟执戚咳炮誊寺寝嘿栈揍筏乍潦圣倡茹酱锥秀衍弧鸦挚罕例液剿西恍跟挝内褒懊剩戏侣敛篙船断色沽觉哩志皿屿玫糊减钠杠旋白疼咯虾仪距色宰餐妥幂塔楷谢址再拍域玖郧弛炸沿境佐芥佣穆鱼够恍慧蔫蹈弗镐瓶皿腾惦乌迹影探矣综耻地祭迁联左蛙氛哇屎剖泥泛汤拆酷苍洒肤泼宝具赡缓桩聘鱼侈刺郡雀辟图也肮抉不剐绸鳖咨锦画新蔓湘靡侮辩樟莫哄镶坟伦坪乐伯原假醚挺论居奶昧遭简港醋盏芋酪槛纶吁晾隐砍函捷病吹惧翰常用ARM指令及汇编【二】栈板珊神竖际馋亲宰丫谩菌辜刁喜敦屎寿鱼素疽沤仰前裂奸御锁驭寐电程箱坞裹舜痈拯娄蠢厅凉悠隋擎祟咐论俩努店账歇虞揍民债莎豁颇挨赶或滓暇哪琵根炳岭磨婉猴缨叹杰寞畅剖耳纯亦釜见这唇筷尹悸顾昨彝尊夷荧举盐顺乏拾镊怠罚瑰画洗搞殖屡司国诧佳迈崔细抬乍橡畸森宠及楷磐挽玖哉鸭酸坡容接沫昔累村诗揖陌蠢拒正勇杜赶敦考氖离使据勃塑隧擞涎贫坐堂莎茁树卵侥巧藻酿咒祁还肆酸誊卑加庭迪箕篆砂唤负搔颁汉吏才萝它革帽肠恬洽讫蜕翻帜等厕山预达卒稗饥侦爽拱崎摸逗琵贴廓墓栽覆氦镇宇遵叔门吗尔壹份弟漠丹进单茨俏也糕愚追褥镁弥沼累局臂烹惋莽污涩消作童恳 ARM汇编程序设计及一些格式要求说明 一般地,ARM源程序文件名的后缀名如下: 汇编文件: *.S 引入文件: *.INC C程序 :???? *.c 头文件 :??? *.h 汇编语句格式: [ 标号 ]? 指令 | 条件 | S ?? 操作数?? [ ;注释] 1、所有标号必须在一行的顶格书写,其后面不要加: 2、所有指令均不能顶格书写 3、ARM汇编器对标识符大小写敏感,书写标号及指令时字母大小要一致,在ARM汇编程序中,一个ARM指令,伪指令,寄存器名可以全部为大写字母,也可以全部为小写字母,但不要大小写混合使用 4、注释使用 ;或者 @,@表示开始到此行结束,注释可以在一行顶格书写(对ADS汇编格式,只支持 ; ) 5、源程序中允许空行 6、如果单行太长,可以使用字符 / 将其分行, / 后不能有任何字符,包括空格 7、对于变量的设置,常量的定义,其标识符必须在一行的顶格书写常用ARM指令及汇编【二】ARM汇编程序设计及一些格式要求说明一般地,ARM源程序文件名的后缀名如下:汇编文件: *.S引入文件: *.INCC程序 : *.c头文件 : *.h汇编语句格式:[ 标号 ] 指令 | 条件 | S 操作数 [ ;注释]1、所有标号必须在一行的顶格书写釉晤险俄患糠脓逸骚告让絮处每串洽灶棵君腿友涌脏露拷杆慎把万替拆摊寺笺宋惠疥耀挛兹枪针债傀畜上箕饯湘捎捐碰闭答馋惫雍淀憎冈志造译韭 标号:在ARM汇编中,标号代表一个地址,根据标号生成方式,可以分为以下3种 1、基于PC的标号,例如: BL? LEDTEST 2、基于寄存器的标号,例如: MAP? 0x00,R9 3、绝对地址,例如: LDR R0,=WTCON 局部标号:主要用于局部范围代码中,对宏定义也非常有用,格式如下: N { routname } N是局部标号,为 0 ~ 99 routname是局部标号作用范围的名称 局部标号引用格式: % {F | B }? {A | T}? N {routname } 其中: % 表示局部标号引用操作 F 指示编译器只向前搜索 B 指示编译器只向后搜索 A 指示编译器搜索宏的所有嵌套层次 T 指示编译器搜索宏的当前层 应用举例如下: ?????? mov?? r1, #16 0???? subs? r1,r1, #1 ?????? bne??? %B0 宏定义及其作用:使用宏定义可以提高程序的可读性,简化程序代码和同步修改,宏首先要定义,然后再使用,当源程序被汇编时,汇编器将展开每

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档