嵌入式软考备考_6 嵌入式程序设计

news2024/12/30 2:49:11

嵌入式程序设计

开发流程

要想某个功能要用硬件还是软件实现(硬件快,但是耗资源)?BSP?裸机还是OS?

硬件的设计与实现-》设备驱动软件的设计与实现-》os的选择,移植,api接口函数的设计-》支撑软件的设计与调试-》应用程序的设计与调试-》系统联调,样机交付。

程序下载流程

诸多程序文件编译生成 .obj 文件,链接生成二进制文件,下载到开发板上。

image-20230506151305907

特点:

  1. 交叉编译,即在一个平台上生成在另一个平台上运行的代码(PC上生成开发板上的程序)。
  2. 仿真调试。
  3. 开发板是中间目标机。
  4. 资源有限。

开发模式:本机开发(如以前的计算机,二进制直接编程),交叉开发(宿主机开发,下载到目标机),模拟开发(宿主机上模拟目标平台)。

程序设计语言

低级语言:机器语言,asm。

高级语言:c,c++.

汇编语言包括:指令语句,伪指令语句(给编译器看的),宏指令语句(重复执行的多个指令合并为一个宏指令)。

image-20230506151916875

表达式

前缀:+ab

中缀:a+b

后缀:ab-

image-20230506152732178

ab-c5+*

编译

解释:不产生目标文件,边分析解释执行。

编译:产生

image-20230506153539941

编译过程中相关符号信息要存入符号表。

词法:非法字符,关键字。

语法:如 if else

语义:如死循环。

C语言

预处理

image-20230506154114102

简单的用途:可以代替函数,如#define square_1(x) x*x

预定义宏

image-20230506154451014

数据类型

image-20230506154611913

存储管理

image-20230506155458931

函数:入栈。

动态申请的数据:在堆中申请。

全局变量在最开始申请,程序结束时释放。static声明的全局变量只在本文件中可见。

面向对象

对象:现实世界中的实体,封装了属性和操作。

分类:把对象抽象成一个类。

通过消息的通信:类之间的通信。

继承:拓展。

三个特点:多态,重载,覆盖。

private:本类中可以访问。

缺省(default):本包内可以访问。

protected:其他包里的子类可访问。

public:都能访问。

例题:

image-20230506165443051

*p的值是字符串str的起始地址。

A,字符串地址不能改。

B,把p重新指向字符串ABC,可以。

C,给数组第一个元素赋值为ABC,不行。

D,和A一样。

例题:

image-20230506165732453

A错了,脚本语言也可以使用。

例题:

image-20230506165911869

A,符号表是编译语言处理符号用的。

B,对。

C,不受机器影响。生成目标代码时才受机器影响。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

openGL 环境搭建

刚入坑,每个包、每个项目都得重新配一遍,实在烦人,由于网上已有很多教程,故在此只简要介绍。 比较通用的安装方法如下: 优先下载,对应vs版本,32位,已经编译好的库。如果下载的是源代…

2023 年Java经典面试题,基础篇02(持续更新)

本篇文章主要讲的是 2023 年Java最新面试题,持续更新中 原文地址:https://github.com/Snailclimb/JavaGuide 面向对象基础 面向对象和面向过程的区别 两者的主要区别在于解决问题的方式不同: 面向过程把解决问题的过程拆成一个个方法&…

Git 配置多个SSH-Key

Git 全局配置 查看全局配置 git config --global --list git config --global user.name 删除全局配置 git config --global --unset user.name 1.生成ssh public key and private key open git base, 执行以下command,其中是keyname自己填;codeup…

java程序员容易被人误解?我来聊聊常见的三种情况

先说一下个人情况吧。21年来到深圳,现在马上工作满两年。我说程序员是一个容易被人误解的职业呢,可能在大部分人的印象里,程序员就是一个呆板、穿着格子衫、戴着厚厚的眼镜片、比较呆滞的一群人。其实这个印象可能是符合上个年代吧——程序员…

第二部分——长难句——第二章——复合句——第二节——定语从句

内容比较多,且比较重要 一,定语从句的概述 定语(紧挨着名词)礼让弱小,所以放在所修饰的名词后面。 法律是一种学科(鼓励责任判定)定语修饰 在翻译成中文的习惯,我们会把定语从句放…

倒计时|数字标准读书会—打破“信息孤岛”、拆除“数据烟囱”

业务与其他业务域间存在信息鸿沟,协作效率低下; 系统边界划分复杂混乱,技术标准不兼容; 新业务无法基于已有解决方案快速组装上线,迭代创新; …… 以上这些数字化转型痛点,你是否也遇到过&a…

家里网速越来越慢?路由器附近千万别放这几样东西

