-
二进制,十进制,十六进制互相转化
2018-10-08 14:34:27版权声明:本文为博主原创文章,未经博主允许不得转载。 ... 二进制转化为十进制:(1)从右向左数,确定所数的数字是第几位(编号为n),转...版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tigaobansongjiahuan8/article/details/76164988二进制转化为十进制:(1)从右向左数,确定所数的数字是第几位(编号为n),转化为十进制的时候,用这个数乘以2的n-1次方,以此类推,将各个位上的数所得的式子相加即可,便得到了十进制数。特殊情况,如:二进制数100,1000,10000,100000等,转化为十进制时,只需要数0的个数即可,有几个0,转化为十进制时,即为2的几次方,所以,二进制数100,转化为十进制为4,也可以参考下表。例:二进制数0001转化为十进制数:0*2的3次方+0*2的2次方+0*2的1次方+1*2的0次方=1,0101转化为十进制数:0*2的3次方+1*2的2次方+0*2的1次方+1*2的0次方=5,(2)靠近法,例如,二进制1000001转化为十进制为65,看到二进制1000001首先想到二进制 1000000,而二进制1000001是由1000000+1而来,二进制1000000转化为十进制为64,所以 二进制1000001转化为十进制则为64+1=65十进制转化为二进制:(1)较基本,较笨拙的一种方法,除二取余法,然后将所得结果逆着写(2)靠近法,看这个数与哪个数比较接近,与二进制转化为十进制相似,例如,十进制中的65与64 接近,而64转化为二进制为1000000,所以可知65转化为二进制为1000001.
二进制
十六进制
十进制
0000
0
0
0001
1
1
0010
2
2
0011
3
3
0100
4
4
0101
5
5
0110
6
6
0111
7
7
1000
8
8
1001
9
9
1010
A
10
1011
B
11
1100
C
12
1101
D
13
1110
E
14
1111
F
15
十进制与十六进制中,0~9这十个数是相同的,十进制中,10~15对应十六进制中A~F.二进制转化为十六进制时,从右数,每四位一组,找到每组分别对应十六进制中的字符,一一写出即可。例如,二进制数100110101100对应的十六进制数为9AC.
分析:二进制数100110101100将其每四位划分为1001,1010,1100而二进制中1001/1010/1100 分别十六进制中的9、A、C,所以结果为9AC.
二进制加减法:满足“逢二进一”原则
如:100+1=101,101+1=110
解析:第二个式子中,1+1=2,所以应向前进一位,以此类推,便得到结果。
二进制乘法:乘2,加一个0,除以2,减少一个0(注意:二进制中的10相当于十进制中2)
解析:如二进制数10,乘以2(1)先不转化,用10*10=100,最后得到100,即为二进制(因为10和10都是二进制,可以将 它们当成十进制数运算)
(2)可以先将二进制数10转化为十进制数2,乘以2=4,然后将4转化为二进制数为100
十六进制加法:与二进制加法类似,“满十六进一”原则
如:3+7=A,因为A相当于十进制中的10
F+1=10,因为F相当于十进制中的15,而15+1=16,根据“满十六进一”原则,进一,后面为0,所以为10
C+A=16H,C+A满十六,进一余六,所以为16,后面的H为16进制标志
F+F=1E,F+F满十六,进一余十四,十四对应十六进制中的E,所以为1E
16+1A=30H,运用数学中的竖式 计算,右侧对其,按照“满十六进一”原则即可得出结果
快捷键的使用
CTRL+C――――复制
CTRL+X――――剪切
CTRL+V――――粘贴
CTRL+S――――保存
CTRL+Z――――撤消
DELETE―――删除或SHIFT+DELETE―永久删除所选项
CTRL+A――――选中全部内容.
ALT+TAB―――切换当前程序
ALT+F4 ―――关闭当前应用程序
Windows键+M 最小化所有被打开的窗口.
Windows键+CTRL+M 重新将恢复上一项操作前窗口的大小和位置
Windows键+E 打开资源管理器
Windows键+D显示桌面
Windows键+F 打开"查找:所有文件"对话框
Windows键+R 打开"运行"对话框
Windows键+BREAK 打开"系统属性"对话框
Windows键+CTRL+F 打开"查找:计算机"在任务栏上的按钮间循环WINDOWS+TAB
CTRL+N 新建一个新的文件
CTRL+O 打开"打开文件"对话框
CTRL+P 打开"打印"对话框
CTRL+S 保存当前操作的文件SHIFT+F10或鼠标右击 打开当前活动项目的快捷菜单
SHIFT 在放入CD的时候按下不放,可以跳过自动播放CD.在打开word的时候按下不放,可以跳过自启动的宏
ALT+F4 关闭当前应用程序
ALT+SPACEBAR 打开程序最左上角的菜单
ALT+TAB 切换当前程序
ALT+ESC 切换当前程序
ALT+ENTER将windows下运行的MSDOS窗口在窗口和全屏幕状态间切换
PRINTSCREEN 将当前屏幕以图象方式拷贝到剪贴板
ALT+PRINTSCREEN 将当前活动程序窗口以图象方式拷贝到剪贴板
CTRL+F4 关闭当前应用程序中的当前文本(如word中)
CTRL+F6 切换到当前应用程序中的下一个文本(加shift
可以跳到前一个窗口)
在IE(网页浏览器)中
ALT+RIGHTARROW 显示前一页(前进键)
ALT+LEFTARROW 显示后一页(后退键)
CTRL+TAB 在页面上的各框架中切换(加shift反向)
CTRL+B 整理收藏夹
F5 刷新
CTRL+F5 强行刷新
ESC 停止
F11 全屏显示ASCⅡ表
8421BCD码(代码表)表(0~9所对应的符号)0
0000
5
0101
1
0001
6
0110
2
0010
7
0111
3
0011
8
1000
4
0100
9
1001
-
其他进制与十进制互相转化如何计算
2019-06-30 19:56:24进制转化 ...比如二进制如何 表示3 十进制 : 0 1 2 3 二进制: 0 1 10 11 那在看看别的进制 十进制 : 6 7 8 9 八进制: 6 7 10 11 十进制 : 8 9 10 11 ... 15 16 17 十六进制: 8 9 a b ... f 10 11...进制转化
首先说个很好记的一句话:几进制,满几进一
比如二进制如何 表示3
十进制 : 0 1 2 3 二进制: 0 1 10 11
那在看看别的进制
十进制 : 6 7 8 9 八进制: 6 7 10 11
十进制 : 8 9 10 11 ... 15 16 17 十六进制: 8 9 a b ... f 10 11
这是当数值比较小时,可能比较轻松的做转化,那么当数值比较大的时候该怎么快速计算呢
二进制: 是0,1组成 0b开头表示二进制
//先看两个例子,二进制转十进制 System.out.println(0b10); //0 * 2^0 + 1*2^1=2 System.out.println(0B0110); // 0 * 2^0 + 1*2^1 + 1*2^2+ 0*2^3 =6 /* 第一个:个位数上为"0",0 * 2^0=0 ; 十位数上为"1" 1*2^1=2 得出结果为2 第二个:个位数上为"0",0 * 2^0=0 ; 十位数上为"1" 1*2^1=2 百位数上为:"1" 1*2^2 千位数上为:"0" 0*2^3 它们相加得出结果和为6. */
我们可以用到这句公式:
- 从右往左计算;每一位数的值*进制数(次方从开始,以此加1) 结果就是十进制的值
其他进制转化为十进制也一样可以用这个公式.
八进制: 是0…7之间的数组成 以0开头的数表示八进制
System.out.println(0110); // 0 * 8^0 + 1*8^1+1*8^2 = 72
十六进制: 由0-9 ,a-f(大小写都可以)之间组成 以ox开头表示十六进制
System.out.println(0X15); // 5* 16^0 + 1* 16^1 = 21
那么十进制的数如何转化为其他进制的数呢
- 进制的数一致除以要转的进制数 求余数,从下往上看
例:10转为二进制 10/2 =5 (没有余数 记0) 5/2= 2 余1(有余数记1) 2/2=1(没有余数记0) 剩下一个1不能除了 那么从下往上看的出来的数为:1010
126转为八进制 126/8 =15 (有余数 记6) 15/8= 1 余7(有余数记7) 剩下一个1不能除了 记1 那么从下往上看的出来的数为:176
526转为十六进制 300/16 =18 (有余数 记12) 18/16= 1 (有余数记2) 剩下一个1不能除了 记1 那么从下往上看的出来的数为:12c
以上就是进制转化的简单计算方法,希望对大家有点帮助
-
二进制和十进制互相转化的程序
2009-12-20 10:35:05System.out.println("十进制数"+d+"转成二进制数为:"+s); } /** * 十进制数转二进制数 * @param d 十进制数 * @return 十进制数转换成二进制的字符串 */ public String decimal2BinaryStr...import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
Test t = new Test();
double d = 8;
String s = t.decimal2BinaryStr(d);
System.out.println("十进制数"+d+"转成二进制数为:"+s);
}/**
* 十进制数转二进制数
* @param d 十进制数
* @return 十进制数转换成二进制的字符串
*/
public String decimal2BinaryStr(double d){
String result = decimal2BinaryStr_Inte(d);
result += decimal2BinaryStr_Deci(d);
return result;
}
/**
* 十进制整数部分转二进制数
* @param d 十进制数
* @return 十进制整数部分转换成二进制的字符串
*/
public String decimal2BinaryStr_Inte(double d){
// return Integer.toBinaryString((int)d);
/*
* 本来利用上面的Integer.toBinaryString(int)就可以得到整数部分的二进制结果,
* 但为了展示十进制转二进制的算法,现选择以下程序来进行转换
*/
String result = "";
long inte = (long)d;
int index = 0;
while(true){
result += inte%2;
inte = inte/2;
index++;
if(index%4 == 0){
result+=" ";
}
if(inte==0){
while(index%4!=0){
result+="0";
index++;
}
break;
}
}
char[] c = result.toCharArray();
char[] cc = new char[c.length];
for(int i=c.length; i>0; i--){
cc[cc.length-i] = c[i-1];
}
return new String(cc);
}
/**
* 十进制小数部分转二进制
* @param d 十进制数
* @return 十进制小数部分转换成二进制小数的字符串
*/
public String decimal2BinaryStr_Deci(double d){
return decimal2BinaryStr_Deci(d, 0);
}
/**
* 十进制小数部分转二进制
* @param d 十进制数
* @param scale 小数部分精确的位数
* @return 十进制小数部分转换成二进制小数的字符串
*/
public String decimal2BinaryStr_Deci(double d, int scale){
double deci = sub(d,(long)d);
if(deci==0){
return "";
}
//为了防止程序因所转换的数据转换后的结果是一个无限循环的二进制小数,因此给其一个默认的精确度
if(scale==0){
scale = (String.valueOf(deci).length()-2)*4;
}
int index = 0;
StringBuilder inteStr = new StringBuilder();
double tempD = 0.d;
while(true){
if(deci==0 || index==scale){
while(index%4!=0){
inteStr.append("0");
index++;
}
break;
}
if(index==0){
inteStr.append(".");
}
tempD = deci*2;
inteStr.append((int)tempD);
deci = sub(tempD ,(int)tempD);
index++;
if(index%4 == 0){
inteStr.append(" ");
}
}
return inteStr.toString();
}
/**
* 提供精确的减法运算。
* @param v1 被减数
* @param v2 减数
* @return 两个参数的差
*/
public static double sub(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.subtract(b2).doubleValue();
}
} -
二进制、八进制、十进制、十六进制之间的互相转化
2019-07-29 20:26:47二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。 例如一周有七天,七进制,一年有十二个月,十二进制。 不同进制表现同一个数据的形式特点 进制越大,表现形式越短 不同进制数据的...进制
- 进制:就是进位制,是人们规定的一种进位方法。 对于任何一种进制–X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。
- 例如一周有七天,七进制,一年有十二个月,十二进制。
不同进制表现同一个数据的形式特点
- 进制越大,表现形式越短
不同进制数据的表现形式
二进制的数据表现形式
- 由0,1组成。以0b(b可以大写也可以小写)开头(JDK1.7版本以后可以表示二进制了)oo1
- 0b100也可以写作100B
八进制的数据表现形式
- 由0,1,…7组成。以0开头
- 0100也可以写作100O
十进制的数据表现形式
- 由0,1,…9组成。整数默认是十进制的
- 100也可以写作100x
十六进制的数据表现形式
- 由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头
- 0x100(十六进制的100)也可以写作100H
任意进制转十进制
- 系数:就是每一位上的数据。
- 基数:X进制,基数就是X。
- 权:在右边,从0开始编号,对应位上的编号即为该位的权。
- 结果:把系数*基数的权次幂相加即可。
二进制转换十进制 二进制数的第零位权值是2的0次方,第一位的权值是2的1次方。
所以 将二进制转成十进制
10110110 = 1×27+1× 25 +1×24+1×2 2+1×21 = 128+32+16+4+2=182
八进制转换十进制 八进制数的第零位权值是8的零次方,第一位的权值是8的1次方。如同二进制换十进制进行运算
十六进制转换十进制 十六进制的10 11 12 13 14 15分别为a b c d e f 转换如同二进制换算十进制运算十进制到任意进制的转换原理
- 除积倒取余
十进制换算任何进制就是除以换算的这个进制然后取余数
例如 : 789 换算成二进制过程如下所示
789/2=394 余1 第10位
394/2=197 余0 第9位
197/2=98 余1 第8位
98/2=49 余0 第7位
49/2=24 余1 第6位
24/2=12 余0 第5位
12/2=6 余0 第4位
6/2=3 余0 第3位
3/2=1 余1 第2位
1/2=0 余1 第1位
求完余数之后,从下往上依次排列
十进制换算八进制和十六进制跟这个大同小异,新手小白还需多多练习,我也在每天练习中 -
二进制,八进制,十进制,十六进制互相转化的C语言源代码
2013-04-01 14:53:28case 1: printf("\n请选择转换后的进制:/n0、退出/n1、二进制/n2、八进制/n3、十进制/n4、十六进制\n"); scanf("%d",&j); switch(j) { case 1: printf("\n同进制之间不用转化!\n"); q=1; break; case 2: ... -
C语言-十进制/二进制数的互相转化
2020-02-16 14:58:57编写一个程序,将输入的十进制数转化为二进制表示。例如:输入十进制数64,输出二进制数表示1000000 void deTobi(int a) { int i = 0, stack[10], r, s; do { r = a / 2; s = a % 2; stack[i] = s; ... -
十进制数与二进制数的互相转化
2016-07-12 22:07:00二进制数是机器的语言,它与我们常用的十进制数存在着转化的方式 十进制数转化二进制公式:1.整数部分:除2取余 2.小数部分:乘2取整; 或者用数轴法来计算该十进制数为哪几个2的幂的和,然后将相应位置1即可... -
转:c语言学习笔记 二进制和十进制的互相转化
2018-09-06 20:55:00http://www.cnblogs.com/xkfz007/articles/2590472.html 转载于:https://www.cnblogs.com/yfish/p/9600930.html -
(转)十进制与二进制互相转换
2016-01-11 12:55:15二进制转十进制 整数部分要从右到左用二进制的每个数去... 例如:二进制数1101.01转化成十进制 1101.01=1*2^0+0*2^1+1*2^2+1*2^3 +0*2^-1+1*2^-2=1+0+4+8+0+0.25=13.25 所以总结起来通用公式为: abcd.efg(2) -
二进制_十进制化二进制
2021-01-05 13:10:12日常中的计数与计算都是采用十进制。而诸如计算机之类的运算采用“二进制” 。掌握了“二进制”,其他进制便...二进制与十进制之间可以互相转化。 十进制改成二进制的方法为:用十进制的数,除以2取余数,一直除... -
java 二进制与负数互相转化
2019-12-07 11:59:01负数表示 首先我们要对原码、反码和补码有个了解: 1、所谓原码就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,...(11101) 二进制= -13 十进制 3、补码表示法规定:正数的补码与其原码相同;... -
十进制与十六进制互相转换
2020-07-25 09:33:47与十进制转二进制方法相同,十六进制数用0~9和A,B,C,D,E,F进行表示,用短除法进行计算,例如将120转化成十六进制数 120÷16=7 余8 7÷16=0 余7 故十六进制数为78 二、十六进制转十进制 与二进制转十六进制数方法相同... -
VB6支持96个1的二进制与十进制的互相转换程序
2010-03-22 12:13:00VB6支持96个1的二进制与十进制的互相转换程序 Public Function BIN_to_DEC(ByVal Bin As String) As Variant****************************************************************** 用途:将二进制转化为十进制 输入... -
关于各种进制之间互相转化(以十进制为桥梁)
2016-12-05 22:01:25做为程序员经常会涉及到各种进制之间互相转化的问题,下面我就以我们常见的二进制,八进制,十进制,十六进制的互相转化的问题做一简单的探究: 二进制的表现形式:二进制是计算机能够识别的语言,任何数据都要在... -
进制转化
2021-02-25 20:12:441.十进制数与二进制数的互相转换 十进制数除以2,除至0时所得的余数倒排写出,即为二进制数。 例: 十进制数173转换为二进制数: 所以十进制数173转化为二进制数的结果为10101101。 注: ① 除2取余 ② 除商到0为止 ... -
进制互相转化运算入门
2019-09-24 05:30:39一、十进制转化为二进制、八进制、十六进制,方法是除商取余,分别对2、8、16进行除取余数,得数倒着读即为所得进制数。注十六进制余数位10(A)、11(B)、12(C).......... 例如 205转化二进制、八进制、十六进制 ... -
十进制转二进制
2020-04-25 10:16:40十进制转二进制,这是两者之间的互相转换,所以没有定义,原因就是两者互相转化。 怎么做?(步骤) 理解基本机制转换思想---及时短除法。如将数字125不断的除以2,保留余数,直到商为0。然后从下到上读数,就是... -
Java中二进制、八进制、十六进制与十进制的相互转化
2020-06-09 16:17:13昨天写了一篇Java中String、char数组和int之间的互相转换的文章,今天同样记录汇总下刷题常见的进制转化问题。 1 声明二进制、八进制、十六进制的变量 /** 二进制变量的声明以0b为前缀; 八进制变量的声明以0为前缀... -
java 十进制与二进制,八进制,十六进制之间的转换
2016-06-17 11:41:19实际开发过程中,经常会有十进制的数据跟其他进制数据互相转化的情况。比如十进制与二进制,八进制,十六进制之间的相互转化。为了方便起见,特意将java中不同进制间相互转化的代码整理以备后续使用。package leilei... -
二进制小数与十进制小数的互化
2010-03-29 13:22:00计算机内部都使用二进制,而人们习惯使用十进制,所以弄清楚它们的互相转化非常重要。二进制转十进制:举例:二进制数11.101转为十进制 1*2^1 + 1*2^0 + 1*2^(-1) + 0*2^(-2) + 1*2^(-3)=2 + 1 + 0.5 + 0 + 0.125 = ... -
10进制转换2进制的互相转换
2019-09-24 15:57:34要从右到左用二进制的每个数去乘以2的相应次方例如:二进制数1101.01转化成十进制1101.01(2)=1*20+0*21+1*22+1*23 +0*2-1+1*2-2=1+0+4+8+0+0.25=13.25所以总结起来通用公式为:abcd.efg(2)=d*20+c*21+b*22+a*23+e*... -
进制间互相转换
2019-02-26 16:21:31我们常用的进制包括:二进制、八进制、十进制和十六进制,区别在于数...二进制与八进制之间的转化 二进制转八进制 方法为:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始... -
基础题之进制转化问题
2020-01-19 18:31:13进制转化一般有二 八 十 十六进制的互相转化,以十进制为媒介分为两种情况: 1.P进制转化为十进制 int main() { int P=2;//P为几进制 int x; scanf("%d",&x); int y=0,pro=1;//pro依次为:1 p p^2 p^3 ... ... -
任意进制间的互相转换详细过程
2020-08-07 11:12:44* 一般常见的进制类型为:二进制、八进制、十进制、十六进制 * 进制的特点:进制数的每一位不能大于对应的进制类型。如二进制,最大为1.八进制中最大为7,十六进制中,最大为f(对应15的意思) * */ public class ... -
十进制转二进制的一种实现
2010-07-05 21:07:00/*这个程序用于十进制数字到二进制数字的转换,使用的是字符串和数字的互相转化, 具体使用规格说明如下: Type of Number: unsigned long 32bits Type of Strings: char *s[13] Cycle variable:unsigned int i,t*/ ... -
编码/解码和进制转化工具hURL
2017-06-02 14:53:00编码/解码和进制转化工具hURL ...而在数据分析时候,各种进制的转化也尤为频繁。为了方便解决这类问题,Kali Linux提供了一个专用小工具...同时,它支持二进制、八进制、十进制、十六进制的互相转化。此外,它还提供...