APTCS标准

概念:ATPCS即ARM-THUMB procedure call standard(ARM-Thumb过程调用标准)的简称

参数规则:函数参数传递的时候,前4个参数通过r0-r3来传递,超过4个的参数通过栈来传递

  • 如,传入abcd四个参数是通过r0-r3来传递, 当需要传ef的时候则通过压入栈来实现,所以寄 存器的效率比内存高
  • 部分公司会规定函数参数的个数不超过4个,当 超过4个时要考虑编译器执行效率的问题

返回值规则 :栈模式规则 例函数返回值通过r0带回

问题1:为什么data作为局部变量,还能将值传出来?

  • 通过寄存器获取,将data的值放到r0寄存器中
  • 在调用后,获取的返回值从r0中读取即可
  • 栈区空间正常释放,r0寄存器中的值不会消失

 

问题2:为什么*p打印出来还是100?

  • 栈空间内容没有被释放,因为栈空间没有被重新划分
  • 在打印之前调用其他函数,栈空间会被重新划分

栈模式规则:main函数编译完后,就是个标签Lable

 mov ip, sp :把sp的值赋值给ip, ip是暂存sp的

stmfd sp!,{fp,ip,lr,pc}:

  • 入栈操作,压入fp,ip,lr,pc, 而且加!表示sp 的值要减4次
  • 先放哪个?fp还是pc? pc 要遵从大寄存器对大地址,小寄存器 对小地址

sub fp,ip ,#4:

  • fp = ip - 4
  • fp是栈增寄存器,记录的是栈的开始地址
  • fp是栈开始,sp是栈结束,相减就是栈空间大小

sub sp,sp, #16 :总共有4个局部变量,argc argv i b 每个大小为4

str r0,[fp,# - 24] : argc

str r1,[fp,#-28] : argv     第一,二个参数靠r0,r1传递

mov r3,#0                      对b,i 两个局部变量进行初始化 为0

mov r3,[fp,#-20]             对b,i 两个局部变量进行初始化 为0

mov r3,#0                       对b,i 两个局部变量进行初始化 为0

mov r3,[fp,#-16]             对b,i 两个局部变量进行初始化 为0

局部变量初始化,首先是给局部变量 分配内存,然后再赋值,栈空间形成

b = i ++ + ++ i;被拆成这三部分进行运算

  • i = i + 1 => i : 1
  • b = i + i => b : 2
  • i = i + 1 => i : 2

printf的第一个参数和第二个参数

ldr r0, .L3

ldr r1, [fp, #-20]

sub sp , fp, #12

main函数结束后退栈

sp一开始在-28这里 减后退到了-12

内存里面的值没有消失

  • sub sp, fp, #12这里并没有清掉内存
  • 要 时间,没必要清,后面会覆盖  

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值