汇编语言
文章平均质量分 68
Xzg_2017
这个作者很懒,什么都没留下…
展开
-
从汇编角度浅谈i++和++i的区别
从汇编角度浅谈i++和++i的区别初学之时,我认为i++和++i其实并没有多大区别,i++是先取i的值,再给i值加1,++i是先给i值加1,再取i的值,都是自增运算,效率感觉都差不多,最终实现的都是i值加1。直到看到了下面的代码,我才发现i++和++i还是有很大差别的,尤其是在效率上。当看到这道题时,我感觉挺简单的呀。首先,由于逗号运算符是从右往左进行,所以先打印最右边i++,再打印–...原创 2017-10-25 22:38:37 · 645 阅读 · 0 评论 -
逻辑移位和算术移位的区别
逻辑移位 逻辑移位是指逻辑左移和逻辑右移,移出的空位都用0来补。算术移位算术移位 就需要分有符号型值和无符号型值 对于无符号型值,算术移位等同于逻辑移位。 而对于有符号型值 ,算术左移等同于逻辑左移,算术右移补的是符号位,正数补0,负数补1。那么C编译器中采用的是那种移位方式呢?在汇编指令中,shl和shr表示逻辑左移和逻辑右移,sal和sar表示算术左移和算术右移。首先让我们来看一段原创 2018-05-01 18:02:27 · 41514 阅读 · 1 评论