0
点赞
收藏
分享

微信扫一扫

二进制基础

IT影子 2022-05-04 阅读 175
java

计算机的世界里只有0和1

那如何把二进制转为十进制呢

如下图:

二进制

1 二进制是计算机采用的表示数字的方式, 每个数位上只有0和1;

2 任何整数一定可以采用二进制的方式表示, 小数的二进制这里不多说;

3 字节内部采用二进制方式记录数字, 一个字节分成八段, 每个分段有一个编号, 最右边分段编号是0, 向左逐渐递增

4 相邻分段之间有2倍关系, 某个分段的数字相当于2的编号次方

二进制转十进制:

把每个数位单独转换后把所有的转换结果求和

例:01001110 = 2^6 + 2^3 + 2^2 + 2^1 = 64 + 8 + 4 + 2 = 78

十进制转二进制:

方法一:(不适用于处理大数字)先把十进制数字拆分成多个2的整数次方之和, 然后对每个结果单独转换, 最后其他数位补0。

59 = 32 + 16 + 8 + 2 + 1 = 2^5 + 2^4 + 2^3 + 2^1 + 2^0 = 00111011

方法二:除2取余, 逆序余数;

上述两种方法算出来的是二进制原码

计算机字节里采用二进制补码记录数字

所有非负数整数, 补码和原码一样

八进制:

1 把二进制表示方式的所有数位从右向左每三个数位分成一组, 每组用一个0到7之间的数字代替可得到八进制表示方式

2 每三个数位可以采用421方法把二进制转化成八进制

3 可以在程序中使用八进制表示数字, 为了避免与十进制混淆, 需要在八进制前面加0(零)

4 %o可以作为八进制数的占位符

十六进制:

1 所有数位从右向左每四个数位分成一组, 每组用一个字母替换就得到对应的十六进制表示方式, 先把每组转换成十进制, 转换结果如果在0到9之间则用阿拉伯数字字符替换, 否则用‘a’到'f'这六个英文字母替换

2 每四个数位可以采用8421方法把二进制转化成十六进制

2 可以在程序中使用十六进制表示数字, 但是必须以0x做开头

3 %x %X 可以作为十六进制数的占位符(%x输出a-f, %X输出A-F)

举报

相关推荐

二进制

玩转二进制

# 二进制+Html

Java 二进制

二进制求和

mysqldump二进制

缩短二进制

二进制文件

0 条评论