Java基础知识笔记_进制和原反补

Java基础复习之进制和原反补(2)

进制的概述进制概述以及二进制,八进制,十六进制图解
Java基础知识笔记_进制和原反补

任意进制到十进制的转换
Java基础知识笔记_进制和原反补
十进制到任意进制的转换
Java基础知识笔记_进制和原反补
快速的进制转换法
Java基础知识笔记_进制和原反补
不同数据类型变量参与运算图解
Java基础知识笔记_进制和原反补
原码反码补码的讲解
Java基础知识笔记_进制和原反补

面试题

byte b = 130;有没有问题?如果我想让赋值正确,可以怎么做?结果是多少呢?

//练习:byte b = (byte)300;
	class DataTypeDemo7 {
		public static void main(String[] args) {
			//因为byte的范围是:-128到127。
			//而130不在此范围内,所以报错。
			//byte b = 130; 
			
			//我们可以使用强制类型转换
			byte b = (byte) 130;
			
			//结果是多少呢?
			System.out.println(b);
		}
	}
  1. 分析过程:
    我们要想知道结果是什么,就应该知道是如何进行计算的。
    而我们又知道计算机中数据的运算都是补码进行的。
    而要得到补码,首先要计算出数据的二进制。

  2. 获取130这个数据的二进制。
    00000000 00000000 00000000 10000010
    这是130的原码,也是反码,还是补码。

  3. 做截取操作,截成byte类型的了。
    10000010
    这个结果是补码。

  4. 已知补码求原码。
    符号位 数值位
    补码: 1 0000010
    反码: 1 0000001
    原码: 1 1111110

上一篇:git仓库搭建


下一篇:es6学习记录