![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机结构和程序原理
文章平均质量分 71
我是标同学
我非常喜欢编程
展开
-
关于arm处理器stm32启动过程启动文件详解(本质刨析)
编译器编译后,生成的是一个xx.bin文件,如下图:左边的是编译器生成的目标文件,存放在外存中,其中Text_start等标识符,编译器会自动给出,汇编里面直接引用是可以的。启动的过程:(启动文件要做的,也是CPU上电后就运行的程序)CPU把Data段和Bss段分别搬运到内存RAM中即可,Text段不用搬,因为是代码段,只需要读取即可。 跳转到外部出口函数,一般就是main函数了,就进入了用户世界了。我们打开stm32官方的启动文件,发现如下:(是跳转到了__main函数,并没有..原创 2021-12-16 15:06:43 · 1535 阅读 · 1 评论 -
嵌入式处理器DCD和SPACE区别,全局变量,局部变量,程序的栈,堆,程序编译结果的占用空间意思
***__asm void MSR_MSP(u32 addr) //__asm 关键字用于调用内联汇编程序,用来声明一个C语言函数的话, // 代表这个函数内都是汇编语句{ MSR MSP, r0 ...原创 2019-05-03 12:57:24 · 3003 阅读 · 0 评论 -
计算机程序存储分配详解和c语言函数调用过程概述
*进程和线程的区别 进程是操作系统分配资源的最小单位(比如分配的内存),而同一个进程内的线程共享这个资源。线程是系统分配时间片的最小单位。一个进程至少拥有一个线程。*程序与进程的区别 进程是动态的(代码,数据,PCB控制卡组成,有一定的生命周期),程序是静态的(指令的集合)。一个程序可以对应多个进程,但一个进程只能对应一个程序。比如C语言编译程序,会对应...原创 2019-04-29 10:58:20 · 1403 阅读 · 0 评论 -
形式语言与自动机总结
原创 2019-06-12 22:52:24 · 1720 阅读 · 0 评论 -
关于旅行商,哈密顿回路和NP问题的科普
哈密顿回路哈密顿图(哈密尔顿图)(英语:Hamiltonian graph,或Traceable graph)是一个无向图,由天文学家哈密顿提出,由指定的起点前往指定的终点,途中经过所有其他节点且只经过一次。在图论中是指含有哈密顿回路的图,闭合的哈密顿路径称作哈密顿回路(Hamiltonian cycle),含有图中所有顶点的路径称作哈密顿路径(Hamiltonian path)。天文学家...原创 2019-08-21 10:05:24 · 8911 阅读 · 1 评论 -
sourceInsight动态选中变量不同位置高亮此变量
sourceInsight中有两种高亮方式,静态高亮和动态高亮某变量1、静态高亮是指选中某变量后,shift+f8、所有这个变量都变成黄色,但是不选中这个变量了,还是会一直高亮黄色2、动态高亮就是选中这个变量,这个变量的引用处都会变成浅蓝色,取消选择了,就自动恢复正常了Option-File Type Option-Editing Option勾选Highlight reference...原创 2019-08-17 16:28:41 · 2412 阅读 · 0 评论 -
c语言可重入函数
可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。编写可重入函数时,若使用全局变量,则应通过关中断、信号量(...原创 2019-08-30 15:29:11 · 1225 阅读 · 0 评论 -
临界区,临界资源
* 什么是临界区?答:每个进程中访问临界资源(比如全局变量等公用资源)的那段程序(代码)称为临界区(临界资源是一次仅允许一个进程使用的共享资源,如全局变量等),也称为临界段。也就说是每个进程(ucos中是任务)都可以有访问这个全局变量的代码,比如某个进程想用该变量做加法,另外一个进程想用这个变量做其它用途等,那么这两个进程的这两段代码都叫做临界区,因为他们都是访问了临界资源(这个全局变量)。对于...原创 2019-09-06 09:18:41 · 2568 阅读 · 0 评论 -
八皇后问题概述与算法以及探讨如何才能成为下象棋高手和约束满足问题CSP
八皇后问题,是一个古老而著名的问题,是回溯算法(深度优先搜索算法的回退过程)的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。计算机发明后,有...原创 2019-10-04 14:00:51 · 880 阅读 · 0 评论