单片机中的原子操作是指啥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机中的原子操作是指啥?相关的知识,希望对你有一定的参考价值。
不止单片机,所有类似的计算机里都有这个概念。这涉及到编译原理和多线程等相关的知识。
我们知道无论什么语言最终都是要编译成二进制去执行的。
以C语言为例,简单的 a=a*b;这样的语句编译之后其实是会变成几个二进制指令的,那么这就会造成一个问题,这个指令执行到一半的时候有可能被中断,大部分时候没什么影响,但是你如果中断处理程序或者另外的线程中操作了a或者b这个变量,结果很有可能会完全与你本意不一样,因为这个变量在外部被改变了。
原子操作指的就是不会被中断的操作。
在多线程之中一般会用锁做线程间的同步,避免多个线程同时操作同一段数据 参考技术A 过去曾经认为原子是不可分割的物质最小颗粒,所谓原子操作就是指不可被继续分割的一个或一系列操作。原子操作很多情况下等同于单指令周期的操作。由于不可被继续分割,原子操作对多线程而言是本质安全的。 参考技术B 在C51中可以定义bit型变量,这种变量只有一位追问
一个通用的解释是什么 很多单片机都有这个概念
.net里面的"环境变量"到底是指啥?
RT`
经常看到说要设置什么“环境变量”,不知道具体是什么
请问能具体一点吗。。。
参考技术B 像这种概念性的问题百科一下会比较好吧,如果遇到具体的问题可以结合实例详细的说一下本回答被提问者和网友采纳以上是关于单片机中的原子操作是指啥?的主要内容,如果未能解决你的问题,请参考以下文章