位运算

一、6种基本的位操作

&               按位与运算
|               按位或运算
^               按位异或运算
<<              按位左移运算
>>              按位右移运算
~               按位补运算

1、按位与:测试两个二进制数,如果两个数对应的位值均为1,则该位值返回1,如果不同时为1,则该位值返回0。

    01001011
  & 00010101
 -------------
    00000001

2、按位或:测试两个二进制数,如果两个数对应的位值至少有一个为1,则该位值返回1,仅当该位值同时为0时,则该位值返回0。

    01001011
  | 00010101
 -------------
    01011111

3、按位异或:测试两个二进制数,如果两个数对应的位值不相同,则该位值返回1,如果两个数对应的位值相同,则该位值返回0。

    01001011
  ^ 00010101
 -------------
    01011110

4、按位左移:测试一个二进制数,将二进制中的所有位向左移动,并用0填充空出的位。

    01001011
<< 2
 -------------
    00101100

5、按位右移:测试一个二进制数,将二进制中的所有位向右移动,(并用0填充空出的位??)

    01001011
<< 2
 -------------
    ??010010

注意:在按位右移中,填充位是符号“?”的使用。左移操作中用0填充空出的位,右移操作仅当操作的二进制数是一个无符号数时才用0填充。如果操作数时有符号数,那么右移操作将用符号位或者0(根据具体要求)填充空出的位。一般情况下,最安全的做法是不要右移有符号的操作数。

6、按位补:测试一个二进制数,将二进制是中的所有位取反。

    01001011
  ~
  ------------
    10110100

二、基本的位运算的应用

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值