zoukankan      html  css  js  c++  java
  • 初赛复习——位运算

    (1).分类

    符号 含义
    &
    |
    ^ 异或
    ~ 取反
    << 左移
    >> 右移

    (2).详解

    ((1).&)(与运算)

    核心:(1)(1),其余取 (0)

    (Example)
    (10)(15) 进行 (&) 运算

    ((10)_{10} = (1010)_2)((15)_{10} = (1111)_2)
    (1010 & 1111 = 1010)
    ((1010)_2 = (10)_{10})
    故答案为 (10).

    ((2).|)(或运算)

    核心:有 (1)(1) ,同 (0)(0)

    (Example)
    (10)(15) 进行 (|) 运算

    ((10)_{10} = (1010)_2)((15)_{10} = (1111)_2)
    (1010 | 1111 = 1111)
    ((1111)_2 = (15)_{10})
    故答案为 (15).

    ((3).)^ (异或运算)

    核心:相同取(0),相异取(1)

    (Example)
    (10)(15) 进行 ^ 运算

    ((10)_{10} = (1010)_2)((15)_{10} = (1111)_2)
    (1010) ^ (1111 = 0101)
    ((101)_2 = (5)_{10})
    故答案为 (5).

    ((4).sim)(取反运算)

    核心:(0 o1)(1 o0)

    (Example)
    (10) 进行 (sim) 运算

    ((10)_{10} = (1010)_2)
    (sim1010 = 0101)
    ((101)_2 = (5)_{10})
    故答案为 (5)

    ((5).<<)(左移运算)

    核心:所有二进制位左移,高位丢弃,低位补 (0)

    (Example)
    (10) 的二进制位左移 (2)
    ((10)_{10} = (1010)_2)
    (1010<<2 = 101000)
    ((101000)_2 = (40)_{10})
    故答案为 (40)

    ((6).>>)(右移运算)

    核心:所有二进制位右移,低位丢弃,正数高位补 (0),负数高位补 (1)

    (Example)
    (12) 的二进制位右移 (2)
    ((12)_{10} = (1100)_2)
    (1100>>2 = 0011)
    ((11)_2 = (3)_{10})
    故答案为 (3)

    注:每左移 (1) 位相当于在十进制下 (*2),每右移1位相当于在十进制下 (/2).

    (a>>b = adiv 2^b)
    (a<<b = acdot 2^b)

  • 相关阅读:
    jquery插件:web2.0分格的分页脚,可用于ajax无刷新分页
    Application共享数据
    WebClient类
    HttpResponse类
    IEqualityComparer<T>接口
    物理数据库设计 理解浮点数
    Server对象,HttpServerUtility类,获取服务器信息
    Linq to OBJECT之非延时标准查询操作符
    IComparer<T> 接口Linq比较接口
    会话状态Session
  • 原文地址:https://www.cnblogs.com/-pwl/p/13767123.html
Copyright © 2011-2022 走看看