博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数值转换
阅读量:7015 次
发布时间:2019-06-28

本文共 866 字,大约阅读时间需要 2 分钟。

数字的四种表现形式:

1、二进制:所有数字由0,1构成,逢二进一,二进制数中不会出现2。

2、八进制:以数字0(注意不是以字母O,o)开头,所有数字由0~7构成,逢八进一,八进制数中不会出现8。 

3、十进制:所有数字由0~9构成,逢十进一,十进制数中不会出现10。

4、十六进制:以0x或者0X(数字0加字母x)开头,所有数字由0~9,A~F(或者a~f)构成,逢十六进一(其中A、B、C、D、E、F分别代表10、11、12、13、14、15) 

下面进入正题,数值转换:

1)将十进制转换二进制、八进制和十六进制

除法转换法:将十进制数除以2,记录余数,得到的商继续除以2,直到商为0,然后将各次相处所得的余数从后往前逆序排列,所得余数数字序列就是该十进制数对应的二进制数。八进制和十六进制转换方法同上。

2)将二进制、八进制和十六进制转换成十进制

乘积求和法:将二进制转换为十进制:将二进制的每一位从低位到高位(右边为低位,左边为高位)的数字乘以本位的权重(就是2的第几位的位数减一次方)然后将这些积求和。例如: 1010  1*2^3+0*2^2+1*2^1+0*2^0 = 10

取三合一法:二进制转八进制:从右往左每三位一组转换成十进制数,将所得数据组合就是对应的八进制数(注意:高位不足三位补零)。例如: 1011001    001  = 1

011 = 3   001 = 1  八进制:131

二进制转十六进制:从右往左每四位一组转换成十进制数,将所得数据组合就是对应的十六进制数(注意:高位不足四位补零)例:11100   1100 = 12  0001 = 1

结果:0x1c

八进制转化二进制:每一位数字转换为三位二进制数字。 例如 23    2 = 010  3 = 011     结果:010011

十六进制转化二进制:每一位数字转换为四位二进制数字 例:0x 3e   e = 14 = 1110  3 = 0011  00111110

转载于:https://www.cnblogs.com/lilinhai123/p/8417119.html

你可能感兴趣的文章
更新SVN时提示要清理,但清理失败,乱码得解决方案
查看>>
连接mysql数据库,创建用户模型
查看>>
Nhibernate总结(一)查询返回指定字段
查看>>
Uva 10106 - Product
查看>>
Uva 101 - The Blocks Problem
查看>>
Eclipse 调试Bug之使用断点的七大技巧
查看>>
APP在用户设备发生crash,应该怎么修复
查看>>
Nodejs项目重复文件扫描
查看>>
RabbitMQ路由类型
查看>>
URL参数解析为一个对象
查看>>
laravel5.1 使用中间表的多对多关联
查看>>
[ZJOI2010]数字计数
查看>>
被这个C程序折腾死了
查看>>
lang——System_Class
查看>>
Excel实用操作
查看>>
JS 小数处理
查看>>
Opencv笔记(二十)——直方图(二)
查看>>
关于滚动条
查看>>
软件门外汉的入门进阶
查看>>
一文把samba相关的都说清楚
查看>>