为什么要用到二进制?

本文探讨了二进制在数字电路中的广泛应用,因其在电子器件实现、运算简易性和逻辑表示上的优势。介绍了基数和位权的概念,并列举了十进制、二进制、八进制和十六进制的特性及转换方法,包括整数和小数的转换。此外,还简要提及了进制运算,如加减法,并提到了二进制与其他进制转换的代码实现。最后,文章讨论了不同类型的BCD码,如8421码、2421码和余3码,以及格雷码的特性。
摘要由CSDN通过智能技术生成

进制及其转换

  • 为什么要用到二进制?

数字电路非常广泛,小到逻辑门电路,大到超大规模集成电路,手机,电脑,智能设备……数字信号即可以表示数字,也可以表示非数值的信息,如文字,声音,图片,视频。如何将这些非数值类的信息 变成 二进制信号呢?这就涉及到编码制度,即将信息通过编码的方式转成二进制值,如 MP3、MP4、midi、jpg、gif 等等

  1. 从可行性来说,采用二进制,只有 0 和 1 两个状态,能够表示 0 和 1 两种状态的电子器件有很多,比如开关的接通和断开、晶体管的导通和截止、磁原件的正负剩磁、电位电平的高低等都可以表示 0 和 1 两个数。使用二进制,电子器件具有实现的可行性。

  2. 从运算的简易性来说,二进制的运算法则少,运算简单,使计算机运算器的硬件结构大大简化(十进制乘法九九口诀有 55 条公式,而二进制乘法只有四条规则)。

  3. 从逻辑上讲,由于二进制 0 和 1 正好和逻辑代码假和真相对应,有逻辑代数的理论基础,用二进制表示二值逻辑很自然。 -摘自计算机为什么是二进制?

  • 十进制是“十进”,采用的是“个/十/百/千/万…”的进位递增
  • 二进制是“二进”,采用的是“1/2/4/8/16/…”的进位递增

基数和位权

在十进制系统中(基数 10),数4327.13表示 ( 4 × 1 0 3 ) + ( 3 × 1 0 2 ) + ( 2 × 1 0 1 ) + ( 7 × 1 0 0 ) + ( 1 × 1 0 − 1 ) + ( 3 × 1 0 − 2 ) (4×10^3) + (3×10^2) + (2×10^1) + (7×10^0) + (1×10^{-1}) + (3×10^{-2}) (4×103)+(3×102)+(2×101)+(7×100)+(1×101)+(3×102) ,其中的 10 就是我们所说的基数,基数在不同数制转换中起着重要作用。我们用数字我们知道多位数有很多位,有十位、百位和千位,处在每个位上的单位1表示的数值大小不同,十位上的数字1代表 10 ,百位上的数字 1 代表 100,以此类推,故我们称 1 0 n 10^n 10n为位权 ,也称比重 (以 10 进制为例)

常见的进制

计算机中的任何数据都可以用一串 0 或 1 来表示,但考虑到二进制数位太长,所以我们也可以采用八进制和十六进制来表示数值数据。为了避免出现误会,在给出一个数的同时就必须指明这个数的数制,例如:(1010)2、(1010)8、(1010)10、(1010)16所代表的数值就不同。除了用下标来表示不同的数制以外,在计算机中还常用后缀字母来表示不同的数制。后缀 B 表示这个数是二进制数(Binary);后缀 Q 表示这个数是八进制数(Octal),本来八进制数的英文单词的第一个字母应当是 O,因为字符 O 与数字 0 太容易混淆,所以常使用字符 Q 作为八进制数的后缀;后缀 H 表示这个数是十六进制数(Hexadecimal);而后缀 D 表示这个数是十进制数(Decimal)。十进制数在书写时后缀 D 可以省略,其他进制在书写时后缀一般不可省略。例如:有 4 个数分别为 375D、101B、76Q、A17H,从后缀字母就可以知道它们分别是十进制数、二进制数、八进制数和十六进制数。

程序员们更喜欢采用程序设计语言的记号来表示不同进制的数,这就是前缀表示法,例如:在 C 语言中,八进制常数以前缀 0 开始,十六进制常数以前缀 0x 开始。

  • 十进制

    特点:有 10 个基数:0、1、2、3、4、5、6、7、8、9
    写法: ( D )

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值