正数是用原码来表示的 负数是用补码来表示的 原文地址:https://www.cnblogs.com/littleswan/p/11366596.html 时间: 2024-10-12 13:37:39
Java中的二进制及基本的位运算 二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.它的基数为2,进位规则是"逢二进一",借位规则是"借一当二",由18世纪德国数理哲学大师莱布尼兹发现.当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的.计算机中的二进制则是一个非常微小的开关,用"开"来表示1,"关"来表示0. 那么Java中的二进制又是怎么样的呢?让我们一起来揭开它神
(1)按位与运算 & 1 & 1 = 1, 0 & 1 = 0 51 & 5 即 0011 0011 & 0000 0101 =0000 0001 = 1: (2)按位或运算 | 1 | 0 = 1,1|1 =1, 0|0 =0 51 | 5 即 0011 0011 | 0000 0101 =0011 0111 =55: (3)异或运算 ^ 1 ^ 1 = 0,1 ^ 0 = 1 ,0^ 0 = 0(两个位的值不同,则结果为1,相同结果为0) 51
我相信,这篇文章读起来会相当有趣. 文章中编程语言是Java,用Java的原因:第一,Java不做数据溢出校验,这样我们可以忽略溢出异常:第二,Java普及率比较高,就像是python或shell,几乎人人都会呐. 确定一些位运算符:| 按位或 1001 | 1010 = 1011 (口诀,有真则真 似or逻辑)^ 按位异或 1001 ^ 1010 = 0011 (口诀,不等则真)& 按位与 1001 & 1010 = 1000 (口诀,同真则真 似and逻辑)~ 按位取反 ~1001 =
使用二制数中的最高位表示正负. 首先得知道最高位是哪一位?1个字节的类型,如字符类型,最高位是第7位,2个字节的数,最高位是第15位,4个字节的数,最高位是第31位. 不同长度的数值类型,其最高位也就不同,但总是最左边的那位(如下示意). 字符类型固定是1个字节,所以最高位总是第7位. (红色为最高位) 单字节数: 1111 1111 双字节数: 1111 1111 1111 1111 四字节数: 1111 1111 1111 1111 1111 1111 1111 1111 当我们指定一
1.进制 进制是一种记数方式 ,可以用有限的数字符号代表所有的数值.由特定的数值组成. 2.进制的表现形式 二进制: 由0和1两个数字组成. 八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始. 十进制: 都是以0-9这九个数字组成,不能以0开头. 十六进制:由0-9和A-F组成.为了区分于其他数字的区别,开头都是以0x或0X开始. 3.进制之间的转换 3.1 十进制转二进制:除以2,反向取余数,直到商为0.(Integer.toBinaryString(9)) 3.2
package com.fetion.test; import java.io.BufferedReader;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.ut
移位 java 中有对 二进制移动分为 左移(<<) 和右移(>>) 其中右移还分为 有符号右移(>>) 和无符号右移(>>>) 1.有符号右移:将二进制向右移动 如果原来符号位为0 则新符号位也用0 否则用1; 2.无符号右移:将二进制向右移动 不管原来的符号位是0还是1 一律用0 补位; 正负数转换 举个例子: 3的二进制 用一个字节表示 0000 0011 正常一个负数的变现方式是:其正数按位取反再加1 0000 0011 取反:1111 110
一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0 int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0 long:长整型,在内存中占64位,即8个字节-2^63~2^63-1,默认值0L float:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数
部分内容转自:java 彻底理解 byte char short int float long double 首先说byte: 这段是摘自jdk中 Byte.java中的源代码: 1 /** 2 * A constant holding the minimum value a <code>byte</code> can 3 * have, -2<sup>7</sup>. 4 */ 5 public static final byte MIN_VALUE =