- 博客(15)
- 收藏
- 关注
原创 如何在Ubuntu20.04上使用vscode编译运行和调试C/C++
这里写自定义目录标题一、安装visual stdio code二、编译与运行三、配置调试环境一、安装visual stdio code打开你的终端(Ctrl+Alt+T)并且运行下面的命令: sudo snap install --classic codeVisual Studio Code 就安装完成了。当然,你也可以从Ubuntu Software直接下载安装。安装好gcc/g++和gdbsudo apt-get update[有密码则输入密码]sudo apt-get ins
2021-12-27 17:06:31
4950
原创 回溯算法设计(2):回溯法解决0/1背包问题
问题描述有n个重量分别为{w1,w2,…,wn}的物品,它们的价值分别为{v1,v2,…,vn},给定一个容量为W的背包。设计从这些物品中选取一部分物品放入该背包的方案,每个物品要么选中要么不选中,要求选中的物品不仅能够放到背包中,而且满足重量限制具有最大的价值bi显然0/1背包问题的解空间是一棵子集树。求解问题装入背包中的物品重量和恰好为W用w[1…n]/v[1…n]存放物品信息,x[1…n]数组存放最优解,其中每个元素取1或0,x[i]=1表示第i个物品放入背包中,x[i]=0表示第
2021-11-30 11:35:18
1764
原创 回溯算法设计(1): 回溯法概述
回溯法概述问题的解空间一个复杂问题的解决方案是由若干个小的决策步骤组成的决策序列,解决一个问题的所有可能的决策序列构成该问题的解空间。解空间中满足约束条件的决策序列称为可行解在约束条件下使目标达到最优的可行解称为该问题的最优解问题的解由一个不等长或等长的解向量X={x1,x2,…,xn}组成,其中分量xi表示第i步的操作所有满足约束条件的解向量组构成了问题的解空间解空间一般用树形式组织,也称为解空间树或状态空间求解问题类型找所有解找最优解什么是回溯法在解空间树中,按照深度优
2021-11-30 10:53:10
2138
原创 最常用的入门conda命令
conda命令最近在配置新的虚拟环境,记录一些常用的conda命令方便大家日后使用。创建虚拟环境conda create --n envname python=3.8使用虚拟环境conda activate my_env退出虚拟环境conda deactivate查看当前所有虚拟环境conda env list删除虚拟环境conda remove -n my_env --all克隆虚拟环境conda create -n new_env --cl
2021-11-29 20:49:14
602
原创 动态规划算法(2)
动态规划(2)动态规划算法设计要点引入参数来界定子问题的边界. 注意子问题的重叠程度.(边界表示)确定子问题依赖关系. 给出带边界参数的优化函数定义与优化函数的递推关系,找到递推关系的初值. (转移方程)考虑是否需要标记函数采用自底向上的实现技术,从最小的子问题开始迭代计算,计算中用备忘录保留优化函数核标记函数的值。8.5 求解最长公共子序列问题问题描述:求给定两个序列的最长公共子序列。字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后形成的序列
2021-11-21 21:03:30
830
原创 嵌入式系统(九):鸿蒙系统卡片与原子服务
鸿蒙卡片和原子服务什么是卡片凡是图标下方显示一条横线的应用,都可以在桌面上添加对应的卡片。用户无需打开应用,就可以从卡片中获取应用相关的动态信息通过与卡片进行交互,用户无需打开应用,就可以实现应用内的部分操作。卡片是应用内页面的展现形式,将页面的重要信息或者操作前置到卡片上,以达到服务直达、减少体验层级的目的。卡片的数量及尺寸一个应用内包含1-N个Page Ability,我们可以在config.json中为每个Page Ability配置0-16个卡片,而配置的每个卡片可以有1-4个尺
2021-11-20 18:49:21
1032
原创 嵌入式系统(八):基本概念
第二章 基本概念1、嵌入式系统硬件基础冯诺依曼结构(程序和数据不分开存储)、哈佛结构(程序和数据分开存储)CISC和RISCCISC:复杂指令集(Complex Instruction Set Computer)RISC:精简指令集(Reduced Instruction Set Computer)IP核知识产权核,电路或核是设计好并经过验证的集成电路单元,主要分为:(1)软核(2)硬核(3)固核三种模式:计者提供设计和工具的许可证核厂商设计并制造集成电路芯片核厂商卖核, 负责
2021-11-20 18:43:01
716
原创 嵌入式系统(七):引言
嵌入式系统的定义和体系结构嵌入式系统的定义IEEE定义:嵌入式系统是用于控制、监视或者辅助操作机器和设备的装置。(是软件和硬件的综合体,还可以涵盖机电等附属装置)以应用为中心,以计算机技术为基础,软硬件可剪裁,功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。以嵌入式应用为目的的计算机系统(系统及、板级、片级)。嵌入到对象体系内部的专用计算机系统。广义:带有微处理器的专用软硬件系统都可以称为嵌入式系统狭义:具有自己操作系统,具有特定功能,用于滕鼎场合的嵌入式体统。实时系统定义:实
2021-11-20 18:41:00
1046
原创 嵌入式系统(六):AIOT技术挑战与RISC-V 处理器机遇
AIOT时代嵌入式技术的挑战嵌入式系统展望拥抱AI:嵌入式系统将与AI “三要素” – 算力、数据、算法合作找到合适解决方案万物互联AIOT什么是AIOT市场层面看:AIOT是 AI技术与IoT在实际应用中的落地融合技术层面看:AIOT 是把AI 技术嵌入到IOT 设备之中AIOT 的典型应用AIOT的时代挑战IOT 系统融入了“人”,人机交互走向人机融合功能安全更加重要信息安全依然重要“物”从传统封闭系统走向开放互联网世界封闭系统的安全应对开放的挑战封闭系统
2021-11-20 18:38:38
8451
原创 嵌入式系统(五):RISC-V4
RV32M添加了整数乘法和除法指令除法指令div、divu: 有符号和无符号整数的除法指令,它们将商放入目标寄存器rem、remu: 将余数写入目标寄存器beqz: 测试除数是否为零乘法指令积=被乘数×乘数积的长度是乘数和被乘数长度的和,将两个32位数相乘得到的是64位乘积mul:要得到整数32位成绩(64位中的低32位)mulh:得到高32位,有符号mulhu:操作数都是无符号数mulhus:一个有符号,一个无符号mulh和mulhu可以检查乘法的溢出在一条指令中完成把
2021-11-04 20:30:19
899
原创 嵌入式系统(四):RISC-V处理器3
RISC-V 汇编语言函数调用规范调用过程分为六个阶段:将参数存储到函数能够访问到的位置跳转到函数开始位置(使用RV32I的jal指令)获取函数需要的局部存储资源,按需保存寄存器执行函数中的指令将返回值存储到调用者能够访问到的位置,回复寄存器,释放局部存储资源返回调用函数的位置(使用ret指令)为了获得良好的性能,变量应该经量存放在寄存器而不是内存中,但同时也要注意保存和恢复寄存器,因为他们同样会访问内存。临时寄存器:函数调用过程中不保留部分寄存器存储的值保存寄存器:保留寄存
2021-11-03 21:05:54
184
原创 嵌入式系统(三):RISC-V处理器2
RISC-V基础整数指令集导言RV32I基础指令集命名规则:将有下划线的字母从左到右链接起来,即可完成完整的RV32I指令集。集合标志{}内列举了指令的所有变体,变体用加下划线的字母或下划线字符_表示。特别的,下划线字符_表示对于此指令不需要用字符表示。RV32I指令格式六种基本指令格式:用于寄存器-寄存器操作的R类型指令用于短立即数和访存load操作的I型指令用于访存store操作的S型指令用于条件跳转操作的B类型指令用于长立即数的U型指令和用于无条件跳转的J型指令指令
2021-11-03 21:02:48
440
原创 嵌入式系统(二):RISC-V处理器1
为什么要有RISC-V?导言RISC-V的目标是成为一个通用的指令集架构(ISA)能适应各类控制器到处理器能兼容各种流行的软件栈和编程语言适应所有实现技术对所有为体系结构样式都有效支持广泛的专业化,成为定制加速器的基础稳定的,基础的指令集架构不应该改变模块化与增量型ISA计算机体系结构的传统方法是增量ISA,新处理器不仅必须实现新的ISA扩展,还必须实现过去的所有扩展。x86-32(32位地址版本的x86)的每个实现必须实现过去的扩展中的错误设计,即便他们不在有意义。RISC-
2021-11-02 21:30:41
279
原创 嵌入式系统(一):鸿蒙系统
本文为期末复习笔记,内容仅供参考????鸿蒙系统是一款面向万物互联时代的、全新的分布式操作系统鸿蒙提出了基于同一套系统能力、适配多种终端形态的分布式理念提供全场景(移动办公、运动健康、社交通信、指挥出行、媒体娱乐等)业务能力华为是OpenHarmony开源项目的共建者、也是共享者之一鸿蒙技术特性分布式设计一次开发,多端部署系统与硬件解耦,弹性部署三大分布式能力分布式软总线设备间互联互通提供分布式通信能力从手动发现,进化成自发现传输高带宽关键技术-极简协议分布式数据管
2021-11-02 17:32:27
3736
原创 爬楼梯算法 一个小孩练习爬台阶,一共10级台阶,小孩可以一次向上选择爬1-3级
爬楼梯算法一个小孩练习爬台阶,一共10级台阶,小孩可以一次向上选择爬1-3级。但是第3级和第6级台阶被施加了魔法,小孩一旦踏上就会停下来就开始跳《新宝岛》。那么,不让小孩跳《新宝岛》的爬法一共有多少种 ?b站技术对抗赛,使用递归方法求解:sum=0 #起始台阶stair_num=10 #台阶总数def jumpstairs(num): global sum global stair_num for i in range(1,4): if (num+i)==
2021-10-28 13:04:22
1198
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人