zoukankan      html  css  js  c++  java
  • 2018-1-20:左移<<和右移>>运算以及和>>>(无符号右移)的区别以及位运算的小题目

    首先:左移和右移以及无符号右移都是应用于2的次幂运算

    左移几位就相当于该数据乘以2的几次方:即完成2的次幂运算

    右移几位就相当于该数据除以2的几次方:即完成2的次幂运算,右移有个小特点:右移之后空出的最高位要用原来的最高位来补,以此来保证数的正负不变号

    无符号右移:即无论原始数为正负,右移之后的空位均使用0来补

    题目一:最有效率的计算2*8

    即 2<<3

    题目二:不借助第三方变量实现两个数的交换

    方法一:

    a = a + b

    b = a - b;

    a = a - b;

    这确实是一种方法,但是不推荐使用,因为如果两个数的值过大,相加后可能超出int范围

    方法二:

    a = a ^ b

    b = a ^ b

    a = a ^ b

  • 相关阅读:
    Mono 1.1.16
    Minimum Profit 3.3.18a
    PenguinTV 1.90
    Beagle 0.2.7
    Bonfire 0.4.0
    wxDownload Fast 0.4.5
    Network Configurator 0.1.8
    VMware Server 1.0
    MonoDevelop 0.11
    GTKsopcast 0.2.8
  • 原文地址:https://www.cnblogs.com/tfboy/p/8321401.html
Copyright © 2011-2022 走看看