看了你就会计算正负数反码原码和补码了
常识简介:
byte叫字节 1个字节是由8位二进制组成的 取值范围为 -128→127 对应的二进制分别为(10000000和01111111)最高位的1和0是符号位 1代表负数 0代表正数
无符号数据类型和有符号的区别:有符号数据类型有负数
java中八大基本数据类型及对应的二进制位数 byte(字节8位) short(短整型16) int(整型32) long(长整型64) float(浮点型32) double(双精度64) char(字符型16) boolean(布尔型1)
java基本数据类型对应的包装类,分别是Byte、Short、Integer、Long、Float、Double、Character和Boolean。而String和Date本身就是类。想知道各个数据类型的取值范围可以用如下方法:
拿byte为例System.out.println(Byte.MAX_VALUE); System.out.println(Byte.MIN_VALUE);
char类型: 记住所有char类型的字符都占 2 个字节,虽然英文字母占一个字节但是如果char类型的如 ‘c’ 也是两个字节
数据类型和精度
数据类型可以自动从低精度到高精度 反过来不行 例如int a=1.2不行
在java中的小数默认是double 所以 float a=3.4就不行 正确 float a=3.4f
强制把高精度转换为低精度 int a =(int)1.2; 结果为1
啰嗦了 这是我的笔记 有点乱但还比较实用
好了下面讲解正负数反码原码和补码计算
正数:正数的原码反码补码为都相同 没什么好说的
负数:首先要记住一点负数是以补码形式存在的 比如 -5 它的二进制码为11111011
这个也就是它的补码。
-5 的二进制码是怎么计算的呢?
方法:先把-5当做正5 我们应该很容易知道5的二进制码为 00000101 →再对其每位取反 即11111010 →再末位+1 11111011(这个就是-5的二进制码了)
计算机一般按照补码方式存储数字,所以正5补码加上-5的补码才为0
-5 的二进制表示形式为11111011(即补码)
-5的原码为10000101 计算方法:当做正5 然后把最高位改成1
-5的反码为11111010 计算方法:符号位1不变原码取反
补码=反码+1
亲,给个好评呗!!!!!!