A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wangshengjie 中级黑马   /  2015-3-12 09:07  /  688 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

       一、位运算符:(按位与)&、按位或(|)、按位异或(^)、取反(~)、左移(<<)、右移(>>)
        二、说明:
                1、位运算符中除取反(~)以外,均为二目(元)运算符,即要求两侧各有一个运算量;
                2、运算量只能是整型或字符型的数据,不能为实行数据;
        三、按位与运算符(&)
        1、规则:参加运算的两个数据,按二进制位进行"与"运算。若两个相应的位均为1,则该位的结果为1;否则为0;
                         即0&0=0、0&1=0、1&0=0、1&1=1
        2、用途
                (1)、清零;
                                        (a)00 10 11
                                        (b)10 01 00
                                        ———————
                                        (c)00 00 00
                (2)、取一个数中某些指定位;
                        >如有一个整数a(2个字节),若想取其中的低字节。只需将a与八进制数(377)按位与即可
                                        (a)00 10 11 00 10 10 11 00
                                        (b)00 00 00 00 11 11 11 11
                                    ———————————————
                                        (c)00 00 00 00 10 10 11 00
                        >若想取两个字节中的高字节,只需c=a&0177400(八进制数177400)
                                        (a)00 10 11 00 10 10 11 00
                                        (b)11 11 11 11 00 00 00 00
                                    ———————————————
                                        (c)00 10 11 00 00 00 00 00
                (3)、若想保留某一位,就与一个数进行&运算,此数在该位取1;
                        例如:将01010100的左边第3、4、5、7、8位保留下来,则
                                        0 1 0 1 0 1 0 0(84)
                           (&)0 0 1 1 1 0 1 1(59)
                                ——————————
                                    0 0 0 1 0 0 0 0(16)

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马