二进制与其他进制之间的转换.
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
各数制的权
各数制中整数部分不同位的权为“基的n-1次 方(n为数值所在的位数,n的最小值取1)”, 小数部分不同位的权值为“基的-n次方”。
一个十进制数(135.7)可表示为: 135=1×102+3×101+5×100+7×10-1 如:十进制中,各位的权为10n-1
二进制中,各位的权为2n-1 十六进制中,各位的权为16n-1
十进制与二进制的相互转换
1.十进制转换为二进制 整数部分:按“倒序除2取余法”的原则进行转换。
即用2连续去除十进制数,直至商等于0为止,逆 序排列余数即可得到与该十进制相对应的二进制 数各位的数值。
小数部分:按“顺序乘2取整法”的原则进行转换。
小数乘以目标数制的基数,第一次相乘结果的整数部 分为目的数的最高位,将其小数部分再乘基数依次 记下整数部分,反复进行下去,直到乘积的小数部 分为“0”,或满足要求的精度为止。(如2-5,只要求 到小数点后第五位)。
二进制与八进制转换
转换方法:从小数点开始,将二进制数的整数和小 数部分每三位分为一组,不足三位的分别在整数的 最高位前和小数的最低位后加“0”补足,然后每组 用等值的八进制码替代,即得八进制数。
例:(11010111.0100111)2 = (327.234)8
二进制转与十六进制的相互转换
2.二进制数与十六进制数的相互转换 由于16=24,所以在将二进制数转换成十六进
【例1】将(236)D转换成二进制。 转换过程如图1所示。
2 2 36 2 118 2 59 2 29 2 14 27 23 21 0
…………… 0 …………… 0 …………… 1 …………… 1 …………… 0 …………… 1 …………… 1 …………… 1
二进制数的低位 二进制数的高位
ቤተ መጻሕፍቲ ባይዱ
图1 将十进制数转变成二进制数
2.二进制 二进制数只有两个代码“0”和“1”,所有的数据都 由它们的组合来实现。 基为:2 运算规则:“逢二进一,借一当二”的原则。
3.八进制 使用的符号:0、1、2、3、4、5、6、7; 运算规则:逢八进一; 基为:8 在八进制数据后加英文字母“O”,
4.十六进制 使用的符号:采用0~9和A、B、C、D、E、F六个英文 字母一起共十六个代码。 运算规则:逢十六进一 基为:16 在十六进制数据后加英文字母“H”以示分别。
图3 二进制转成16进制
其他进制数转换成十进制
八进制、十六进制与十进制的相互转换 八进制、十六进制数与十进制数相互转换时,有两种
方法。 方法一,可以分成两步完成:将待转换的数转换成二进制,
然后再将二进制数转换成十进制的数。 方法二,直接进行转换。只需将各代码与相应的权相乘,
然后用十进制的方法相加就可以实现。
制数时,从小数点开始,将二进制数的整数和 小数部分每四位分为一组,不足四位的分别在 整数的最高位前和小数的最低位后加“0”补足, 然后每组用等值的十六进制码替代,即得目的 数。十六进制数转换成二进制数时正好相反, 一位十六进制数用四位二进制数来替换。对于 有小数的数,要分小数和整数部分处理。
例: (111011.10101)2=(3B.A8)H
二进制与十进制、八进制、十六进制之间的转换
各进制的基数、符号 各数制的权 十进制与二进制的相互转换 二进制与八进制的相互转换 二进制转与十六进制的相互转换 其他进制转换为十进制 二进制、八进制、十六进制之间的转换
各进制的基数、符号
1.十进制 日常生活中最常见的是十进制数,用十个不同的符号来 表示:0、1、2、3、4、5、6、7、8、9。 基为:10 运算规则:逢十进一,借一当十 在十进制数的后面加大写字母D以示区别。
如(0十.8进12制5D)转转换成成二进8进制制的、过程16是进:制,与转成2 进制的方法相同!但基数是8或16!
0.8125D×2=1.625 0.625D×2=1.25 0.25D×2=0.5 0.5D×2=1.0
得整数部分:1 得整数部分:1 得整数部分:0 得整数部分:1
所以 0.8125D=0.1101B
【例2】将(81.65)D转换成二进制,要求精度 为小数点后面5位。
图2 小数部分转成2进制数的步骤
(81.65)D=(1010001.10100)2
2.二进制转换为十进制
二进制数要转换成十进制数非常简单,整数部分将每一位数 字乘以它的权2n-1,再以十进制的方法相加即可得到十进制数 (注意,小数点右侧相邻位的权为2-1,从左向右,每移一位, 幂次减1)。 【例3】把二进制序列(10110.011)转成10进制数。 =1×24+0×23+1×22+1×21+0×20+0×2-1 +1×2-2+1×2-3 =(22.375)D