ARM架构简析

在这里插入图片描述
在这里插入图片描述
全局与局量等知识

断电后,程序以及数据都在FLASH中。
断电后,内存中就没有变量了。
程序在烧在FLASH中的;
在这里插入图片描述
程序运行的时候,全局变量的初始值,必然是从FLAASH中的来的:

初始化全局变量的过程:
在这里插入图片描述
在这里插入图片描述
= :代表伪指令 (去FLASH中去某个位置 读指令: 数据写到RO中去 完成初始化)
以上的方式是效率低的。那么如果全局变量很多咋办?
(BIN文件是写在 FLASH上的):
在这里插入图片描述
那如果有很多的变量怎么办?
这样程序运行的时候,就会见数据段整段的拷贝到内存。
那如果没有初始值的全局变量呢?
在这里插入图片描述
这那么多的全局变量也保存在FLASH中吗?
解答:不是的。
类似于memset,这些变量在内存中都放在ZI段,运行的时候,相当于把ZI段全部清清零。
全局变量初始化完成之后,我们才去执行main函数。

那么局部变量呢?----- 栈
在这里插入图片描述
过程:
1.记录返回地址 ;记录下一个D的地址。
2.执行C:

LR返回地址会被覆盖!
所以在A开始,就要将LR保存起来,保存在栈中,栈在哪里? 栈就是一块内存。
在这里插入图片描述
所以不仅仅是LR寄存器会被覆盖。

程序运行的时候:
第一步,将数据段拷贝到内存中。
第二步:让SP指向一块空闲的内存;
第三部:调用MAIN函数。
在这里插入图片描述
汇编中:对应的局部变量的写入栈的过程:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/253390.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

B01、JVM与Java体系结构-01

字节码与多语言混合编程 字节码概述: 我们平时说的java字节码,指的是用java语言编译成的字节码。准确的说任何能在jvm平台上执行的字节码格式都是一样的。所以应该统称为:jvm字节码。不同的编译器,可以编译出相同的字节码文件&…

【面试】广告优化

a1:点击率公式是什么?点击率低的原因是什么? 点击率点击/曝光,点击率低的原因主要有两点:一是创意不吸引人;二是目标受众不准确/定向过宽不精确,广告曝光给了对产品不感兴趣用户 a2:…

Google Gemini 模型本地可视化

Google近期发布了Gemini模型,而且开放了Gemini Pro API,Gemini Pro 可免费使用! Gemini Pro支持全球180个国家的38种语言,目前接受文本、图片作为输入并生成文本作为输出。 Gemini Pro的表现超越了其他同类模型,当前版…

