十进制的-816进制转化为10进制6进制数是多少?

一种八进制数直接转换成十六进制数的方法
在计算机和日常应用中,我们会遇到需要将八进制数和十六进制数进行相互转换的问题.一般情况下,我们可以通过二进制数或是十进制数进行间接转换,但这样难免麻烦.文[1,2]给出了几种转换方法,但都不是直接转换.本文给出了一种直接对八进制数和十六进制数进行转换的方法.1间接转换1.1利用十进制进行间接转换设八进制数(十六进制数)为dndn-1…d0d-1…dn利用公式Nr=dnRn+dn-1×Rn-1+…d1×R1+d0×R0+d-1×R-1+…d-m×R-m=∑ni=-mdi×Ri(1)先将八进制数(十六进制数)转换成十进制数,然后进行整数部分除十六(八)取余,小数部分乘十六(八)取整,得到转换结果.1.2利用二进制进行间接转换利用公式84=(23)4=(24)3=163(2)1.2.1八进制数转换为十六进制数应用公式(2),先将这个八进制数每一位转换为三位二进制数,并以小数点为界限将整数部分和小数部分分开.对于整数部分,从右向左每4位...&
(本文共2页)
权威出处:
在计算机应用基础课程有关10/2/8/16进制转换教学中,笔者并没有按照教科书上那种让学生感到很枯燥的方法进行教学,而是“换位思考”地采用“偷懒”的方式,即利用Windows系统提供的工具附件科学型计算器转换,这样就创造轻松的教学环境;在演示中让学生发现Windows系统提供的科学型计算器一直存在一个致命的不足:就是要转换的数字包含小数位时,那么它就不能识别非十进制数的小数部分,因为此时任何2/8/16进制数的小数部分都会丢失。由此造成“悬念”,抓住了全班同学的注意力。在迄今多个版本《计算机文化基础》教材中,介绍二进制数转换成八进制数的方法是:“将二进制数从小数点开始,对二进制整数部分向左每3位分成一组,不足3位的向高位补0;对二进制小数部分向右每3位分成一组,不足3位的向低位补0凑成3位。每一组有3位二进制数,分别转换成八进制数码中的一个数字,全部连接起来即可。”例如:把二进制数B转化为八进制数,算法如...&
(本文共2页)
权威出处:
一种人机接口软件包编号:90一0890 本软件包可用于各种工业过程控制及办公室管理领域,实现在Intel System300系列徽机上各种数据输入输出格式的转换,.弥补iR M XS盯iRMX286操作系统仅支持ASCH码输入输出的缺陷。 该软件包处理的数据类型有:字符串型、Byte型、Word型、Integer型、Real型、十六进制数转换成二进制数、二进制数转换成十六进制数。 作者:宋海兵(西南交通大学铁遭电气化自动化研究所,成都市)材料力学BA引C程序橄电脑软件包幼号:.0一0851 本软件包共有22个程序,包括计算梁的支座反力、绘制梁的弯矩图、强度计算、压杆稳定计算、静定结构、超静定结构等等。本软件包备有几种型号,可以在PC15。。、苹果机、中华学习机上运行,也可以在IBM PC及其兼容机上运行。 本软件包可作为大专、中专材料力学教学中开展第二课堂或选修课使用。 作者:陈喜东(广东石油化工专科学校,广东茂名市)软件交流等...&
(本文共8页)
权威出处:
擂台赛-一请你编程 第5期擂台赛揭晓 主持人:本期(93年10月号)擂台赛是解一首宋诗的密码,密密琳麻一大堆数字、字母,让人看起来有些头疼,难住了不少人。但也有许多读者,细心研读“密码”,从中发现了规律,并运用自己掌握的电脑知识,终于找出了正确的答案。 我们先来看迁宁沈阳甄正国的忍路; 当我通览这组蜜码后,根据多年使用计算机的经验,发现整段密码由十六进制数组成,且前6位数字是“空格符”在计算机中的ASCll码(20H);又发现多处有“回车键”在计算机中的AScll码(ODH,OAH),很有规律。整篇密码除了上述提到的ASCll码外,其余数码均可分为二个一组,且每组的首位数的最高位均为“1”,由此推断:此篇密码很有可能是汉字在计算机内的“汉字机内码”。根据上述判断,我在DEBuG环境下,利用E命令将整篇密码输入计算机,并存盘。然后在汉字操作系统下.利用TYPE命令显示存盘的文件。哇!“庐山真面目”显露。以下是破译的具体操作步骤。 ...&
(本文共2页)
权威出处:
笔者从事中职计算机专业教学十余年,发现不论是计算机专业的学生还是非计算机专业的学生,在数制转换这个知识点上总感觉吃力、烦琐。而在多年的教学过程中,笔者经过不断地总结,掌握了数制转换的规律以及技巧,并运用于教学中,效果不错。在这里,将数制之间转换的原理以及技巧进行详细地表述。一、位权表示法进位计数制的数据都可以用位置表示法表示,即处于不同位置上的数码表示不同的数值,数码在某个位置上有一个固定的权值,数码与所在位置上的权值(又称位权)的乘积即为该数码在该位上代表的数值大小。在进位计数制中,位权等于基数的若干次幂。采用位权表示法,任何进制数据都可表示成按位权展开的多项式之和的形式。例如R进制数N可表示为:N=±(An-1×Rn-1+An-2×Rn-2+…+A1×R1+A0×R0+…+A-m×R-m=±∑n-1i=-m(Ai×Ri)式中:m、n均为正整数,Ai是数码,R是基数,Ri是位权。二、教科书中二进制数与十进制数之间互换的规则1....&
(本文共3页)
权威出处:
工引言随着工业社会的飞速发展,单片机在工业控制领域中的地位日显重要,而数码转换是单片机中的一个重要环节。从外围设备中采样送来的十六进制数如何转换成人们易于接受的,进制数,传统的方法是采用DAA调节指令来实现,需要对待变换数一位位移动后调节演算方能达到,比较费时.本文提出一种新的转换方法,每次移动半字节,使转换效事大为提高。2转换机理我们知道.任意一个十进制数都可表示成如下形式:D一…X10”-‘上。2X10”2+…十印.IX10十句()对其每一个数进行十一十六进制转换.有:H。blXA”-’一bZXA”-’“…Wb。IXAWb。()其中:(D)ID=()16(A.)1。=(.)u(=Z+)对于十六进制数与个过制数,它们在小于十进制数IO的情况下,在数值上是相等的.即n—hi(0<i广(10,0<birtA)比较式()(2),容易发现求出b;的值也就是求出其十进制所表示的各位数值,在计算机中也就是求出了其BCD码的值.以下是具体求...&
(本文共2页)
权威出处:
扩展阅读:
CNKI手机学问
有学问,才够权威!
出版:《中国学术期刊(光盘版)》电子杂志社有限公司
地址:北京清华大学 84-48信箱 知识超市公司
互联网出版许可证 新出网证(京)字008号
京ICP证040431号
服务咨询:400-810--9993
订购咨询:400-819-9993
传真:010-十六进制数具有16个数码0、1、2、3、4、5、6、7、8、9...
十六进制数具有16个数码0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,与十进制数“逢十进一”的进位规则类似,十六进制数的进位规则为“逢十六进一”。那么十六进制数中最大的两位数转化为十进制数后是多少?(  )
具体计算方法是什么?
问题类别:模考专区问题状态: 已解决 地区:北京浏览11085次 08:54
你好。解答之前明白十六进制的运算方法。(十进制就是我们日常使用的数字顺序。)
十六进制:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,
10,11,12,13,???,1F,
20,21,???,2F,
F0,F1,F2,???,FF。
每行都是16个数字,总共16行。但是,第一行中从0开始,所以F代表的是15。
那么十六进制中最大的两位数FF对应的数字就是15+16*15=255。
16进制最大的2位数是FF,转换为10进制F*16^1+F*16^0=15*16+15*1=255
“问知”平台最新推出《一周话题》精品栏目,小编每周会为大家整合最新的网络热点话题,提供更高质量的内容。让我们一起在这里交流沟通,在这里交友聊天,分享彼此的经验见解……
时光记忆 兑换100元代金券
落叶新鲜 兑换50元代金券
30元话费 兑换30元话费
30元话费 兑换30元话费
10元话费 兑换30元话费
来求知来分享,我来试试,我来参与,做贡献,赢奖品。
华图自学课堂
华图问答平台蓝桥杯 16进制转换8进制 - 简书
下载简书移动应用
写了42828字,被65人关注,获得了106个喜欢
蓝桥杯 16进制转换8进制
蓝桥杯 16进制转换8进制
我表示我自己太渣渣了,总是超时,通不过测试。
问题描述  给定n个十六进制正整数,输出它们对应的八进制数。输入格式  输入的第一行为一个正整数n (1&=n&=10)。  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式  输出n行,每行为输入对应的八进制正整数。注意  输入的十六进制数不会有前导0,比如012A。  输出的八进制数也不能有前导0。样例输入239123ABC样例输出714435274提示  先将十六进制数转换成某进制数,再由某进制数转换成八进制。
刚开始没有什么思路,就用最原始的做法,先将16进制转换为10进制,然后再由10进制转换为8进制,结果错误。下载测试的数据,才发现数据时如此变态,变换成BigInteger来存储数据,结果运行超时,思考后,发现按照传统的方式,是无法通过的,迫不得已上网找答案,找进制转换的技巧。
从可知,可以将16进制转换为2进制,再由2进制进行转化8进制,至于为什么这样做呢,因为16进制每一个位子上的数字都可以变成4位的2进制数,而每3个二进制数又可以组成8进制上对应位子的数字。
再通过数电逻辑上计算2进制的方法:8421法,对应有1的位置加上对应的数字,结果应该就可以出来了。而我按照思路编写之后,还是运行超时。到底哪里出错,看到参考通过的例子后,我才发现,自己的算法确实不够优化。
变态的测试数据
16转10,10转8
* 这种是16进制转化成10进制,然后再转化成8进制 超时,
public void convert16from10to8(String num16) {
int flag = 0;
BigInteger sum = new BigInteger("0");
BigInteger tmp = new BigInteger("16");
// 16先转换成10进制
char[] chArr = num16.toCharArray();
for (int x = chArr.length - 1; x &= 0; x--) {
switch (chArr[x]) {
// sum += (chArr[x] - '0'-7) * Math.pow(16, flag++);
sum = sum.add(tmp.pow(flag++).multiply(
new BigInteger((chArr[x] - '0' - 7) + "")));
// sum += (chArr[x] - '0') * Math.pow(16, flag++);
sum = sum.add(tmp.pow(flag++).multiply(
new BigInteger((chArr[x] - '0') + "")));
System.out.println(sum);
StringBuffer sb = new StringBuffer();
while (sum.intValue() & 8) {
// sb.append(sum%8);
sb.insert(0, sum.remainder(new BigInteger("8")));
sum = sum.divide(new BigInteger("8"));
sb.insert(0, sum);
// sb.append(sum);
System.out.println(sb.toString());
16转2,2转8
* 16进制转成2进制,再转8进制 16--》2 每个位上的数字都可以转化为4个位的2进制
* 每三个为上的2进制组合转化为8进制上的每个位上的数字,不够就补0
public void convert16from2to8(String num16) {
char[] chArr = num16.toCharArray();
int tmp = 0;
StringBuffer sbSum = new StringBuffer();
for (int x = 0; x & chArr. x++) {
switch (chArr[x]) {// 字符对应的整数
tmp = chArr[x] - '0' - 7;
tmp = chArr[x] - '0';
StringBuffer sb = new StringBuffer();
// 转化为二进制
while (tmp &= 2) {
sb.insert(0, tmp % 2);
sb.insert(0, tmp);
// System.out.println(sb.length());
int len = 4 - sb.length();// 假如直接写在for循环里面sb在变化,导致len会变化
for (int y = 0; y & y++)
sb.insert(0, 0);
// System.out.println(sb.toString());
sbSum.append(sb);
System.out.println(sbSum.toString());
StringBuffer sbSum8=new StringBuffer();//记录最终的结果
int tmp8item=0;
// 每3个一组,不够尽兴高位补0,即最左边补0,采用421,
// 或者用一个3做循环,进行划分区域,有1,就根据421的方式进行相加
char[] chArr2 = sbSum.toString().toCharArray();
for (int z = chArr2.length - 1, num3 = 0; z &= 0; z--) {
if (chArr2[z] - '0' == 1) {
switch (num3) {
tmp8item+=1;
tmp8item+=2;
tmp8item+=4;
if((num3+1)%3==0){
sbSum8.insert(0, tmp8item);
tmp8item=0;
num3=(num3+1)%3;
if(sbSum8.substring(0, 1).equals("0"))//输出的八进制数也不能有前导0的判断
System.out.println(sbSum8.substring(1,sbSum8.length()));
System.out.println(sbSum8.toString());
别人的思路
1位16进制可以代表4位2进制, 1位8进制可以代表3位二进制,得出3位16进制求和入栈输出表示4位8进制,然后出栈输出。
我的理解为:3位16进制,一位16进制可用4位2进制表示,即:34=12。4位8进制,一位8进制可用3位2进制表示,即:43-12所以,他们俩之间进行等价。
完整代码(可通过测试):
import java.util.S
public class Main {
public static void main(String[] args) {
new Main().systemScanner();
public void systemScanner() {
Scanner jin = new Scanner(System.in);
while (jin.hasNext()) {
int length = jin.nextInt();
for (int i = 0; i & i++){
String strTmp=jin.next();
tranform(strTmp.toCharArray(), strTmp.length());
* 3位16进制等价于4位8进制
int[] stack=new int[40000];
public void tranform(char[] str, int length) {
char[] buff = new char[4];
int top = -1;
for (int i = length - 1; i &= 0; i -= 3) {
int sum = 0;
for (int j = 0; j & 3 && i - j &= 0; j++) {// i-j&=0防止不够三个的情况
int tmp = str[i - j] &= '0' && str[i - j] &= '9' ? str[i - j] - '0'
: str[i - j] - 'A' + 10;//区分是数字,还是字符,进行对应转换
sum+=(tmp&&(4*j));//这句很重要,通过这句就可以从16变成10进制了,不过,不知道为什么?是如何得出的呢?
stack[++top]=//sum的结果是16进制转化10进制的结果,每3个16进制变成10进制,再变8进制
while(stack[top]==0){//排除前导为0的判断
for(int i=i&=0;i--){//直接输出会丢失前导0,因为此转化成8进制并不是最左边的情况,应该保留0
System.out.print(Integer.toOctalString(stack[i]));//从10进制转化成8进制
for(int i=i&=0;i--){
String str1=Integer.toOctalString(stack[i]);//从10进制转化成8进制
if(i!=top&&str1.length()&4){
//不是最左边的一个,就不用去掉前导0,而默认是去掉0的,所以要进行补会
for(int y=0;y&4-str1.length();y++)
System.out.print("0");
System.out.print(str1);
System.out.println();
参考通过的例子
,使用类Integer进行进制之间的转换。
需求为,C代码为char buff[4];
sprintf(buff ,"%o", stack[i]);
相对应的java代码为// Store the formatted string in 'result'
String result = String.format("%4d", i * j);
// Write the result to standard output
System.out.println( result );
可以用来买彩票
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
可以用来买彩票
选择支付方式:16进制转10进制
日 23:53 来源: 作者:大毛 (0)
16进制数字表示(0 --- F( 0 到15))0 1 2 3 4 5 6 7 8 9 A(10) B(11) C(12) D(13) E(14) F(15)
然后给大家提供 &,如下图示:
16进制转为10进制的计算方式
计算方式: 0xMN = 16 x M + N ;
0xFF = 16 x 15 + 15 = 255;
0x60 = 16 x 6 + 0 = 96;
以此规律计算,方便容易记。。
取一个byte里面的低四位
int a = M;
int b = M & 0x0F;
b就是所要得到的低四位。
高四位& int c = (a&&4)&0x0F;
位运算应用口诀
清零取反要用与,某位置一可用或
若要取反和交换,轻轻松松用异或
& 与。 全1为1, 有0为0;  任何数与0异或都等于0。 
&&& 例: 101&010=000,即 5&2=0. 
| 或。 有1为1, 全0为0,和 & 相反。  任何数与0或都等于原值。
&&& 例: 101|010=111,即 5&2=7.
^ 异或。 相同为0,相异为1; 任何数与0异或都等于原值。 
&&& 例: 101^010=111,即 5&2=7.
&&左移。 补0。
&& 右移。 符号位是0补0,是1补1。& &符号位为第1为,0表示正数,1表示负数&
&&&无符号右移。补0。
~ 非 逐位取反
&按位与&操作符&&&对两个bit串按位进行逻辑与,&按位或&操作符&|&对两个bit串按位进行逻辑或,&按位异或&操作符&^&对两个bit串按位进行异或操作。运算规则如下表所示。
按位与&&&&&&&&& 按位或&&&&&&&&&&&&& 按位异或
0 & 0 = 0&&&& 0 | 0 = 0&&&&&&& 0 ^ 0 = 0
0 & 1 = 0&&&& 0 | 1 = 1&&&&&&& 0 ^ 1 = 1
1 & 0 = 0&&&& 1 | 0 = 1&&&&&&& 1 ^ 0 = 1
1 & 1 = 1&&&& 1 | 1 = 1&&&&&&& 1 ^ 1 = 0
相关技术文章:
相关资料下载:
上周热点文章排行榜
上周资料下载排行榜
技术交流、我要发言! 发表评论可获取积分! 请遵守相关规定。
创新实用技术专题
人类文明的进程至今已经有了六千多年的历史,人类的创新经历了怎...> 问题详情
二进制数转换成十进制数是______,转换成八进制数是______,转换成十六进制数是______。
悬赏:0&答案豆
提问人:匿名网友
发布时间:
二进制数转换成十进制数是______,转换成八进制数是______,转换成十六进制数是______。
我有更好的答案
相关考试课程
请先输入下方的验证码查看最佳答案
图形验证:
验证码提交中……
您今天可查看的免费答案已达峰值,如需继续查看,请选择下列一种方式:
19.8 元开通超级会员享永久无限制查看特权。
1 元购买本题答案。}

我要回帖

更多关于 16进制转化10进制 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信