1.二进制数的转换
① 整数部分:除2取余
② 小数部分:乘2取整
2.为什么计算机的数值要补码表示 ?
00000000表示+0,而10000000表示-0,则出现逻辑上的偏差,即:+0 不等于 -0。为了解决这个问题,提出了补码表示法。
3.为什么存储同样数量的int型数据,采用二维数组所占用的内存容量远比采用一维数组所占用的内存容量大?
int num1 = 1024 * 1024 * 2;
int[] arr1 = new int[num1];
for(int i = 0; i < arr1.length; i++) {
arr1[i] = i;
}
long memory1 = Runtime.getRuntime().totalMemory() / 1024 / 1024;
System.out.println(memory1); //15
int num2 = 1024 * 1024;
int[] arr2 = new int[num2];
for(int i = 0; i < arr1.length; i++) {
arr1[0][i] = i;
arr1[1][i] = i;
}
long memory2 = Runtime.getRuntime().totalMemory() / 1024 / 1024;
System.out.println(memory2); //31