一些变量移位后的结果

15 :
    15 = 15            00000000000000000000000000001111
    15<<4 = 240        00000000000000000000000011110000
    15>>4 = 0        00000000000000000000000000000000

-15 :
    -15 = -15        11111111111111111111111111110001
    -15<<4 = -240        11111111111111111111111100010000
    -15>>4 = -1        11111111111111111111111111111111

signed int ival1 = 15 :
    ival1 = 15        00000000000000000000000000001111
    ival1<<4 = 240        00000000000000000000000011110000
    ival1>>4 = 0        00000000000000000000000000000000

signed int ival2 = -15 :
    ival2 = -15        11111111111111111111111111110001
    ival2<<4 = -240        11111111111111111111111100010000
    ival2>>4 = -1        11111111111111111111111111111111

unsigned int uival1 = 15 :
    uival1 = 15        00000000000000000000000000001111
    uival1<<4 = 240        00000000000000000000000011110000
    uival1>>4 = 0        00000000000000000000000000000000

unsigned int uival2 = -15 :
    uival2 = 4294967281    11111111111111111111111111110001
    uival2<<4 = 4294967056     11111111111111111111111100010000
    uival2>>4 = 268435455     00001111111111111111111111111111

char cval1 = 65 :
    cval1 = A        01000001
    (int)cval1 = 65        00000000000000000000000001000001
    (uint)cval1 = 65    00000000000000000000000001000001
    cval1<<4 = 1040        00000000000000000000010000010000
    cval1>>4 = 4        00000000000000000000000000000100

char cval2 = -65 :
    cval2 = ¿        10111111
    (int)cval2 = -65    11111111111111111111111110111111
    (uint)cval2 = ¿        11111111111111111111111110111111
    cval2<<4 = -1040    11111111111111111111101111110000
    cval2>>4 = -5        11111111111111111111111111111011

signed char scval1 = 65 :
    scval1 = A        01000001
    (int)scval1 = 65    00000000000000000000000001000001
    (uint)scval1 = 65    00000000000000000000000001000001
    scval1<<4 = 1040    00000000000000000000010000010000
    scval1>>4 = 4        00000000000000000000000000000100

signed char scval2 = -65 :
    scval2 = ¿        10111111
    (int)scval2 = -65    11111111111111111111111110111111
    (uint)scval2=4294967231    11111111111111111111111110111111
    scval2<<4 = -1040    11111111111111111111101111110000
    scval2>>4 = -5        11111111111111111111111111111011

unsigned char ucval1 = 65 :
    ucval1 = A        01000001
    (int)ucval1 = 65    00000000000000000000000001000001
    (uint)ucval1 = 65    00000000000000000000000001000001
    ucval1<<4 = 1040    00000000000000000000010000010000
    ucval1>>4 = 4        00000000000000000000000000000100

unsigned char ucval2 = -65 :
    ucval2 = ¿        10111111
    (int)ucval2 = 191    00000000000000000000000010111111
    (uint)ucval2 = 191    00000000000000000000000010111111
    ucval2<<4 = 3056    00000000000000000000101111110000
    ucval2>>4 = 11        00000000000000000000000000001011

signed short sval1 = 15 :
    sval1 = 15        0000000000001111
    (int)sval1 = 15        00000000000000000000000000001111
    (uint)sval1 = 15    00000000000000000000000000001111
    sval1<<4 = 240        00000000000000000000000011110000
    sval1>>4 = 0        00000000000000000000000000000000

signed short sval2 = -15 :
    sval2 = -15        1111111111110001
    (int)sval2 = -15    11111111111111111111111111110001
    (uint)sval2=4294967281    11111111111111111111111111110001
    sval2<<4 = -240        11111111111111111111111100010000
    sval2>>4 = -1        11111111111111111111111111111111

unsigned short usval1 = 15 :
    usval1 = 15        0000000000001111
    (int)usval1 = 15    00000000000000000000000000001111
    (uint)usval1 = 15    00000000000000000000000000001111
    usval1<<4 = 240        00000000000000000000000011110000
    usval1>>4 = 0        00000000000000000000000000000000

unsigned short usval2 = -15 :
    usval2 = 65521        1111111111110001
    (int)usval2 = 65521    00000000000000001111111111110001
    (uint)usval2 = 65521    00000000000000001111111111110001
    usval2<<4 = 1048336    00000000000011111111111100010000
    usval2>>4 = 4095    00000000000000000000111111111111

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值