了解计算机各进制及其转换关系

一、计数系统

在基数b的位置记数系统(其中b是一个正自然数,叫做基数),b个基本符号(或者叫数字)对应于包括0的最小b个自然数。一般来讲,b进制系统中的数有如下形式:
(anan1a1a0.c1c2c3)b=k=0nakbk+k=1ckbkbkbk (a_na_{n-1}\cdots a_1a_0.c_1c_2c_3\cdots)_b=\sum_{k=0}^na_kb^k+\sum_{k=1}^{\infty}c_kb^{-k},其中 数b^k和b^-k是相应数字的比重

  • 二进制数据的位置计数法
    对于有n位整数,m位小数的二进制数据用加权系数展开式表示,可写为:
    (an1an2a1a0.a1a2am)2=an1×2n1+an2×2n2++a1×21+a0×20+a1×21+a2×22++am×2m (a_{n-1}a_{n-2}\cdots a_1a_0.a_{-1}a_{-2}\cdots a_{-m})_2=a_{n-1}\times2^{n-1}+a_{n-2}\times2^{n-2}+\cdots+a_1\times2^1+a_0\times2^0+a_{-1}\times2^{-1}+a_{-2}\times2^{-2}+\cdots +a_{-m}\times2^{-m}
    二进制数据一般可写为:
    【例】:将二进制数据111.01写成加权系数的形式
    1×22+1×21+1×20+0×21+1×221\times2^2+1\times2^1+1\times2^0+0\times2^{-1}+1\times2^{-2}

二、通用进制转换

余数定理(Polynomial remainder theorem)是指一个多项式除以一个线性多项式(x-a)的余数是 f(a)。若f(a)=0,则(x-a)为多项式f(x)的因式。例如,(5x³+4x²-12x+1)/(x-3) 的余式是 5·3³+4·3²-12·3+1=136

不同进制之间的转换本质就是确定各个不同权值位置上的数码。转换正整数的进制的有一个简单算法,就是通过用目标基数作长除法;余数给出从最低位开始的“数字”
【例】1020304从10进制转到7进制:
了解计算机各进制及其转换关系
【例】10110111 从2进制到5进制: 了解计算机各进制及其转换关系

三、二进制(Binary)

1679年德国数学家莱布尼茨发现二进制并完善了二进制系统,在数字电路中值得是以2为基数的记数系统逻辑门的实现使得二进制被应用于计算机技术中,每个数字被称为一个比特(Bit,Binary digit)

1、计算机采用二进制的原因

  • 二进制仅有两个数码(0和1),任何具有两个不同稳定状态的元件都可以用二进制数码来表示,如开关的“开”、“关”,电压“高”、“低”,纸带“有孔”、“无孔",电路”有信号“、”无信号“,磁性材料”南极“、北极”等,这两种稳定状态在在质与量上差别明显,该特性大大提高机器的抗干扰性,提高数据的可靠性
  • 二进位计数制四则运算规则简单可归结与加法运算和移位,使得电子计算机中的运算线路变得简单
  • 采用二进制表示数可以节省设备
  • 可以用布尔代数来分析综合机器中的逻辑线路

2、二进制四则运算

二进制加法的四种情况:0+0=0,0+1=1,1+0=1,1+1=10(满二进一)
二进制减法有四种情况:0-0=0,1-0=1,0-1=1,1-1=0
二进制乘法有四种情况: 0×0=0,1×0=0,0×1=0,1×1=1
二进制除法有两种情况(除数只能为1):0÷1=0,1÷1=1
两个二进制数1001与0101的算术运算:
了解计算机各进制及其转换关系