version `GLIBC_2.29‘ not found 的原因和怎么解决问题

程序上经常有在这台Linux上编译,然后放到另一个Linux上运行的情况。 如果Linux版本差别不大或都是ubuntu或centos系列还好。 如果不是一个系列很容易出现GLIBC 找不到的情况。 尤其是ubuntu上编译,然后放到centos系列。因为centos为了追求所谓的稳定&…

linux系统中出现大量不可中断进程和僵尸进程怎么办?

进程状态 当iowait升高时,进程很可能因为得不到硬件的响应,而长时间处于不可中断的状态,从ps或者top命令的输出中,可以发现它们都处于D状态,也就是不可中断状态。 通过top和ps可以查看进程的状态,S列表示…

20来岁,大专毕业,学软件测试可行吗?

转行软件测试找不到工作! 转行软件测试找不到工作! 转行软件测试找不到工作! 重要的事情说三遍!千万别听培训班咨询老师给你画饼 ;我就是某某软件测试培训班出来的,大专,其他专业毕业&#x…

【数据分享】2019-2023年我国区县逐年新房房价数据(Excel/Shp格式)

房价是一个区域发展程度的重要体现,一个区域的房价越高通常代表这个区域越发达,对于人口的吸引力越大!因此,房价数据是我们在各项城市研究中都非常常用的数据!之前我们分享了2019—2023年我国区县逐月的新房房价数据&a…

实验用python实现决策树和随机森林分类

1.实验目的 1.会用Python提供的sklearn库中的决策树算法对数据进行分类 2.会用Python提供的sklearn库中的随机森林算法对数据进行分类 3.会用Python提供的方法对数据进行预处理 2.设备与环境 使用Spyder并借助Python语言进行实现 3.实验原理 决策树( Decision Tree) 又称为…

【合成数字】合成类游戏-uniapp项目开发流程详解

以前玩过2048游戏,从中发现规律,想到跟合成类游戏相似,知道为什么很相似吗,在这里,做一个数字合成游戏玩玩吧,感兴趣的话可以看看,这里给大家讲一讲数字合成游戏的开发过程。 文章目录 创建项目…

spring事务不生效的场景有哪些

参考文章地址 百度安全验证,https://www.cnblogs.com/novwind/p/17461448.html 这里讨论的是声明式事务的不生效场景。编程式事务不在此处讨论 要说明spring中哪些场景事务不生效,就要说明spring的事务控制是如何实现的。Spring框架中事务控制的运行原理…

磁力计LIS2MDL开发(2)----电子罗盘

磁力计LIS2MDL开发.2--电子罗盘 概述视频教学样品申请源码下载环境磁场建模消除硬铁误差软铁干扰主程序 概述 本文将介绍如何使用 LIS2MDL 传感器来读取数据来转化为指南针。 地磁场强度范围约为 23,000 至 66,000 nT ,并且可以建模为磁偶极子,其场线起…

10天玩转Python第8天:python 文件和异常 全面详解与代码示例

今日内容 文件操作 普通文件的操作json 文件的操作[重点] 异常处理(程序代码运行时的报错) 文件介绍 计算机的 文件,就是存储在某种 长期储存设备 上的一段 数据 作用: 将数据长期保存下来,在需要的时候使用 ​ 1.计算机只认识 二进制(0 1) 2.文件中…

CMA、CNAS软件检测公司分享:压力测试应关注的指标和面临的问题

软件压力测试是容易被传统企业忽视的测试点,用户人数一旦超过预期,极易造成软件产品卡顿、崩溃的情况,不利于用户正常使用,严重影响企业公信力和盈利水平。今天卓码软件测评小编来聊聊压力测试过程中应该关注的指标和会面临的问题…

Mysql存储引擎-InnoDB

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码、Kafka原理、分布式技术原理、数据库技术🔥如果感觉博主的文章还不错的…

电商平台如何选择分账系统

电商平台尤其是多用户商城系统,它属于资源整合型平台,随着商户的入驻,它会面临一个问题:钱要分给谁、分多少、怎么分的问题,今天,商淘云小编与您分享如何选择分账系统。 第一种是银行的分账系统&#xff0c…

1850_emacs_org-download在Windows上的使用

Grey 全部学习内容汇总: https://github.com/greyzhang/g_org 1850_emacs_org-download在Windows上的使用 对我来说,使用emacs很大的一个挑战是在Windows上,emacs的配置会比Linux上麻烦一些。而且,通常来说Windows上的体验会差…

详细了解云堡垒机的作用,提高企业数据信息安全

随着上云企业的不断增加,云上数据安全性成为企业面临的重要问题。为了保障企业的核心数据安全,越来越多的企业采购了云堡垒机来提升数据安全性。今天我们就来详细了解一下云堡垒机的作用,以及如何提高企业数据安全。 一、云堡垒机定义 云堡垒…

【精选】计算机网络教程(第2章网络层)

目录 前言 第2章网络层 1、编码与调制 2、传输方式 前言 总结计算机网络教程课程期末必记知识点。 第2章网络层 1、编码与调制 信道可以分成传送模拟信号的模拟信道和传送数字信号的数字信道两大类。通常人们将数字数据转换成数字信号的过程称为编码,而将数字…

探索 HBase GUI 工具,助您轻松驾驭大数据世界!

你是否曾为 HBase 数据管理而苦恼?别担心,这一款超级好用的 HBase GUI (HBase Assistant)工具,让您在大数据世界中游刃有余。不再需要繁琐的命令行操作,也不再为复杂的配置感到头疼。 主要功能 直观和设计…

matlab面向对象编程入门笔记

文章目录 1. 类和结构2. 定义类3. 属性3.1 private/protected/public属性3.2 constant属性3.3 hidden属性 4. 方法4.1 private/protected/public方法4.2 static方法4.3 外部方法 5. 动态调用6. 继承-超类6.1 handle超类6.2 dynamicprops 和 hgsetget子类 7. 封闭(sealed)类、方…