我们在日常生活中常常会使用到WiFi,当遇到网络卡顿、网速缓慢时往往感到疑惑,是不是自己的WiFi速度不够?其实除了无线路由器、终端等自身产品质量问题,还有许多外在因素。 在网络本身没有问题的情况下WiFi卡顿或不稳定&#xff0…

美国限制Unity和UE渲染引擎风险增加,数字孪生行业急需国产渲染引擎软件

数字孪生作为智能制造的关键技术之一,其应用已经从工业制造领域扩展到了城市规划、交通运输、农业等多个领域。然而,随着中美脱钩的持续进行,有关3D渲染引擎的“卡脖子”问题已经引起了行业的高度关注。 美国限制3D渲染引擎风险对数字孪生产…

linux中查看某个文件夹下文件的个数和大小

一、统计某个目录的文件和子目录的大小 1、stat指令 stat命令 主要用于显示文件或文件系统的详细信息,该命令的语法格式如下: -f  不显示文件本身的信息,显示文件所在文件系统的信息-L  显示符号链接-t  简洁模式,只显示…

强化学习p3-策略学习

Policy Network (策略网络) 我们无法知道策略函数 π \pi π所以要做函数近似,求一个近似的策略函数 使用策略网络 π ( a ∣ s ; θ ) \pi(a|s;\theta) π(a∣s;θ) 去近似策略函数 π ( a ∣ s ) \pi(a|s) π(a∣s) ∑ a ∈ A π ( a ∣ s ; θ ) 1 \sum_{a\in …

【Hive实战】数据仓库设计

数仓中的数据分层 文章目录 数仓中的数据分层维度模型维度建模下的主要概念维度表事实表 结合维度模型分析数据分层贴源层 (Operation Data Store)公共维度层 CDM(Common Data Model)数据细节层 DWD(Data Warehouse De…

前端(移动端)学习笔记

PC端网页和移动端网页的区别: PC端屏幕大,网页固定版心移动端屏幕小,网页多数为100% 在谷歌浏览器中可以调试移动端网页的代码 屏幕尺寸: 屏幕尺寸指的是对角线的长度,一般用英寸来度量 分辨率: PC分辨率 1920*10…

31 - 买股票的最佳时机问题

文章目录 1. 买股票的最佳时机I2. 买股票的最佳时机II3. 最佳买卖股票时机4. 买股票的最佳时机III5. 买股票的最佳时机IV 1. 买股票的最佳时机I dp数组含义,本题两个状态:持有股票、不持有股票 dp[i][1] :表示第i天不持有股票所得最多现金dp…

最时髦的AI画画,一文包教包会

最时髦的AI画画,一文包教包会 大概半年前,AI 绘画工具 Disco Diffusion 从 Text-to-Image 开发社区和设计行业,火到了普通用户的视野中。即便它界面简陋,满屏英文和代码,也“劝退”不了人们。因为对那些没有任何美术功…

kali php无法执行,直接下载或显示php文件内容

问题描述: 开启apache或nginx,访问php文件要么直接显示php文件内容,要么直接下载,这都是php文件无法解析的问题,需要nginxphp-fpm解决 1、安装NGINX 查看是否安装,如下图则已安装 #apt-cache policy ngi…

Linux安装MinIO及springboot项目整合使用实战(详细)

以往的项目,用的比较多的OSS服务是腾讯云和阿里云的存储服务,不过从去年到今年,最近的几个项目,普遍要使用Minio,所以我在开发服务器和测试服务器上都装上了minio 一、首先minio的安装 MInIO的安装有很多方法、单实例的、集群分…

Django学习——安装、创建项目、数据库、用户管理案例

目录 1、 安装django 1.1django是第三方模块,用pip install django 安装: 1.2 python的安装目录 : 2、创建项目 2.1在终端创建的步骤 执行过程 2.2使用pycharm(企业版)创建 django项目 2.3对比两种方式 2.4默认…

推荐5款体积小、无广告、超实用的办公软件

大家好,我又来啦,今天给大家带来的几款软件,共同特点都是无广告、超实用,大家观看完可以自行搜索下载哦。 1.网络分析工具——Wireshark Wireshark 是一款开源的网络分析工具,它可以让你捕获和浏览网络上的数据包&am…

《我命由我不由天》蔡志忠——笔记二

目录 经典记录 天才不是天生的 如何认识自己、如何发掘和重用自己 自己拯救自己才是唯一出路 了解自己是人生第一个智慧 科学家证实,成就与选择目标的年龄成反比! “努力无用论” 经典记录 天才不是天生的 美国物理学家理查德费曼两三岁时&#x…

Ubuntu18.04 制作系统ISO镜像并物理机还原(Systemback)

简单记录使用Systemback工具打包Ubuntu系统得到iso镜像文件,并在物理机上进行还原(安装)的流程。测试结果发现,使用打包的iso文件安装得到的Ubuntu系统继承了我之前的Ubuntu系统,包括并不限于如下内容:Home…