关于左右移

关于左右移

像比如案例中的 00111100,

为什么左移的时候右边会多三个零?

右移左边要多三个零,然后要把最后面的100去掉呀?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学,你好。右移时与原数做对比,移出的为低位,进行舍弃;左移同理。

例:

http://img1.sycdn.imooc.com//climg/5d1af6980001c99505750161.jpg

  • 目力便程先辈 提问者 #1
    那我可以这样理解吗: 左移的时候就是在后边补3个0 而右移的时候就在前面补3个0,同时后边舍弃3位数? 这样简单记忆可以吗?
    2019-07-02 21:10:05
  • 好帮手慕美 回复 提问者 目力便程先辈 #2
    同学也可以这么理解的,左移几位即在后边补几个0,右移即将移出的舍弃。
    2019-07-03 09:52:40
好帮手慕美 2019-07-02 11:15:06

同学,你好。

<<左移运算规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。Python3中int类型的长度理论支持无限大的数字,几乎不存在左移时高位舍弃的情况。

>>右移运算规则:按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补符号位,正数补0,负数补1。

右移时与原数做对比,移出的为低位,进行舍弃;左移同理。在写一个16位的数时,会把高位写在前面,而把低位写在后面。同学可根据上述的左移右移的运算规则了解一下。

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 提问者 目力便程先辈 #1
    还是不太懂,能举个栗子吗
    2019-07-02 14:05:45
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师