当前位置:   article > 正文

Java中关于原码,反码和补码理解_java面试题原码反码补码

java面试题原码反码补码

最近刷题总是遇到左右移操作,以及二进制原码,反码和补码,写下博客,记录总结。

原码,反码和补码

正负数定义

符号位在内存中存放的最左边一位,如果该位为0,则说明该数为正;若为1,则说明该数为负。

注意:下面所涉及的二进制码皆以带符号位的八位二进制数为例!

原码

原码:是最简单的机器数表示法,用最高位表示符号位,其他位存放该数的二进制的绝对值。
注意:下面所涉及的二进制码皆以带符号位的八位二进制数为例!

说明:二进制的加法规则
					0
+
					0
-------------------------
					0



					1
+
					0
-------------------------
					1



					1
+
					1
-------------------------
				   10



正数:最左边一位 = 0
2的原码表示为:0000 0010
4的原码表示为:0000 0100
2 + 4
-------------------------
6            0000 0110

负数:最左边一位 = 1
-2的原码表示为:1000 0010
-4的原码表示为:1000 0100

正数和负数相加:
2的原码表示为: 0000 0010
-2的原码表示为:1000 0010
2 + (-2)
-------------------------
-4			  1000 0100
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42

可以看出:利用原码进行正数和负数做加操作,会出现问题,于是为了解决这个问题,引出了反码。

反码

反码:正数的反码还是等于原码;负数的反码就是它的原码除符号位外,按位取反。

注意:下面所涉及的二进制码皆以带符号位的八位二进制数为例!

正数:
2的原码表示为:0000 0010
2的反码表示为:0000 0010

负数:
-4的原码表示为:1000 0100
-4的反码表示为:1111 1011

正数和负数反码相加:
2的反码表示为: 0000 0010
-4的反码表示为:1111 1011
2 + (-4)
--------------------------------
			  1111 1101(反码)
			  1000 0010(转换成原码)
-2			  -2(原码十进制结果)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

利用反码,我们可以解决一部分正数和负数的相加操作问题。

补码

补码:正数的补码等于它的原码;负数的补码等于反码+1。

注意:下面所涉及的二进制码皆以带符号位的八位二进制数为例!

正数:
2的原码表示为:0000 0010
2的反码表示为:0000 0010
2的补码表示为:0000 0010

负数:
-4的原码表示为:1000 0100
-4的反码表示为:1111 1011
-4的补码表示为:1111 1100
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

关于原码,反码以及补码,下面这篇文章详细介绍了相关知识:
二进制的原码、反码、补码.

<<(带符号左移运算符)

将一个数的各二进制位全部左移若干位,正负数低位均补0,左边移出部分丢弃。把一个数左移a位,相当于用该数乘以2a
注意:下面所涉及的二进制码皆以带符号位的八位二进制数为例!

正数:
4的原码表示为: 0000 0100
4的补码表示为: 0000 0100(正数三码合一
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/477942
推荐阅读
相关标签