在单片机C语言中,==和>哪个运算的快。比如 if(a==1&&b==0&&c==0) {} 和 if(a>b&&a>c) {} 相比

如题所述

你首先要弄明白在C语言中,==和>都是如何运算的,计算机自身并不会判断大小,而是根据两个数相减的正负来判断大小的,例如,a>b,在处理器内部是要判断a-b的正负的,如果是正,则a>b成立,同理,a==1,就是判断a-1是不是等于0,所以==的运算速度要略快一些
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-24
不同的编译器可能都不一样。这个和你用的处理器也有很大关系。
你要想体搞清楚,你可能要把你写的C语言程序编译成汇编之后来分析。不同的情况都会有一些出入的。为了更高效的代码一般都是在C编译成生的汇编做优化。
有一本绝版了的 汇编语言程序设计 ——美Richard Blum 上面有讲这方面的基础知识。你可以在网上找一下,应该还有PDF。本回答被网友采纳
第2个回答  2013-02-24
==和>都是原生支持的汇编指令,速度区别是看具体芯片的实现。
第3个回答  2013-02-24
没必要这么纠结吧。都是瞬间的事儿。基本没有差别追问

其实我是想知道这是什么原因造成的。比如>>就比除2快

追答

求问你是如何测出时间的

第4个回答  2013-02-24
51的话,应该是==吧
相似回答