补码和位运算的相关总结 java 位运算

在计算机中,内部数据的处理是以补码的形式来进行处理的,因此研究清楚补码的相关情况就显得非常重要。

既然,计算机内 部处理的基础是以补码形式,所以所有的运算都和补码会有所纠结的。

位运算也不例外……

因此我们先从基础的补码开始总结

说起补码,就不得不牵扯到原码和反码

原,反,补得关系;

我们的计算机是以2进制处理的,所以我们通常遇到的整型就要先转化为二进制;

将十进制→二进制的方法

大家想必还记得,我还是废上几句话吧!

比如说是整型的正数。用次数除以2,然后再将商继续除以2,直到商的值为0时,再将各次所得的余数从下到上以从左到右的顺序排列即可。

比如:

98;

98/2=49……0;

49/2=24……1;

24/2=12……0;

12/2=6……0;

6/2=3……0;

3/2=1……1;

1/2=0……1;

那么98 的二进制就为:1100010;

负数的二进制就是在前面加上负号;

-98就为:-1100010;

此时得到的二进制就为原码;

反码:

正数的反码就是它自己,也就是这个数的原码。

负数的反码就是将它原码前的负号去掉,然后将此负数的最高位变为1,其余的值全部取反。即1变为0,0变为1。

如:

原码:-00010111;

反码: 11101000;

补码:

正数的还是为它本身的原码,即正数的话,原码,反码,补码是一伙的。

负数的补码将最高位变为1,再将其它的位数在末尾加上1,然后就是此数的补码;

譬如:

原码:-00010100;

补码和位运算的相关总结 java 位运算

补码: 10010101;

现在就应该说说位运算的相关情况了。

分类;

位与运算、位或运算、位异或运算、位取反运算、左移运算、右移运算。

位与运算:

位与运算的运算符号为:&与c语言中的&&正好是一半。

例:已知,a=-1,b=10。求a&b。

先得到a的二进制为原码:-00000001; 补码: 1000 0010

b的二进制为原码:00001010; 补码:00001010;

将待求的数值以各自的补码形式的各个位对应相乘,遵循逻辑运算的相关算法;得出的结果也为补码形式;

1000 0010(补码)

0000 1010(补码)

×

---------------------

0000 0010(补码)=2;

所以:a&b=2;

位或运算;

符号:|与c语言的或符号(||)相比较少了一竖。

遵从的规则和位与运算差不多,不同点在于它们的各位对应相比较如果有一个1的话,那么它们对应的这个位的结果就为1;

1000 0010(补码)

0000 1010(补码)

|

---------------------

1000 1010(补码);

异或运算:

符号:^;

与以上两者的区别在于,对应的为相比较如果不一样时,则结果就为1;否则就为0;

1000 0010(补码)

0000 1010(补码)

^

---------------------

1000 1000(补码);

位取反运算;

符号:~;

规则将各个位不管最高位是1或0;即不管为正数还是负数全部取反,即1变为0,0变为1。

1000 0010(补码)

~

---------------------

0111 1101(补码);

左移运算;

符号:<<;

A<<B;此意为将A的补码向左移动B位;最高位的1或0;不管,即不管正负。再在右边补上0,移动了几个位置补上几个位置。

比如:

A<<3;

1111 1001

将A向左移动3个位置;

为: 1100 1000;

右移运算;

符号:

>>

A>>B;

和上面差不多;只不过是这个东东是需要考虑符号的即最高位不管怎么移动,总是1;

比如:

A>2;

向右移动2位。

1001 1100;

1010 0111;

  

爱华网本文地址 » http://www.aihuau.com/a/25101015/263820.html

更多阅读

怀孕第六个月胎儿和准妈妈的症状 怀孕六个月胎儿图

怀孕第六个月胎儿和准妈妈的症状——简介孕6月胎宝宝变得更结实了。如果TA觉得不舒服,还会踢妈妈的肚子呢!这时妈妈的睡眠是很重要的,妈妈的睡眠可以促进胎儿的生长。每天睡眠不少于8小时,中午休息1-2小时,最合理的睡眠姿势是左侧卧位。

盈亏平衡点的相关问题 饲料销售的盈亏平衡点

盈亏平衡点的相关问题一、盈亏平衡点图的结构  尽管盈亏平衡点图所依据的理论很简单,但是,因为固定成本和可变成本之间的界线是不明确的,因而要获得绘图时的理想数据却不那么容易。如果我们把不经调查就随意进行的分类看作是有效的,

转载 印度精制水洗罗布斯塔的相关知识 罗布斯塔咖啡豆

原文地址:印度精制水洗罗布斯塔的相关知识作者:老弗兰克红酒咖啡阿拉比卡和罗布斯塔同为咖啡属底下的不同品种,命运却天壤之别。罗巴斯塔好比命贱的灰姑娘,而她的姐妹阿拉比卡却一身贵气。两豆之争,美国人与意大利人对立了几十年。其实,美

EXCEL表中LEFT和RIGHT函数的用法 left和right函数

在用EXCEL表中的时候,懂得一些常用的函数,会给你的工作带来很大便利。就像上次偶然的机会,听同事说道LEFT和RIGHT函数的用法,还挺有用的。像导出的财务数据,日期的格式都是2010-01-01,但是如果你只需要年月,不需要日期,你可以插入另外一列,适用

闲谈ape和mp3之间的音质区别 ape与mp3的区别

好久没写文章了,和朋友们闲聊几句。 随着兼容播放无损音频播放机的上市,APE的用途越来越大了。记得当初我们取消MP3版块交流的时候,有很多朋友不理解,认为MP3和APE之间的音质区别不大。为此,我的一位好朋友还辞去了版主职务。这2年,APE

声明:《补码和位运算的相关总结 java 位运算》为网友帝灬君分享!如侵犯到您的合法权益请联系我们删除