图文并茂: 二进制与十进制间的转换方法

一、正整数十进制转换二进制:
要点:除二取余,倒序排列

解释:将一个十进制数除以二,得到的商再除以二,依此类推直到商等于一或零时为止,倒取将除得的余数,即换算为二进制数的结果
例如把52换算成二进制数,计算结果如图:

图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法

52除以2得到的余数依次为:0、0、1、0、1、1,倒序排列,所以52对应的二进制数就是110100。
由于计算机内部表示数的字节单位都是定长的,以2的幂次展开,或者8位,或者16位,或者32位....。
于是,一个二进制数用计算机表示时,位数不足2的幂次时,高位上要补足若干个0。本文都以8位为例。那么:
(52)10=(00110100)2

二、负整数转换为二进制
要点:取反加一
解释:将该负整数对应的正整数先转换成二进制,然后对其“取补”,再对取补后的结果加1即可
例如要把-52换算成二进制:
1.先取得52的二进制:00110100
2.对所得到的二进制数取反:11001011
3.将取反后的数值加一即可:11001100
即:(-52)10=(11001100)2


三、小数转换为二进制
要点:乘二取整,正序排列
解释:对被转换的小数乘以2,取其整数部分(0或1)作为二进制小数部分,取其小数部分,再乘以2,又取其整数部分作为二进制小数部分,然后取小数部分,再乘以2,直到小数部分为0或者已经去到了足够位数。每次取的整数部分,按先后次序排列,就构成了二进制小数的序列
例如把0.2转换为二进制,转换过程如图:

图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法


0.2乘以2,取整后小数部分再乘以2,运算4次后得到的整数部分依次为0、0、1、1,结果又变成了0.2,
若果0.2再乘以2后会循环刚开始的4次运算,所以0.2转换二进制后将是0011的循环,即:
(0.2)10=(0.0011 0011 0011 .....)2
循环的书写方法为在循环序列的第一位和最后一位分别加一个点标注

图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法

四、二进制转换为十进制:

 

整数二进制用数值乘以2的幂次依次相加,小数二进制用数值乘以2的负幂次然后依次相加!

比如将二进制110转换为十进制:
首先补齐位数,00000110,首位为0,则为正整数,那么将二进制中的三位数分别于下边对应的值相乘后相加得到的值为换算为十进制的结果

图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法

如果二进制数补足位数之后首位为1,那么其对应的整数为负,那么需要先取反然后再换算
比如11111001,首位为1,那么需要先对其取反,即:-00000110
00000110,对应的十进制为6,因此11111001对应的十进制即为-6
换算公式可表示为:
11111001=-00000110
              =-6

如果将二进制0.110转换为十进制:
将二进制中的三位数分别于下边对应的值相乘后相加得到的值为换算为十进制的结果

图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法
图文并茂: 二进制与十进制间的转换方法

原文:http://52cpp.5d6d.com/thread-22-1-1.html

 

转自:图文并茂: 二进制与十进制间的转换方法

 

 

 

 

 

 

 

资源下载链接为: https://pan.quark.cn/s/3d8e22c21839 随着 Web UI 框架(如 EasyUI、JqueryUI、Ext、DWZ 等)的不断发展成熟,系统界面的统一化设计逐渐成为可能,同时代码生成器也能够生成符合统一规范的界面。在这种背景下,“代码生成 + 手工合并”的半智能开发模式正逐渐成为新的开发趋势。通过代码生成器,单表数据模型以及一对多数据模型的增删改查功能可以被直接生成并投入使用,这能够有效节省大约 80% 的开发工作量,从而显著提升开发效率。 JEECG(J2EE Code Generation)是一款基于代码生成器的智能开发平台。它引领了一种全新的开发模式,即从在线编码(Online Coding)到代码生成器生成代码,再到手工合并(Merge)的智能开发流程。该平台能够帮助开发者解决 Java 项目中大约 90% 的重复性工作,让开发者可以将更多的精力集中在业务逻辑的实现上。它不仅能够快速提高开发效率,帮助公司节省大量的人力成本,同时也保持了开发的灵活性。 JEECG 的核心宗旨是:对于简单的功能,可以通过在线编码配置来实现;对于复杂的功能,则利用代码生成器生成代码后,再进行手工合并;对于复杂的流程业务,采用表单自定义的方式进行处理,而业务流程则通过工作流来实现,并且可以扩展出任务接口,供开发者编写具体的业务逻辑。通过这种方式,JEECG 实现了流程任务节点和任务接口的灵活配置,既保证了开发的高效性,又兼顾了项目的灵活性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值