赞
踩
####前言
对于整数,java语言有三种表现形式。
####数据的表示形式
计数方式,数据的表现形式,以及进制的由来
在内存中是使用“1”和“0”来表示数据的。
基本规则:8位来表示一个最小的单位,表示一个字节。(一个字节是8个二进制位)
表示数据形式:采用101010的不同组合,来代替不同的字母,形成一张表-编码表,叫ASCII表(映射对应)英文字母。
进制的由来:二进制表示的数据长度太长,为了让进制的表现形式变短,出现了八进制。
####二进制和十进制的转换
十进制转二进制
原理:对十进制数进行除2运算,
比如:求十进制数6的二进制表现形式。
解释:将余数从下往上排列,便是6的二进制数的表现形式。
二进制转十进制
原理:二进制数×2的次幂的过程
解释:次幂的第一位是0,然后以此往左推,2的1次幂,2的2次幂,2的3次幂…
因为二进制数不是1 就是0 ,只要确定某一位上是否为1,则将其对应的2的x次幂相加即可。
当8位都是1,则十进制为255,也就是以十进制为表现形式的一个字节最大是255.
应用的例子:ip地址。每段都是用一个字节表示,所以ip最大数是255.
####二进制的运算规则
原理:满2进1
5的二进制是101
4的二进制是100
####其他进制转换
二进制转十六进制
说明:四个二进制代表一位来计算十六进制。
原理:四个二进制最大值是15,满16进1
8对应的二进制位是1000
9对应的二进制位是1001
a(10=8+2)对应的二进制位是:1010
b(11=8+2+1)对应的二进制位是:1011
c(12=8+4)对应的二进制位是:1100
d(13=8+4+1)对应的二进制位是:1101
e(14=8+4+2)对应的二进制位是:1110
f(15=8+4+2+1)对应的二进制位是:1111
二进制转八进制
说明:三个二进制位代表一位来计算八进制,缺一位在最左侧拿0前补。
原理:三个二进制最大值是7,满8进1
4对应的二进制位是100
5对应的二进制位是101
6对应的二进制位是110
7对应的二进制位是111
二进制转换成八进制和十六进制,只是将每一位所得字符拼接,而不是相加,要与十进制区分开。
-结果:十进制90的二进制为01011010
十进制90的十六进制是0x5A
0101 1010
4+1 =5 8+2=10=a
十进制90的八进制是132
01 011 010
1 2+1=3 2
由于进制间,转换成二进制换算比较简单,则此次只介绍相互转换成二进制的转换过程。
####负数的二进制表现形式
整数在内存里,是占四个字节,一个字节是8位,也就是32位。
结论:负数的二进制表现形式是整数去反再加一的过程。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。