注册 登录
编程论坛 VC++/MFC

有谁知道负进制之间的转化问题?

qqzyh1234 发布于 2014-06-30 16:19, 850 次点击
如负八进制怎么转化为负十进制?
又如负十进制怎么转化为负二进制?


10 回复
#2
NBABOY2014-06-30 17:30

负数哪里用到的?应该和正数一样吧!
做个测试程序测试一下吗?
#3
邵帅2014-07-03 11:40
这个应该可以参照正数进制的转化自己总结吧。
#4
qqzyh12342014-07-03 16:23
我没明白您的意思!怎么参照正数进制,正负进制方法都一样吗?可否举几个例子关于负八进制怎么转化为负十进制?
负十进制怎么转化为负二进制?


#5
邵帅2014-07-05 11:43
回复 4 楼 qqzyh1234
既然不能一步到位,那我们就分为两步来。
大家都熟悉十进制,我们就以10进制为桥梁。

以-10进制的121转化为-2进制为例

1.将其他进制的数转化为10进制
121(-10)=81(10)//括号内表示采用的进制
2.将10进制数转化为其他进制
81(10)=1010001(-2)//这一步我之前好像给你写过,前提是-2进制和2进制的元素都是0和1

因此121(-10)=1010001(-2)


这是不是就可以了?
#6
qqzyh12342014-07-06 15:14
121(-10)=81(10)这是怎么得来的?能告诉我吗?谢谢!!!
#7
邵帅2014-07-07 11:48
回复 6 楼 qqzyh1234
基础啊,少年!

其他进制转化为十进制都是加权求和。
121(-10)=1*(-10)^2+2*(-10)^1+1*(-10)^0=100-20+1=81(10)

正如十进制的123=1*10^2+2*10^1+3^10^0
8进制的123(8)=1*8^2+2*8^1+3*8^0
具体可以百度。
#8
qqzyh12342014-07-07 16:42
谢谢!可是负十进制的12怎么用加权求和算出的十进制是负8?

[ 本帖最后由 qqzyh1234 于 2014-7-7 18:02 编辑 ]
#9
邵帅2014-07-08 13:35
回复 8 楼 qqzyh1234
的确如此,不要怀疑自己。
#10
qqzyh12342014-07-08 16:40
负十进制12我想转化成正十进制怎么办?再请教您一下!
#11
邵帅2014-07-17 15:29
回复 10 楼 qqzyh1234
12(-10)=1*(-10)+2=-8
1