进制和进制转换

一、进制的基础

1、十进制(案例)

系数:0-9

进位规则:逢十进一

权:基数的次幂

基数:几进制基数就是几

规律:右侧第一位的权是10的0次幂,每向左移动一位次幂会+1.

进制的表示:

①下角标:写具体进制数

②后缀:B(二进制)、D(十进制)、H(十六进制)、O(八进制)

2、二进制(机器语言0、1)(下角标2、后缀B)

系数:0、1

进位规则:逢二进一

111B=7D    1111B=15D

权:2的次幂

规律:右侧第一位的权是2的0次幂,每向左移动一位次幂会+1.

二进制(任意进制)--->十进制

方法:按权展开求和法

方法说明:每位的系数乘以权得到乘积,然后将乘积相加求和。

例如:

提示:十进制是默认。(如果数没有任何表示,默认十进制)

二进制的表示:①:下角标2、②后缀B

二进制的缺点:二进制的位数太多,表示起来太过繁琐。

3、十六进制(下角标16;后缀H)

说明:为了解决二进制位数过多,表示繁琐的缺点,计算机中引入了十六进制(应用多)和八进制。

系数:0-9、10=A、11=B、12=C、13=D、14=E、15=F

进位规则:逢16进1

权:16的次幂

规律:右侧第一位的权是16的0次幂,每向左移动一位次幂会+1.

4、八进制(下角标8;后缀O)

系数:0-7、进位规则:逢8进1

权:8的次幂

规律:右侧第一位的权是8的0次幂,每向左移动一位次幂会+1.

二、进制之间的转换

1、任意进制转换为十进制

方法:按权展开求和法

2、十进制转换为任意进制

方法:除基取余逆读法

方法说明:(1)用十进制除以基数(要转成几进制基数就是几)得到商和余数(2)继续用商除以基数,直到商为0为止。(3)倒序读取余数作为结果。

例如:56的二进制

3、以二进制为中心

1)二进制<------->十六进制

说明:每4位二进制可以表示1位十六进制(0000-1111,0-15是十六进制的系数范围)

①二进制-------->十六进制

方法:4和1(4位二进制合成1位十六进制)

方法说明:先从右向前每4位分成1组(最左侧可以补0);接下来计算每组对应的十六进制结果;最后将结果按顺序读出即可

②十六进制------>二进制

方法:1分4(1位十六进制拆分成4位二进制)

2)二进制------>八进制

说明:每3位二进制可以表示1位八进制(000-111,0-7是八进制的系数范围)3:1

①二进制---->八进制

方法:每3位为1组,计算对应的八进制结果(从后向前分组)

②八进制------>二进制

方法:1分3(1位八进制拆分成3位二进制)

问题:如何实现八进制与十六进制之间的相互转换。

可以在八进制与十六进制中间引入二进制(或十进制)作为桥梁,实现转换。

任意进制转换成十进制:按权展开求和法

例如:八进制---->二进制---->十六进制

十六进制---->二进制---->八进制

最新文章

  1. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现
  2. python学习——如何判断输入是数字
  3. C++ 迭代器 基础介绍
  4. SQL Update实现使用一个表的数据更新另一张表
  5. paper 2:图像处理常用的Matlab函数汇总
  6. Javascript Event
  7. Linq小技巧
  8. bindService和startService的区别
  9. java项目打成jar包时引用了第三方jar,此时我们该如何解决呢
  10. JavaScript Infinite scroll &amp; Masonry
  11. WCF创建到使用到发布
  12. [转]WIBKIT技术资料
  13. GetConsoleTitle 函数--获取控制台窗口标题
  14. 王之泰201771010131《面向对象程序设计(java)》第十七周学习总结
  15. Learning-Python【14】:匿名函数与函数递归
  16. VMware12虚拟机中Ubuntu16.04安装CPU版本Caffe
  17. CentOS 7 Apache服务的安装与配置
  18. 【Ray Tracing in One Weekend 超详解】 光线追踪1-1
  19. PHPStorm 注册码&amp;主题皮肤
  20. Centos7(Firewall)防火墙开启常见端口命令

热门文章

  1. Introducing Outflux: a smart way out of InfluxDB
  2. 使用 AppScan 进行扫描
  3. day061 cookie和session
  4. vue 项目 使用sass,node-sass 安装方法及cnpm下如何安装node sass
  5. Linux文件同步
  6. 敏捷开发SCM
  7. VSFTP的使用
  8. Cleanmymac X好不好用?
  9. maven私库nexus2.3.0-04迁移升级到nexus-3.16.1-02(异机迁移备份)
  10. LeetCode【101. 对称二叉树】