#281. 第四节 数制转换

第四节 数制转换

一、数制的概念

  • 数制:数制是一种计数方法,是用数字符号和一定的规则表示数。比如用十个手指头计数就是一种数制。就是任何数制都有两个基本要素:基数和位权。
  • 基数:数制中所使用数的个数,几进制就有几个基数。
  • 位权:数制中某一位上的1表示的数值的大小。例如:十进制321,3的位权是100,2的位权是10,1的位权是1。

二、常见的数制

  • 十进制(decimalism):每一位可取0-9这10个数码,计数的基数位10,超过9要用多位数来表示。

手指十进制图

  • 二进制(binary):每一位可取0-1这2个数码,计数的基数位2,超过1要用多位数来表示。
  • 八进制(octal):每一位可取0-7这8个数码,计数的基数位8,超过7要用多位数来表示。
  • 十六进制(hexadecimal):每一位可取0-9,A,B,C,D,E,F这16个数码,计数的基数位16,超过F要用多位数来表示。

三、数制之间的转换

image

1、K进制转十进制

按权相加法展开成一个多项式,每项是该位的数码与相应的权之积,把多项式按十进制数的规则进行求和,所得结果即是该数的十进制。

image

例: [1101.01(2) = 12^3 + 02^2 + 12^1 + 12^0 + 02^{-1} + 12^{-2} = 13.25]

2、十进制转K进制

整数部分:十进制整数转换为K进制整数的方法是倒除法,即除K直至商为0,倒取余数。

例:[172(10) = 10101100(2)]

image

小数部分:十进制小数转换为K进制小数的方法是取整法,取小数部分循环乘以K直至为0,顺序取整数部分。

例:[0.625(10) = 0.101(2)]

image

3、二进制转八进制

整数部分:从右向左,二进制3位一组转成八进制。

例:[1 111 010 101 101(2) = 17255(8)]

小数部分:从左向右,二进制3位一组转成八进制。

例:[1 101 110.1011(2) = 156.54(8)]

4、二进制转十六进制

整数部分:从右向左,二进制4位一组转成十六进制。

例:[1 1110 1010 1101(2) = 1EAD(16)]

小数部分:从左向右,二进制4位一组转成十六进制。

例:[11110 1001.10111(2) = 1E9.B8(16)]

5、N进制转M进制

N进制先转成十进制,再转成M进制。

image

四、习题

  1. 八进制 32.1 对应的十进制数是()。

{{ select(1) }}

  • 24.125
  • 24.250
  • 26.125
  • 26.250
  1. 一个自然数在十进制下有 n 位,则它在二进制下的位数与() 最接近。

{{ select(2) }}

  • 5n
  • nlog210n*log_2 10
  • 10log2n10*log_2 n
  • 10nlog21010^n * log_2 10
  1. 二进制数 111.101 所对应的十进制数是()。

{{ select(3) }}

  • 5.625
  • 5.5
  • 6.125
  • 7.625
  1. 设 X、Y、Z 分别代表三进制下的一位数字,若等式 XY+ZX=XYX 在三进制下成立,那么同样在三进制下,等式 XY*ZX=()也成立。

{{ select(4) }}

  • YXZ
  • ZXY
  • XYZ
  • XZY
  1. 与十进制数 28.5625 相等的四进制数是()。

{{ select(5) }}

  • 123.21
  • 131.22
  • 130.22
  • 130.21
  1. (2008)10+(5B)16(2008)_{10} + (5B)_{16} 的结果是()。

{{ select(6) }}

  • (833)16(833)_{16}
  • (2089)10(2089)_{10}
  • (4163)8(4163)_8
  • (100001100011)2 (100001100011)_2
  1. 如果在某个进制下等式 7* 7=41 成立,那么在该进制下等式 12 * 12=() 也成立。

{{ select(7) }}

  • 100
  • 144
  • 164
  • 196
  1. 下列四个不同进制的数中,与其他三项数值上不相等的是()。

{{ select(8) }}

  • (269)16(269)_{16}
  • (617)10(617)_{10}
  • (1151)8 (1151)_8
  • (1001101011)2(1001101011)_2
  1. 二进制 00101100 和 01010101 异或的结果是()。

{{ select(9) }}

  • 00101000
  • 01111001
  • 01000100
  • 00111000
  1. 2 个 10 进制数 1111 和 1010 的异或运算结果的 10 进制表示是()。

{{ select(10) }}

  • 101
  • 3
  • 1957
  • 5
  1. 下列不同数制表示的数中,最大的一个数是()。

{{ select(11) }}

  • (222.1)10(222. 1)_{10}
  • (11011011.1)2(11011011. 1)_2
  • (334.1)8(334. 1)_8
  • (DC.1)16(DC. 1)_{16}
  1. 二进制数 101.11 对应的十进制数是()。

{{ select(12) }}

  • 6.5
  • 5.5
  • 5.75
  • 5.25
  1. 二进制数 1011 转换成十进制数是()。

{{ select(13) }}

  • 10
  • 13
  • 11
  • 12
  1. 三进制1101(3) 转换成十一进制是()。

{{ select(14) }}

  • 32(11)
  • 33(11)
  • 34(11)
  • 35(11)
  1. 某个进制下 6+5 的结果为 14,那么该进制下 6*5 的结果为()。

{{ select(15) }}

  • 42
  • 53
  • 64
  • 37