debug 【重点】
进制 【重点】
debug 【重点】
什么是debug
是一种代码的调试功能,方便我们找出代码的错误
bug:我们常常将代码中的一些错误称为bug,bug翻译过来是“小虫子”的意思
debug的作用:
对代码一步步的执行
1、对代码进行调试,找出代码的错误
2、可以查看程序的执行流程
debug的使用
步骤:
1、打断点
断点:debug运行的时候程序会停留在断点处
2、debug启动
3、断点操作
F8:一步步往下执行
F7:进入自定义的方法内部,如果没有方法调用则和F8是一样的效果
alt+shift+F7:进入源码的方法内部,如果没有源码方法和F7是一样的效果
shift+F8:出方法
进制 【重点】
进制概述
什么是进制
进位方式,几进制就逢几进一
计算机中常见的进制
十进制:由0~9这十个数字组成,不需要修饰,整数默认就是十进制数据
逢十进一,借一当十
二进制:由0和1这两个数字组成,前面使用0b修饰
逢二进一,借一当二
八进制:由0~7这八个数字组成,前面使用0修饰
逢八进一,借一当八
十六进制:由0~9这十个数字和a~f这六个字母组成,前面使用0x修饰
逢十六进一,借一当十六
进制转换
一个数据从一种进制转换为另一种进制
任意进制到十进制
公式:系数*基数的权次方 之和
系数:每一位上的数
基数:几进制,基数就是几
权:从右往左从0开始递增1
0b0101
1*2^0 + 0*2^1 + 1*2^2 + 0*2^3 = 5
027
7*8^0 + 2*8^1 = 23
0xc8
8*16^0 + 12*16^1 = 200
十进制到任意进制
公式:除基倒取余
98 ->二进制 0b1100010
98 ->八进制 0142
98 ->十六进制 0x62
快速转换方式
二进制和十进制之间的快速转换
8421码
二进制和八进制的快速转换
每1个八进制位是由3个二进制位组成
二进制和十六进制的快速转换
每1个十六进制位是由4个二进制位组成
0b10010 -转为->十进制,八进制,十六进制
十进制: 18
八进制:022
十六进制:0x12
78 -转为->二进制,八进制,十六进制
二进制
78 = 64 + 8 + 4 + 2 = 0b1001110
八进制
78 = 0116
十六进制
78 = 0x4e
原反补码
计算机中是以补码方式进行运算的
计算机中是以原码方式查看数据的
正数的原反补码都一样
负数的原反补码一般不一样
原码
反码
补码
原码和补码的转换
原码 ->补码: 取反再+1
补码 ->原码: -1再取反
快速转换公式:
左右两边第一次出现的1及其之外的数据不变,之中的数据0变1,1变0
10000010 补码
11111110 原码
位运算
& | ^ ~ << >> >>>
/*
1、将位运算符&左右两边的十进制整数转为二进制
00000110 6的二进制
& 00000010 2的二进制
--------------
00000010 补码
|
00000010 原码
*/
System.out.println(6 & 2);// 2
<<:左移操作,可以快速求一个数乘以2的几次方,左移几位就是几次方
>>:右移操作,可以快速求一个数除以2的几次方,右移几位就是几次方
^:一个数异或另一个数两次,得到这个数本身