计算机为什么是二进制进制的转换,求详细过程,麻烦写出过程

浅析进制转换在计算机应用中的技巧
(window.slotbydup=window.slotbydup || []).push({
id: '2657893',
container: s,
size: '80,250',
display: 'inlay-fix'
> 浅析进制转换在计算机应用中的技巧
浅析进制转换在计算机应用中的技巧
1、二进制的使用意义本文引用地址:一种新处置器的盛行,离不开响应软件的支撑。开拓新的处置器能够会由于落空响应软件的支撑而影响其推行使用和市场前景;另一方面,得不到普遍使用和必然市场份额的处置器也很可贵到丰厚的软件支撑。这种处置器和支撑软件之间互相钳制的关系,既使得新处置器的设计不得不思索兼容老处置器,也障碍了新处置器的推出。在这种状况下,研讨若何把支撑老处置器的软件移植到新的处置器上,使新的处置器从降生之初就有丰厚的软件,不只对软件重用有严重意义,更可以坦荡处置器研发的思绪,促进新处置器的立异。2、二进制在核算机使用中转换经常见的办法普通有三种办法可以把老处置器上的代码移植到新处置器上:(1)在新处置器上供应专门的运转形式来执行老代码,如英特尔的安腾(Itanium)处置器专门设计了执行x86代码的硬件。(2)把源顺序从新编译到新的指令集。(3)运用软件办法,分析或翻译使用顺序。第一种办法,明显无法应用新处置器的一些进步前辈特征,落空了开拓新处置器的意义,而且添加了新处置器的硬件复杂度,甚至还会影响原有代码的执行效率;第二种办法可以到达很好的效率,但并不老是可行,由于有些顺序曾经没有源代码,有些顺序依靠于共享代码库,而这些共享代码以目的代码方式呈现,纷歧定能获得源码,有些源顺序言语没有编译到新指令集的编译器,此外操作系统的差别还能够使得只要修正源代码才干从新编译这些例程(比方与图形相关的代码)。因而第三种办法,称之为二进制翻译(Binary Translation)应运而生。它是一种直接翻译可执行二进制顺序的技能,可以把一种处置器上的二进制顺序翻译到别的一种处置器上执行。它使得分歧处置器之间的二进制顺序可以很轻易地互相移植,扩展了硬件/软件的合用局限,有助于打破前面提到的处置器和支撑软件之间相互掣肘影响立异的场面。二进制翻译也是一种编译技能,它与传统编译的差异在于其编译处置对象分歧。传统编译处置的对象是某一种高级言语,经由编译处置生成某种机械的目的代码;二进制翻译处置的对象是某种机械的二进制代码,该二进制代码是经由传统编译生成的,经由二进制翻译处置后生成另一种机械的二进制代码。依照传统编译顺序前端、中端和后端的划分,我们可以了解为二进制翻译是拥有非凡前端的编译器。因而,更快且有用的进行就成为很主要的工作。3、进制之间的互相转换技巧3.1 二为十进制(1)二为十进制的传统办法&&按权睁开&法由二进制数转换成十进制数的根本做法是,把二进制数起首写成加权系数睁开式,然后按十进制加律例则乞降。这种做法称为&按权睁开&法。二进制数第0位的权值是2的0次方,第1位的权值是2的1次方&&例如,设有一个二进制数:,转换为十进制数为:下面是竖式: 换算成 十进制()B=(100)D注:B透露表现二进制,O透露表现八进制,D透露表现十进制,H透露表现十六进制。(2)二进制转换为十进制的技巧办法&&直接相加&算法。依据进制转化的道理可知,二进制转化为十进制时,都与2的次方数有关,即从低位到高位顺次为1、2、4、8、16、32、64&&,1的位数有用,0的位数无效,如许就可以依据二进制对应的位数直接算加法。例:将上面的二进制数:,转换为10进制为:后果直接算加法:64+32+4=100即()B=(100)D3.2 十进制转换为二进制3.2.1 十进制转换为二进制的传统办法&&除2取余&法十进制数转换为二进制数时,因为整数和小数的转换办法分歧,所以先将十进制数的整数局部和小数局部辨别转换后,再加以兼并。十进制整数转换为二进制整数采用&除2取余,逆序陈列&法。详细做法是:用2去除十进制整数,可以获得一个商和余数;再用2去除商,又会获得一个商和余数,如斯进行,直到商为零时为止,然后把先获得的余数作为二进制数的低位有用位,后获得的余数作为二进制数的高位有用位,顺次陈列起来。 十进制小数转换成二进制小数采用&乘2取整,挨次陈列&法。详细做法是:用2乘十进制小数,可以获得积,将积的整数局部掏出,再用2乘余下的小数局部,又获得一个积,再将积的整数局部掏出,如斯进行,直到积中的小数局部为零,或许到达所要求的精度为止。然后把掏出的整数局部按挨次陈列起来,先取的整数作为二进制小数的高位有用位,后取的整数作为低位有用位。例:将十进制数302.25转换为二进制数(1)整数局部:302/2=151余0151/2=75余175/2=37余137/2=18余118/2=9余09/2=4余14/2=2余02/2=1 余01/2=0余1(302)D=()B(2)小数局部:0.25X 2_______________0.50 (整数局部0为高位)X 2_______________1.00 (整数局部1为低位)(0.25)D=(0.01)B故(302.25)D=()B3.2.2 十进制转换为二进制的技巧办法&因式分化法依据进制转化的道理可知,十进制转化为二进制时,都与2的次方数有关,即从低位到高位顺次为1、2、4、8、16、32、64&&,1的位数有用,0的位数无效,如许就可以依据二进制对应的位数按上面的数进行因式分化。将十进制数302.25转换为二进制数(1)整数局部:即:(302.25)D=()B(2)小数局部:整数的转换是准确的,小数的转换能够呈现无量小数或轮回小数的状况。此时需求进行舍入处置以截断,所以小数的转换能够略有偏向。用上例办法获得(0.25)D=(0.01)B故(302.25)D=()B3.3 八进制与二进制的转换因为81=23,阐明八进制的一位对应二进制的三位(1)将八进制转换为二进制:例:将八进制的37.416转换成二进制数:(2)将二进制转换为八进制:例:将二进制的转换成八进制:3.4 十六进制与二进制的转换因为161=24,阐明十六进制的一位对应二进制的四位(1)十六进制转换为二进制例:将十六进制数5DF.9 转换成二进制:(2)二进制转换为十六进制例:将二进制数 转换成十六进制:3.5 十进制与八进制、十六进制的转换将十进制转换为八进制、十六进制首要经过二进制造为桥梁进行转换,办法同上。即:十进制&&二进制&&八进制;十进制&&二进制&&十六进制。总之,进制在核算机信息技能中使用普遍,特殊是二进制,已频频使用于日常生涯中,特殊是二进制与十进制之间的转化作为各进制之间转化的桥梁。凡间引见的进制将的转化,是从理论上处理问题,而实践使用中不太适用。就拿测验来说,测验时碰见一个大的十进制整数数转换为二进制数,采用&除2取余&的办法不只费工夫还轻易犯错,假如采用本文所述的因式分化法来做则简略、直观,适用性更强,在编程使用中也是如斯。更多计算机与外设信息请关注:21ic计算机与外设频道
分享给小伙伴们:
我来说两句……
最新技术贴
微信公众号二
微信公众号一数值数据是表示数量大小的数据,有多种表示方法。日常生活中一般采用十进制数进行计数和计算,但十进制数难以在计算机内直接存储与运算。在计算机系统中,通常将十进制数作为人机交互的媒介,而数据则以二进制数的形式存储和运算。
计算机采用二进制的主要原因有以下几点:
(1)易于物理实现
二进制在技术上最容易实现。这是因为具有两种稳定状态的物理器件很多,如门电路的导通与截止、电压的高与低等,而它们恰好可以对应表示“1”和“0”这两个数码。假如采用十进制,那么就要制造具有10种稳定状态的物理电路,而这是非常困难的。
(2)运算规则简单
数学推导已经证明,对R进制数进行算术求和或求积运算,其运算规则各有R(R+1)/2种。如采用十进制,则R=10,就有55种求和或求积的运算规则;而采用二进制,则R=2,仅有3种求和或求积的运算规则,
以加法为例:0+0=0,0+1=1 (1+0=1),1+1=10,因而可以大大简化运算器等物理器件的设计。
(3)机器可靠性高
由于电压的高和低、电流的有和无等都是一种质的变化,两种物理状态稳定、分明,因此,二进制码传输的抗干扰能力强,鉴别信息的可靠性高。
(4)逻辑判断方便
采用二进制后,仅有的两个符号“1”和“0”正好可以与逻辑命题的两个值“真”和“假”相对应,能够方便地使用逻辑代数这一有力工具来分析和设计计算机的逻辑电路。
但是,用二进制表示一个数,其所使用的位数要比用十进制表示长得多,书写和阅读都不方便,也不容易理解。为了书写和阅读的方便,人们通常使用十六进制来弥补二进制的这一不足。
1. 进位计数制
在人类的生产和生活中,经常要遇到数的表示问题,人们通常采用从低位向高位进位的方式来进行计数,这种表示数据的方法称为进位计数制。讨论进位计数制要涉及到两个基本概念:基数(Radix)和权(Weight)。
在进位计数制中,每个数位所用到的数码符号的个数叫做基数。十进制是人们最熟悉的一种进位计数制,每个数位允许选用0~9共10个不同数码中的某一个,因此十进制的基数为10。每个数位计满10就向高位进位,即“逢10进1”。
在一个数中,数码在不同的数位上所表示的数值是不同的。每个数码所表示的数值就等于该数码本身乘以一个与它所在数位有关的常数,这个常数叫做权。例如:十进制数6543.21,数码“6”所在数位的权为1000,这一位所代表的数值即为6×103=6000,“5”所在数位的权为100,这一位所代表的数值即为5×102=500,……。
计算机中信息的存储、处理和传送采用的都是二进制,不论是指令还是数据,或是多媒体信息(声音、图形、图像等),都必须采用二进制编码形式才能存入计算机中。
二进制是一种最简单的进位计数制,它只有两个不同的数码:“0”和“1”,即基数为2,逢2进1。任意数位的权是2i。
3)十六进制
十六进制数的基数为16,逢16进1,每个数位可取0,1,…,9,A,B,…,F共16个不同的数码和符号中的任意一个,其中A~F分别表示十进制数值10~15。
既然有不同的进位计数制,那么在给出一个数的同时,就必须指明它是哪种进制的数,例如:(1010)2、(1010)10、(1010)16 所代表的数值完全不同,如果不用下标加以标注,就会产生歧义。除了用下标表示之外,还可以用后缀字母来表示不同的数制,后缀B表示该数是二进制(Binary)数,后缀H表示该数是十六进制(Hexadecimal)数,而后缀D表示该数是十进制(Decimal)数。十进制数在书写时可以省略后缀D,其他进制数在书写时一般不能省略后缀。例如:有3个数分别为375D、101B和AFEH,从后缀字母就可以知道它们分别是十进制数、二进制数和十六进制数。
2. 各种进制数之间的转换
1)二进制数转换为十六进制数
将一个二进制数转换成十六进制数的方法是将二进制数的整数部分和小数部分分别进行转换,即以小数点为界,整数部分从小数点开始往左数,每4位分成一组,当最左边的数不足4位时,可根据需要在数的最左边添加若干个“0”以补足4位;对于小数部分,从小数点开始往右数,每4位分成一组,当最右边的数不足4位时,可根据需要在数的最右边添加若干个“0”以补足4位,最终使二进制数的总的位数是4的倍数,然后用相应的十六进制数取而代之。
0011011B = 10 B = 3B.A6CH
2)十六进制数转换为二进制数
要将十六进制数转换成二进制数,只要将1位十六进制数写成4位二进制数,然后将整数部分最左边的“0”和小数部分最右边的“0”去掉即可。
3B.328H = 11 B = 100101B
3)二进制数转换为十进制数
要将一个二进制数转换成十进制数,只要把二进制数的各位数码与它们的权相乘,再把乘积相加,就得到对应的十进制数,这种方法称为按权展开相加法。
1B = 1×25 + 1×21 + 1×20 + 1×2-1 + 1×2-3 + 1×2-4 = 35.6875D
4)十进制数转换为二进制数
要将一个十进制数转换成二进制数,通常采用的方法是基数乘除法。这种转换方法是对十进制数的整数部分和小数部分分别进行处理,整数部分用除基取余法,小数部分用乘基取整法,最后将它们拼接起来即可。
(1)十进制整数转换为二进制整数(除基取余法)
十进制整数转换为二进制整数的规则是:除以基数(2)取余数,先得到的余数为低位,后得到的余数为高位。
具体的做法是:用2连续去除十进制整数,直到商等于0为止,然后按逆序排列每次的余数(先取得的余数为低位),便得到与该十进制数相对应的二进制数各位的数值。
例如,将175D转换成二进制数:
所以,175D=B
(2)十进制小数转换为二进制小数(乘基取整法)
十进制小数转换为二进制小数的规则是:乘以基数(2)取整数,先得到的整数为高位,后得到的整数为低位。
具体的做法是:用2连续去乘十进制数的小数部分,直至乘积的小数部分等于0为止,然后按顺序排列每次乘积的整数部分(先取得的整数为高位),便得到与该十进制数相对应的二进制数各位的数值。
例如,将0.3125D转换成二进制数:
0.3125×2 = 0.625
所以,0.3125D = 0.0101B
若要将十进制数175.3125转换成二进制数,应对整数部分和小数部分分别进行转换,然后再进行整合:
175.11.0101B
需要注意的是,十进制小数常常不能准确地换算为等值的二进制小数,存在有一定的换算误差。
例如,将0.5627D转换成二进制数:
0.5627×2 = 1.1254
0.1254×2 = 0.2508
0.2508×2 = 0.5016
0.5016×2 = 1.0032
0.0032×2 = 0.0064
0.0064×2 = 0.0128
由于小数位始终达不到0,因此这个过程会不断进行下去。通常的做法是:根据精度要求,截取一定的数位,其误差值小于截取的最低一位数的权。
当要求二进制数取m位小数时,一般可求m+1位,然后对最低位作“0舍1入”处理。
0.5627D = 0.100100…B
若取精度为5位,则由于小数点后第6位为“0”,被舍去,所以:
0.5627D = 0.10010B以下试题来自:
单项选择题下列叙述中,错误的是______。A) 把数据从内存传输到硬盘的操作称为写盘B) WPS Office 2003属于系统软件C) 把高级语言源程序转换为等价的机器语言目标程序的过程叫编译D) 计算机内部对数据的传输、存储和处理都使用二进制
为您推荐的考试题库
你可能感兴趣的试题
1A) 硬盘存储器 B) CD-ROM C) 内存储器 D) 软盘存储器2A) 计算机病毒是一种有损计算机操作人员身体健康的生物病毒B) 计算机病毒发作后,将造成计算机硬件永久性的物理损坏C) 计算机病毒是一种通过自我复制进行传染的,破坏计算机程序和数据的小程序D) 计算机病毒是一种有逻辑错误的程序3A) 语言处理系统 B) 操作系统 C) 数据库管理系统 D) 诊断程序4A) 汇编 B) 编辑 C) 解释 D) 编译和链接5A) 对于相同的十进制整数(>1),其转换结果的位数的变化趋势随着基数R的增大而减少B) 对于相同的十进制整数(>1),其转换结果的位数的变化趋势随着基数R的增大而增加C) 不同数制的数字符是各不相同的,没有一个数字符是一样的D) 对于同一个整数值的二进制数表示的位数一定大于十进制数字的位数
热门相关试卷
最新相关试卷计算机是将信息转换成二进制数进行处理的。二进制即“逢二进一”,如表示二进制的数,将它转化成十进制的形式是,那么将二进制(共16位)转换成十进制数的形式是()A.B.CDC略陕西省宝鸡市2013届高三上学期教学质量检测一数学文试题答案

我要回帖

更多关于 计算机二进制转十进制 的文章

 

随机推荐