12.1 二进制补码运算Java虚拟机所支持的所有的整数类型-byte, short、int和long,它们都是带符号的二进制补码数。二进制补码方案既能够描述正整数,也能够描述负整数。在一个二进制补码数中,最重要的位就是它的符号位。符号位为1,表示负整数;符号位为0,表示正整数和数字0。 能够被二进 ...
分类:
其他好文 时间:
2019-12-03 23:24:53
阅读次数:
144
13.1逻辑操作码Java虚拟机的逻辑操作主要针对int和long类型。这些处理int和long类型的操作与处理带符号二进制补码数的方式不同,而是按照通用的位模式进行处理。整数移位通过ishl、ishr, iushr操作码进行。Java的“<<”操作符由ishl实现,“>>”操作符由ishr实现,“ ...
分类:
其他好文 时间:
2019-12-03 23:16:04
阅读次数:
134
1、正数的原码、反码、补码是一样的 如+1011111(95)的原码、反码、补码为: 2、负数的原码、反码、补码转换 以 1011111( 95)的原码、补码、反码的转换为例: (1)负数原码、反码转换 符号位不变,数值位按位取反 原码转反码 反码转原码 (2)负数原码、补码转换 符号位不变,数值位 ...
分类:
其他好文 时间:
2019-12-02 16:51:22
阅读次数:
73
现在很多人都在学习计算机语言,那么原码、反码、补码之间的快速转换和简单运算是怎么样的呢?今天小编为大家讲讲具体的方法,希望能够对大家有所帮助。 正数部分: 正整数的原码、反码和补码是一样的,即看到符号位(第一位)是0,就可以照着写出其他两种码。 负数部分转换: 原码和反码的相互转换:符号位不变,数值 ...
分类:
其他好文 时间:
2019-12-01 20:51:19
阅读次数:
90
1.计算十进制数的二进制int i1=Integer.parseInt("11",2);//11的二进制41 》41=32+8+1=2^5+2^3+1 0000 0000 0010 1001(正数补0)-41绝对值相同的正负数的原码(除符号位)相同(正数的原码 补码 反码相同)负数的反码等于原码取反 ...
分类:
编程语言 时间:
2019-11-26 17:51:21
阅读次数:
90
一、计算机基础 1.1、进制 计算机中的数字有四种存在形式,分别是:十进制、二进制、八进制和十六进制 1.1.1、十进制 1.基数:0 9 2.进位:逢10进1 3.位权:例:123 = 3\ 10^0 + 2\ 10^1 +1\ 10^2,其中10\^x就是这个十进制数的权位 4.在Python中 ...
分类:
编程语言 时间:
2019-11-19 15:48:57
阅读次数:
82
参考: https://www.zhihu.com/question/20159860 https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html 总结一些要点 为了使计算机运算数据更加简单,减法转换为加法: 1 - ...
分类:
其他好文 时间:
2019-11-18 12:33:33
阅读次数:
86
一、机器数和真值 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1. 比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00000011。如果是 -3 ,就是 10000011 。 那么,这里的 ...
分类:
其他好文 时间:
2019-11-11 00:45:53
阅读次数:
109
位取反运算符会将目标数的补码的各位取反。 ~正数的流程:1. 首先十进制数会被转化为二进制补码的形式; 2. 然后上一步得到的二进制补码的各位取反(~发挥作用); 3. 上一步得到的二进制数-1,然后取反,得到目标值(这个目标值是指~正数这个负数)的绝对值的补码; 4. 上一步的补码转化为十进制正数 ...
分类:
编程语言 时间:
2019-11-10 22:32:31
阅读次数:
128
补码一位乘法 首先了解下什么是补码? 补码概念的理解,需要先从“模”的概念开始。 我们可以把模理解为一个容器的容量。当超出这个 容量时,会自动溢出。如:我们最常见到的时钟,其容量 是 12,过了 12 点之后,就会变为 1 点, 2 点……也就是 说,超过12的部分将被丢弃。那么,在这个例子当中,时 ...
分类:
编程语言 时间:
2019-11-09 20:12:30
阅读次数:
149