码迷,mamicode.com
首页 > 编程语言 > 详细

C语言的各种位运算符的操作简述

时间:2015-07-18 22:50:32      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:c语言   运算符   位运算   c语言程序的执行过程   

运算符:

   

     算术运算符: + , - , * , / , % , ++ , --

     符合运算符: += , *= , /= , %=

     条件运算符:  ? :

     关系运算符: == , >= , <= , != , > , <

     逻辑运算符: && , || , !

     赋值运算符: =

     其他运算符: * , & , -> , .

     位运算符

     1 > 按位与 &同时为一则为一 否则为零 3 & 5结果为 1(先将两个数化为二进制在进行计算)

                                         3 > 0000 0011

                                         5 > 0000 0101 二进制 然后按照 同时为一则为一 否则为零 变为了 0000 0001 

                                         换算之后就变成了1;

     一般用于清零操作.

     2 >按位或 | 同为0则为0 否则为1    9 | 5        9 >  00001001

                                                      |

                                                 5 >  00000101

                                                     =00001101    13

     

     

    

     3 > 按位异或不同为1,相同为0;

      

     9 ^ 5              0000 1001

                        0000 0101   

                        0000 1100    =>  8 + 4  = 12;

     

     4 >按位取反  ~  1变零    零变1   对于单个数来说  ~9

     

     

     5 >左移   <<

     高位舍弃,低位补零

                          高位           低位

                      9 > 0000 0000 0000 1001

              9 << 3      0000 0000 0100 1000    64 + 8 = 72 相当于  9 * 2 3次方

              m << n 相当于 m * 2n次方.

     6 > 右移 >>

     低位舍弃 ,高位补零(正数) 1(负数)

     有符号位 符号位跟着移动.

     

     

     10

     原码 : 原码就是本身的二进制  0000 1010

     

     补码 : (所有的数,存放在内存里的都是以补码的形式存放的.)

           1 >正数:正数的补码和原码相同

           2 >负数:负数的补码,符号位不变,数值部分,取反再加1;

       例如: -10的代码

       10000000 00000000 00000000 00001010

       11111111 11111111 11111111 11110101

       +1

       11111111 11111111 11111111 11110110

       按照16进制存放                   (4 + 2)

       FF       FF        FF      F    6 (F6)

       有的电脑会反着存放

       F6       FF        FF      FF

     

     反码 :

           1 >正数的反码和原码相同.

           2 >负数的反码,符号位不变,数值部分取反

     

     

     

     C语言程序编辑执行的过程:

     

     1 > 程序员的编码区;(coding , 撸码);

     

     2 > 预处理(预编译)

     

     3 > 编译成汇编代码

     

     4 > 将汇编代码形成目标文件

     

     5 >目标文件和附加的库文件链接,形成可执行的文件.


版权声明:本文为博主原创文章,未经博主允许不得转载。

C语言的各种位运算符的操作简述

标签:c语言   运算符   位运算   c语言程序的执行过程   

原文地址:http://blog.csdn.net/u010672206/article/details/46946053

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!