二进制数据的左移右移具体怎么移的? 5

这学期学了计算机组成原理,有求浮点数的加减的题,步骤是对阶,尾数相加,规格化,舍入。其中牵涉到二进制数据的左移和右移。看书也没有看懂到底怎么移的。... 这学期学了计算机组成原理,有求浮点数的加减的题,步骤是对阶,尾数相加,规格化,舍入。其中牵涉到二进制数据的左移和右移。看书也没有看懂到底怎么移的。 展开
 我来答
草原上之狼
高粉答主

2018-01-06 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.9万
采纳率:93%
帮助的人:4371万
展开全部
1、以左移为例:
if ((x &1000 0000) == 0)
移出0;
else
移出1;
操作 x<<1;

2、左移右移的操作方法:
1)C语言的左移和右移是以二进制数据为基准的
2)左移和右移的符号:左移的符号"<<";右移的符号">>"
3)无论左移还是右移,要移位的数据都在左边,符号右边是要移动的位数(例如移动3位)
4)右移是把该数据的二进制数全部右移N位,数据高位补零,左移则和右移相反。
5)右移举例--例如将5右移一位:5 >> 1(符号左边是被移位的数据,符号右边是要移位的位数)
将5转换为二进制为0B00000101 ,右移后的结果是:0B00000010
追问
那我想问下二进制数据的原码,反码,补码的左移右移怎么移的?看其他资料上还说有不同情况,正数和负数不一样,有的补0,有的补1,我跟懵。。。还有逻辑运算和算数运算的分别。。。能解释下吗?
萧薰儿的夫君
2019-08-29
知道答主
回答量:3
采纳率:0%
帮助的人:2230
展开全部
乘二时左移,和10进制乘法差不多,例如:9×10=90,(10111)×2=01110
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式