`

计算机基础:二进制、八进制、十进制、十六进制

阅读更多
一、十进制数
  十进制数是日常生活中使用最广的计数制。组成十进制数的符号有0,1,2,3,4,5,6,7,8,9等共十个符号,我们称这些符号为数码。
  在十进制中,每一位有0~9共十个数码,所以计数的基数为10。超过9就必须用多位数来表示。十进制数的运算遵循:加法时:“逢十进一”;减法时:“借一当十”。
  十进制数中,数码的位置不同,所表示的值就不相同。


  式中,每个对应的数码有一个系数1000,100,10,1与之相对应,这个系数就叫做权或位权。十进制数的位权一般表示为:10n-1  

式中,10为十进制的进位基数;10的i次为第i位的权;n表示相对于小数点的位置,取整数;当n位于小数点的左边时,依次取n=1、2、3……n。位于小数点的右边时,依次取n=-1、-2、-3……因此,634.27可以写为:

634.27=6×102+3×101+4×100+2×10-1+7×10-2

  在正常书写时,各数码的位权隐含在数位之中,即个位、十位、百位等。

  二、二进制

  电子计算机处理的信息,都是仅用“0”与“1”两个简单数字表示的信息,或者是用这种数字进行了编码的信息。这种数制叫做二进制。要了解计算机,首先要了解计算机中数的表示方法。

  为了区别不同数制表示的数,通常用右括另外下标数字或字母表示数制,十进制数用D表示,二进制用B表示,十六进制数用H表示,八进制用O表示。

  二进制计算法的特点:①二进制数只有“0”和“1”两个数码,基数是2,最大的数字是1;②采用逢二进一的原则。

  二进制的位权一般表示为:2n-1。各位的权为以2为底的幂。例如,(01101010)各位的权自至在依次为27、26、25、24、23、22、21、20。

  二进制数的算术四则运算规则,除进、借位外与十进制数相同。
  ■二进制加法规则
  0+0=0 1+0=1
  0+1=1 1+1=10(红色为进位位)
  ■二进制减法规则
  0-0=0 0-1=1-借位
  1-0=1 1-1=0
  ■二进制乘法规则
  0×0=0 1×0=0
  0×1=0 1×1=1

为了区别于十进制数,在书写时二进制数可以用两种方法表示:例如:(1011.01)2或1011.1B。

   例如:写出(1011.01)2的十进制数表达式。
   (1011.01)2=1×23+0×22+1×21+1×20+0×2-1+1×2-2=(11.25)10  

  二进制的优点是:
  ■二进制只有“0”和“1”两数字,很容易表示。电压的高和低、 晶体管的截止与饱和、磁性材料的磁化方向等都可以表示为“0”和“1”两种状态。
  ■二进制数的每一位只有0和1两状态,只需要两种设备就能表示, 所以二进制数节省设备。由于状态简单,所以抗干扰力强,可靠性高。

  二进制的主要缺点是数位太长,不便阅读和书写,人们也不习惯。为此常用八进制和十六进制作为二进制的缩写方式。为了适应人们的习惯,通常在计算机内都采用二进制数,输入和输出采用十进制数,由计算机自己完成二进制与十进制之间的相互转换。

      三、十六进制数

  二进制数在计算机系统中处理很方便,但当位数较多时,比较难记忆及书写,为了减小位数,通常将二进制数用十六进制表示。
  十六进制是计算机系统中除二进制数之外使用较多的进制,其计数法的特点为:
  ①有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F等共十六个数码,其分别对应于十进制数的0~15;
  ②十六进制数的加减法的进/借位规则为:借一当十六,逢十六进一。

  十六进制数的位权一般表示为:16n-1。其中16是十六进制的进位基数,n表示相对小数点的位置。在书写时,用加注16或H的方式表示十六进制数,例如:(8FA.5)16或8FA.5H。
  例如:写出(8FA.5)16的十进制数表达式。
  (8FA.5)16=8×162+15×161+10×160+5×16-1=(2298.3125)10

  四、八进制数

  八进制计数法的特点是:
  有八个不同的计算符号0、1、2、3、4、5、6、7,这八个符号称为数码。
  采用逢八进一的原则。对应于十进制数0、1、2、3、4、5、6、7、8,八进制数分别记作0、1、2、3、4、5、6、7、8、10。

  下表列出了十进制0~16对应的二进制数和十六进制数。

十进制数 二进制数 十六进制数
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F
16 10000 10

  五、十进制数转化为非十进制数

  十进制转换数转换为非十进制数时,可将其分为整数部分和小数部分分别进行转换,最后将结果合并为目的数。

  ● 整数部分的转换
  整数部分的转换是采用除基取余法。所谓除基取余法就是用欲转换的数据的基数去除十进制数的整数部分,第一次除取得的余数为目的数的最低位,把得到的商再除以该基数,所得余数为目的数的次低位,依此类推,继续上面的过程,直到商为0时,所得余数为目的数的最高位。
  例 将十进制53D转换为二进制数(7-2)。


  53D=110101B

  ●小数部分的转换
  小数部分的转换是采用乘基取整法。所谓乘基取整法就是用该小数乘上目的数制的基数,第一次乘得结果的整数部分为目的数的小数部分的最高位,其小数部分再乘上基数,所得结果的整数部分为目的数的次高位,依此类推,继续上述的过程,直到小数部分为0或达到要求的精度为止。
    从上面可以看出该数在转换为二进制时,尽管已经过了解5次相乘,但其小数位还存在,由于题目要求保留小数后4位,故结果为:0.736D≈0.1011B或0.736D≈0.1100B。

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

  由于任一数都可以按权展开,于是很容易将一个非十进制数转换为相应的十进制数。具体的步骤是:将一个非十进制按权展开成一个多项式,每项是该位的数码与相应的权之积,把多项式按十进制数的规则进行计算机求和,所得结果即是该数的十进制。
  

  七、二进制与十六进制数的相互转换

  四位二进制数共有十六种组合,而十六种组合正好与十六进制的十六种组合一致,故每四位二进制数对应于一位十六进制数,因此二进制数与十六进制之间的转换非常简单。下面通过两个例子来说其转换:
  

  从上面例子可以总结出两种进制转换的方法:
  ★二进制转换为十六进制时:只要将二进制数的整数部分自右向左每四位一组,最后不足四位的用零补足;小数部分则自左向右每四位一组,最后不足四位时在右边补零。再把每四位二进制数对应的十六进制数写出来即可。
  ★十六进制数转换为二进制数的正好与此相反,只要将每位的十六进制数对应的四位二进制写出来即行了。

  常用编码

  BCD编码

  在数字系统中,各种数据要转换为二进制代码才能进行处理,而人们习惯于使用十进制数,所以在数字系统的输入输出中仍采用十进制数,这样就产生了用四位二进制数表示一位十进制数的方法,这种用于表示十进制数的二进制代码称为二-十进制代码(Binary Coded Decimal),简称为BCD码。它具有二进制数的形式以满足数字系统的要求,又具有十进制的特点(只有十种有效状态)。在某些情况下,计算机也可以对这种形式的数直接进行运算。常见的BCD码表示有以下几种。

8421BCD编码
  这是一种使用最广的BCD码,是一种有权码,其各位的权分别是(从最有效高位开始到最低有效位)8,4,2,1。
  例 写出十进数563.97D对应的8421BCD码。
    563.97D=0101 0110 0011 . 1001 01118421BCD
  例 写出8421BCD码1101001.010118421BCD对应的十进制数。
    1101001.010118421BCD=0110 1001 . 0101 10008421BCD=69.58D
  在使用8421BCD码时一定要注意其有效的编码仅十个,即:0000~1001。四位二进制数的其余六个编码1010,1011,1100,1101,1110,1111不是有效编码。

2421BCD编码
  2421BCD码也是一种有权码,其从高位到低位的权分别为2,4,2,1,其也可以用四位二进制数来表示一位十进制数。其编码规则如下表。

余3码
  余3码也是一种BCD码,但它是无权码,但由于每一个码对应的8421BCD码之间相差3,故称为余3码,其一般使用较少,故正须作一般性了解,具体的编码如下表。

常见BCD编码表

十进制数 8421BCD码 2421BCD码 余3码
0 0000 0000 0011
1 0001 0001 0100
2 0010 0010 0101
3 0011 0011 0110
4 0100 0100 0111
5 0101 1011 1000
6 0110 1100 1001
7 0111 1101 1010
8 1000 1110 1011
9 1001 1111 1100
10 0001,0000 0001,0000 0100,0011



  格雷反射码(循环码)

  格雷码是一种无权码,其特点是任意两个相邻的码之间只有一个数不同。另外由于最大数与最小数之间也仅一个数不同,故通常又叫格雷反射码或循环码。

十进制数 二进制数 格雷码 十进制数 二进制数 格雷码
0 0000 0000 8 1000 1100
1 0001 0001 9 1001 1101
2 0010 0011 10 1010 1111
3 0011 0010 11 1011 1110
4 0100 0110 12 1100 1010
5 0101 0111 13 1101 1011
6 0110 0101 14 1110 1001
7 0111 0100 15 1111 1000
分享到:
评论

相关推荐

    进制转换.docx 十进制转二进制:十进制转八进制:十进制转十六进制

    不同的进制系统用于表示数字,例如十进制(Decimal)、二进制(Binary)、八进制(Octal)和十六进制(Hexadecimal)。理解这些进制转换对于理解和编写程序至关重要,因为计算机内部是以二进制形式存储和处理数据的...

    汇编语言进制(二进制,八进制,十进制,十六进制)转换

    汇编语言是计算机底层编程的一种语言,它直接对应机器指令,因此对二进制、八进制、十进制和十六进制的理解至关重要。下面我们将详细探讨这些进制及其相互转换。 二进制(Binary)是最基础的数字系统,只包含两个...

    十进制 八进制 二进制 十六进制转换工具

    本文将详细阐述十进制、八进制、二进制以及十六进制之间的转换工具及其应用。 首先,让我们理解这四种进制的基本原理: 1. **十进制(Decimal)**:我们日常生活中的计数方式,基数为10,每一位的权重由10的幂次...

    (0-255)十进制-二进制-八进制-十六进制对照表

    在计算机科学和网络领域,数字通常以不同的进制表示,如十进制、二进制、八进制和十六进制。这些进制系统在处理数据、编程和网络通信时都发挥着重要作用。以下是关于这四种进制系统及其转换的知识点详解: 1. **十...

    二进制十进制八进制十六进制转换练习题[借鉴].pdf

    * 十进制转十六进制:将十进制数除以 16,取余数,然后将结果转换为十六进制数。 数制运算 * 二进制运算:二进制数可以进行逻辑运算(AND、OR、NOT 等)和算术运算(加减乘除等)。 * 十进制运算:十进制数可以...

    二进制 十进制 八进制 十六进制 进制转换

    在计算机科学中,数字的表示方式至关重要,尤其是二进制、十进制、八进制和十六进制。这些不同的进制系统各自有着独特的特点和应用场景。本文将深入探讨这四种进制之间的转换方法。 首先,我们要理解每种进制的基本...

    二进制、八进制、十进制和十六进制之间的转换

    - 十进制到八进制和十六进制:类似地,可以使用“除8取余法”或“除16取余法”。 四、十六进制(Hexadecimal) 十六进制用0至9和A至F这十六个符号表示,其中A代表10,B代表11,C代表12,D代表13,E代表14,F代表15...

    二进制、八进制、十六进制转换.doc

    二进制(Binary)、八进制(Octal)和十六进制(Hexadecimal)是计算机领域最常用的三种非十进制计数体系,它们与十进制之间的转换是编程基础的一部分。 6.1 为什么需要八进制和十六进制? 在编程中,尽管我们通常...

    Java程序十进制转二进制,八进制,十六进制

    在Java编程语言中,将十进制数转换为二进制、八进制和十六进制是常见的操作,尤其在处理计算机数据表示和计算时。本文将深入探讨这些转换方法。 首先,我们要理解不同进制系统的基础。十进制是我们日常生活最常用的...

    计算机数制二进制十进制十六进制总结PPT课件.pptx

    计算机数制二进制十进制十六进制总结 本资源摘要信息涵盖了计算机数制的基本概念和转换方法,包括二进制、十进制、十六进制和八进制等。下面是对标题、描述、标签和部分内容的解释和总结: 一、计算机数制的基本...

    二、八、十、十六进制转换器

    在计算机科学领域,数字的表示方式至关重要,其中最常见的有二进制、八进制、十进制和十六进制。这些不同的进制系统各有特点,适用于不同的计算和数据存储场景。"二、八、十、十六进制转换器"是一个方便的工具,能够...

    总结进制数转换二进制八进制十进制十六进制之间转换方法PPT学习教案.pptx

    + 二进制转换为十六进制:每四位二进制数组成一组,写出每一组二进制数所对应的十六进制数码 + 十六进制转换为二进制:每一位十六进制数分别用四位二进制数表示 总结 进制数转换是计算机领域中的一项基础知识,...

    计算机基础之常见进制转换(二、八、十、十六进制互相转换)

    在计算机科学中,我们主要涉及四种进制:二进制(Binary)、八进制(Octal)、十进制(Decimal)和十六进制(Hexadecimal)。这些进制都有其特定的用途,例如二进制是计算机的基础,八进制和十六进制则是为了简化二...

    二进制 八进制 十进制 十六进制之间的进制转换.docx

    9. 二进制到十六进制:每四位二进制数转换为一位十六进制数。例如,二进制数11111101转换为十六进制是FD。 10. 十六进制到二进制:将每位十六进制数转换为四位二进制数。例如,十六进制数AB转换为二进制是1010 1011...

    c语言编程题:从键盘输入一个十进制数,将其转换为二进制、八进制和十六进制数,并同时输出。

    根据给定的文件信息,本篇文章将围绕C语言编程题展开,主要介绍如何从键盘接收一个十进制数,并将其转换成二进制、八进制以及十六进制数进行输出的方法。 ### 一、问题描述 题目要求通过C语言编程实现从键盘输入一...

    十六进制十进制二进制转换器

    在计算机科学和数字电路设计中,数据通常以不同的进制表示,其中最常见的是二进制(Binary)、八进制(Octal)、十进制(Decimal)和十六进制(Hexadecimal)。十六进制和十进制之间的转换,以及它们与二进制之间的...

    进制转换工具(二进制、八进制、十进制、十六进制)

    常见的进制有二进制(Binary)、八进制(Octal)、十进制(Decimal)和十六进制(Hexadecimal)。理解并掌握这些进制转换对于学习计算机编程、数据存储以及网络通信至关重要。 二进制是最简单的进制系统,只包含两...

    VB程序二、八、十、十六进制转换器

    这个进制转换器能够处理二(二进制)、八(八进制)、十(十进制)和十六(十六进制)四种常见的数值系统,满足了在计算机科学和编程中的常见需求。 **进制转换的基本原理** 在计算机科学中,数字可以表示为不同...

    二进制_八进制_十进制_十六进制之间的转换算法

    在计算机科学中,数字系统是一种基础的概念,它可以分为四种基本类型:二进制、八进制、十进制和十六进制。这些数字系统之间的转换是计算机科学中一个非常重要的概念,本文将详细介绍二进制、八进制、十进制和十六...

    十进制转化为二进制_八进制_十六进制代码 C#代码

    在编程领域,尤其是在C#语言中,数据的进制转换是一项基本操作,它涉及将数值从一种基数(如十进制)转换为另一种基数(如二进制、八进制或十六进制)。这里我们将详细探讨这个主题,并提供C#代码实现。 一、十进制...

Global site tag (gtag.js) - Google Analytics