1 / 12
文档名称:

精品PPT课件--第五章基于ARM的程序设计--08.ppt

格式:ppt   页数:12
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

精品PPT课件--第五章基于ARM的程序设计--08.ppt

上传人:wo1230 2014/4/15 文件大小:0 KB

下载得到文件列表

精品PPT课件--第五章基于ARM的程序设计--08.ppt

文档介绍

文档介绍:第五章 基于ARM的程序设计
ARM汇编语言设计--子程序调用
子程序优点
简化程序设计过程,减少了工作量,节省了时间
源程序缩短,节省了机器汇编源程序的时间和存储目标代码的存储空间
增加源程序的可读性,便于调试维护
有利于程序模块化、结构化和自顶向下的程序设计
子程序一旦编制成功,在开发各软件时都可使用,大大缩短开发周期
ARM汇编语言设计--子程序调用
子程序设计需要解决的问题
子程序的定义与调用
定义:设计出可以完成相对功能的程序段,并对汇编程序提供必要信息,在需要时可被其他主程序调用
调用:子程序在什么时候被执行,执行多少次,不是由子程序自身决定,而是在主程序调用它的时候被执行
主程序与子程序间的调用返回
主程序在需要时调用子程序,子程序结束后返回主程序
调用指令出现在主程序中,返回指令出现在子程序逻辑上的尾部
子程序可嵌套
主程序和子程序信息交换
主程序需要向子程序提供加工对象,子程序需要向子程序结交加工结果
保护现场和恢复现场
避免寄存器使用冲突
ARM汇编语言设计--子程序调用
BL 指令
AREA Init , CODE , READONLY
ENTRY
Start
LDR R0 , =0x3FF5000
LDR R1 , 0xFF
STR R1 , [R0]
LDR R0 , =0x3FF5008
LDR R1 , 0x01
STR R1 , [R0]
BL PRINT_TEXT
┉┉
PRINT_TEXT
┉┉
MOV PC,LR
┉┉
END
ARM汇编语言设计--子程序调用
用堆栈方式保护和恢复现场
;入口条件:R1
;出口条件:R5
;子程序功能:计算R5=2R1+1
AREA Init1, CODE, READONLY
ENTRY
LDR SP, =0x8040
MOV R1, #3
MOV R3, #4
MOV R4, #4
BL SUBP
ADD R2, R4, R3
SUB R2, R5, R2
B LABLE
SUBP STMEA SP!, {R3, R4, LR}
MOV R3, #2
MOV R4, #1
MUL R5, R3, R1
ADD R5, R5, R4
LDMEA SP!, {R3, R4, PC}
LABLE
END
ARM汇编语言设计—数据比较跳转
ARM汇编语言设计—循环
循环结构程序的组成
ARM汇编语言设计—循环
ARM汇编语言设计—数据块复制