八进制 和 十六进制 怎么转换成十进制
答案:5 悬赏:40 手机版
解决时间 2021-05-14 22:38
- 提问者网友:欲劫无渡
- 2021-05-14 07:26
八进制 和 十六进制 怎么转换成十进制
最佳答案
- 五星知识达人网友:一把行者刀
- 2021-05-14 08:14
x 进制 转换成 十进制
从右往左 数位数 从0开始表示,每位的数值分别乘以 x的位数次方,然后求和
比如 8进制的 1234 换 10进制
x = 8
0位 是4 ====> 4* 8^0 = 4 * 1 =4
1位 是3 ====> 3* 8^1 = 3 * 8 =24
2位 是2 ====> 2* 8^2 = 2 * 64 = 128
3位 是1 ====> 1* 8^3 = 1 * 512 = 512
然后求和 4+24+128+512 = 668, 所以对应的十进制就是668
16进制 就是 x = 16, 分别乘以16的0,1,2,3,4次方,然后A=10 B=11 C=12 D=13 E=14 F=15
从右往左 数位数 从0开始表示,每位的数值分别乘以 x的位数次方,然后求和
比如 8进制的 1234 换 10进制
x = 8
0位 是4 ====> 4* 8^0 = 4 * 1 =4
1位 是3 ====> 3* 8^1 = 3 * 8 =24
2位 是2 ====> 2* 8^2 = 2 * 64 = 128
3位 是1 ====> 1* 8^3 = 1 * 512 = 512
然后求和 4+24+128+512 = 668, 所以对应的十进制就是668
16进制 就是 x = 16, 分别乘以16的0,1,2,3,4次方,然后A=10 B=11 C=12 D=13 E=14 F=15
全部回答
- 1楼网友:笑迎怀羞
- 2021-05-14 11:26
打开电脑上的计算机就可以了…
如果要自己动手算的话,说出来就比较麻烦,其实算起来还是挺简单的…举个例子吧!如果要把八进制的3542转化成十进制的,就是算出(2*八的0次方)+(4*八的1次方)+(5*八的2次方)+(3*八的3次方) 得到的和就是3542的十进制记法了,十六进制的就是把八改成十六,次方数有顺序的…其实算法很简单的,就是看起来有点麻烦。可能是我说的技巧不够吧…呵呵,希望能帮到你。
- 2楼网友:佘樂
- 2021-05-14 11:01
数位数,第一位为零,给你举例吧,比如八进制的123,转换十进制为1乘以8的2次方加上2乘以8的1次方再加上3乘以8的0次方,算出总和,就转换好了,十六进制我忘了
- 3楼网友:青尢
- 2021-05-14 10:49
它们转换的原理都是一样的,把n位数拆开,分别乘与进制数的n-1次方再相加八进制化为十进制
例:将八进制数12.6转换成十进制数
(12.6)8 = 1×8的1次方 + 2×8的0次方 + 6×8的-1次方 = (10.75)10
十六进制化为十进制
例:将十六进制数2AB.6转换成十进制数:
(2AB.6)16 = 2×16的2次方 + 10×16的1次方 + 11×16的0次方 + 6×16的-1次方 = (683.375)10
- 4楼网友:患得患失的劫
- 2021-05-14 09:20
// Note:Your choice is C++ IDE
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int j,s,k=0;
int a[20];
cout<<"输入一个八进制数 "<<endl;
cin>>s;
while(s!=0)
{
j=s%10; //求s的各个位数
a[k]=j; //将s的各个位数赋值给a[]
k=k+1; //计算s是一个几位数
s=s/10;
}
s=0;
for(j=k-1;j>=0;j--)
{
s=pow(8,j)*a[j]+s;
}
cout<<"转换为十进制为 "<<s;
return 0;
}
八进制转换十进制
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