3、二进制数的转换

  • 二进制转换为十进制
    方法:按权展开求和”,该方法的具体步骤是先将二迸制的数写成加权系数展开式,而后根据十进制的加法规则进行求和
    【例】:(1011)2=1×23+0×22+1×21+1×20=(11)10(1011)_2=1\times2^3+0\times2^2+1\times2^1+1\times2^0=(11)_{10}
  • 二进制转换为十六进制
    二进制转换成十六进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位
    【例】100101111010001B转换为二进制数
    1001>90111>71101>B0001>197B1H1001->9 \quad 0111->7\quad 1101->B\quad 0001->1\quad 故该该数十六进制为:97B1H
    **注意:**在向左(或向右)取四位时,取到最高位(最低位)如果无法凑足四位,就可以在小数点的最左边(或最右边)补0,进行换算
    【例】10111.011B转换成十六进制
    0001>10111>70110>617.6H0001->1\quad 0111->7\quad 0110->6\quad 该数十六进制表示为17.6H

四、十进制(Decimal)

人类算数采用十进制,可能跟人类有十根手指有关。亚里士多德称人类普遍使用十进制,只不过是绝大多数人生来就有10根手指这样一个事实的结果

整数部分 小数部分
10^0(十的零次方) 一
10^1 十 10-1 分
10^2百 1^-2厘
10^3千 10^-3毫
10^4万 10^-4丝
10^5十万 10^-5忽
10^6百万(兆) 10^-6微
10^9十亿(吉) 10^-9尘(纳)
10^太 10^-12 漠(皮)

1、十进制数转换为二进制数

由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并

  • 十进制整数转换为二进制整数 十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来
    了解计算机各进制及其转换关系
  • 十进制小数转换为二进制小数
    十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止
    了解计算机各进制及其转换关系

2、十进数转换成十六进制数

采用余数定理进行分解,例如将4877104877_{10}转成十六进制:

4877÷16=304…13(D)

304÷16=19…0

19÷16=1…3

1÷16=0…1

这样就得到487710=130DH

五、十六进制(Hexadecimal)

十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或af)表示,其中:AF表示10~15,这些称作十六进制数字
在历史上,中国曾经在重量单位上使用过16进制,比如,规定16两为一斤。如今的16进制则普遍应用在计算机领域,这是因为将4个位元(Bit)化成单独的16进制数字不太困难。1字节可以表示成2个连续的16进制数字。可是,这种混合表示法容易令人混淆,因此需要一些字首、字尾或下标来显示

1、十六进制的表示

其中最常用(或常见)表示十六进制数值的方式是将 ‘0x’ 加在数字前,或在数字后加上小字 16。例如 0x2BAD 和 2BAD16都是表示十进制的11181(或1118110)
在网页设计上十六进制是很常用的,HTML和CSS使用十六进制的表示法来表示网页上的特定颜色。使用 # 的符号来表示而非用个别的符号表示十六进制。24-bit 颜色可以用 #RRGGBB 的格式来表示,RR 是颜色中红色成分的数值,GG 是颜色中绿色成分的数值,BB 颜色中蓝色成分的数值。举个例子, 红色的阴影是十进制 238,9,63 可以编成 #EE093F

2、十六进制数转换为二进制数

十六进制数转为二进制数,方法就是一分四,即一个十六进制数分成四个二进制数,用四位二进制按权相加,最后得到二进制,小数点依旧就可以采用该方法
【例】BF4.B5转换成二进制数
B>1011F>11114>0100B>10115>0101101111110100.10110101B->1011\quad F->1111\quad 4->0100\quad B->1011\quad 5->0101,故该数为1011\quad1111\quad0100\quad.1011\quad0101

3、十六进制数转换成十进制数

B>1011F>11114>0100B>10115>0101101111110100.10110101B->1011\quad F->1111\quad 4->0100\quad B->1011\quad 5->0101,故该数为1011\quad1111\quad0100\quad.1011\quad0101

3、十六进制数转换成十进制数

将十六进制数写成权系数展开式,然后对该展开式进行求和即可

相关文章:

  • 2022-12-23
  • 2022-03-12
  • 2021-09-05
  • 2021-12-23
  • 2021-11-29
  • 2021-08-20
  • 2021-10-28
猜你喜欢
  • 2021-11-18
  • 2021-10-14
  • 2021-04-19
  • 2021-09-21
相关资源
相似解决方案