搜索
编程论坛
→
数据库技术
→
『 VFP论坛 』
→ 关于进制转换
标题:
关于进制转换
只看楼主
mozihu
等 级:
新手上路
帖 子:13
专家分:0
注 册:2017-6-29
结帖率:
71.43%
楼主
已结贴
√
问题点数:10 回复次数:8
关于进制转换
把二进制转十进制(二进制数含有小数 例如110.110)
搜索更多相关主题的帖子:
进制转
二进制
十进制
二进制数
小数
2017-07-06 15:23
wp231957
来 自:神界
等 级:
版主
威 望:
422
帖 子:13681
专家分:53296
注 册:2012-10-18
第
2
楼
得分:4
二进制一般用字符串来描述
DO IT YOURSELF !
2017-07-06 15:48
mywisdom88
等 级:
版主
威 望:
190
帖 子:3125
专家分:8340
注 册:2015-3-25
第
3
楼
得分:4
利用2进制的8421码规则计算
8 4 2 1
0 1 1 0=4+2=6
110.110 =6.6?
不是这样算的,带小数点的,应该先移位,后计算即
110.110——》110110,移动3位,等于在原来的基础上变大了2*2*2=8倍
32 16 8 4 2 1
1 1 0 1 1 0 =32+16+4+2=54
然后在 54/8=6.75
[此贴子已经被作者于2017-7-6 17:21编辑过]
2017-07-06 16:41
吹水佬
等 级:
版主
威 望:
432
帖 子:10064
专家分:41463
注 册:2014-5-20
第
4
楼
得分:4
好象是这样算
110 = 1*2^2 + 1*2^1 + 0*2^0 = 4 + 2 + 0 = 6
.110 = 1*2^-1 + 1*2^-2 + 0*2^-3 = 0.5 + 0.25 + 0 = 0.75
110.110 = 6.75
2017-07-06 17:04
mywisdom88
等 级:
版主
威 望:
190
帖 子:3125
专家分:8340
注 册:2015-3-25
第
5
楼
得分:0
回复 4楼 吹水佬
你的结果是对的,但好像是用移位处理比较合理的。
2017-07-06 17:22
吹水佬
等 级:
版主
威 望:
432
帖 子:10064
专家分:41463
注 册:2014-5-20
第
6
楼
得分:0
以下是引用
mywisdom88
在2017-7-6 17:22:28的发言:
你的结果是对的,但好像是用移位处理比较合理的。
对于整数来说,除2 = 右移1位,乘2 = 左移1位。小数好象不能用位移操作。
2017-07-06 23:41
mywisdom88
等 级:
版主
威 望:
190
帖 子:3125
专家分:8340
注 册:2015-3-25
第
7
楼
得分:0
我3楼的,就是用移位算出来的。
110.110,把小数点移动3位,即移动后的数据是原来的 2*2*2倍 110110=32+16+0+4+2+0=54
然后,还原8倍,54/8=6.75
2017-07-07 09:07
wp231957
来 自:神界
等 级:
版主
威 望:
422
帖 子:13681
专家分:53296
注 册:2012-10-18
第
8
楼
得分:0
6楼说的是位移 7楼说的是移位 根本就是2个东东啊
DO IT YOURSELF !
2017-07-07 09:39
吹水佬
等 级:
版主
威 望:
432
帖 子:10064
专家分:41463
注 册:2014-5-20
第
9
楼
得分:0
以下是引用
mywisdom88
在2017-7-7 09:07:33的发言:
我3楼的,就是用移位算出来的。
110.110,把小数点移动3位,即移动后的数据是原来的 2*2*2倍 110110=32+16+0+4+2+0=54
然后,还原8倍,54/8=6.75
这样绕了一圈回来还是要作除法,相当于 54/2/2/2 = 6.75。
是不是当初就可以直接用位移处理整数部分、用除法处理小数部分?
2017-07-07 11:37
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-479214-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.581214 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved