波特率和比特率有什么区别?

86

我真的很难理解它们之间的区别。 有些人说它们是相同的,而其他人则说有一点差异。 到底有什么区别? 如果你能用一些类比来解释会更好。

14个回答

112

每秒比特数很简单,它的意思就是字面上的意思。如果我有1000比特并以1000 bps的速度发送它们,那么传输这些比特需要一秒钟。

波特率(Baud)是指每秒传输的符号数。如果这些符号——数据编码的不可分割元素——不是比特,则波特率将比比特率低,比特每符号的因数为降低。也就是说,如果每个符号有4个比特,则波特率将是比特率的¼。

这种混淆是由于早期模拟电话调制解调器不太复杂,所以bps等于波特率。也就是说,每个符号编码一个比特。后来,为了使调制解调器更快,通信工程师发明了越来越聪明的方法来发送更多的比特每个符号。

类比

系统1、比特:想象一下一个通信系统,它有一个望远镜在峡谷的近侧,远侧有个人举着左手或右手。把他的左手叫做“0”,右手叫做“1”,你就有了一种传输一个二进制数字——一个比特——的系统。

系统2、波特:现在想象一下,峡谷对面的人举着打牌而不是空手。他使用一组牌,每个花色的Ace到8号共32张牌。每张牌——每个符号——编码5个比特:00000到11111的二进制数。²

分析

系统2的人可以在相同的时间内通过每张牌传递5个比特的信息,而系统1的人只能通过揭示他的一只空手来传递一个比特。

你可以看到这个比喻似乎不成立:在牌组中找到一张特定的牌并展示它需要比决定展示左手还是右手更长时间。但是,这只是为了有机会有益地延伸这个比喻。

具有多比特符号的通信系统面临类似的困难,因为发送多比特符号所需的编码方案比每次只发送一个比特的方案复杂得多。那么,为了延续这个比喻,展示扑克牌的人可以有几个人在他身后共享查找牌组中下一张牌的工作,尽快将卡片递给他。帮助者相当于产生多比特/波特(baud)编码方案所需的更强大处理器。

也就是说,通过使用更多的处理能力,系统2可以比更原始的系统1发送数据快5倍。

历史小插曲

我们该怎么处理我们的五位代码?对于英语用户来说,使用32个可用的代码点中的26个来表示英文字母似乎是很自然的。我们可以使用剩余的6个代码点来表示空格字符和一些控制代码和符号。

或者,我们可以使用Baudot码,这是一种5位码,由Émile Baudot发明,单位“波特(baud)”就是以他的名字命名的。³


脚注和离题:

  1. 例如,V.34标准在每个8.4比特每个符号的3,429 baud模式下定义了28.8 kbit/sec吞吐量。

  2. 这个标准只涉及调制解调器的POTS端口。而RS-232端口仍然是一种每个符号1比特的系统,因此您也可以正确地称之为28.8k波特率调制解调器。虽然有点混淆,但在技术上是正确的。

    我在这里特意保持简单。你可能会想到一个问题,没有出现的卡片是否也传递了信息。如果是的话,那就意味着存在某种时钟或者锁存器信号,以便您可以通过两张卡之间的差距来判断不携带信息的卡片。

    此外,剩余的扑克牌,即9到K和Jokers应该怎么处理呢?一种想法是将它们用作传递元数据的特殊标识。例如,您需要一种方法来指示短尾块。如果您需要发送128比特的信息,则需要显示26张卡片。前25张卡牌传递5×25=125比特,第26张卡牌传递剩余的3比特。您需要一种方式来表示最后两个比特应该被忽略。

    这就是为什么早期的模拟电话调制解调器以波特率而不是比特率规定的原因:通信工程师从电报时代开始就一直使用这种术语。他们并没有试图混淆比特率和波特率;在他们看来,这些调制解调器正传输每个符号一个比特。


18

我不明白为什么大家把这个(答案)复杂化了。

我就把它留在这里。

比特率 vs 波特率

所以上述内容为:

  • 信号单位:4 位
  • 波特率[每秒信号单位]:1000 Bd (波特)
  • 比特率[波特率 * 信号单位]:4000 bps (每秒比特数)

比特率和波特率是数据通信中经常使用的两个术语。比特率只是每单位时间传输的比特数(即0和1)。而波特率则是传输这些比特所需的每单位时间内传输的信号单位的数量。


1
波特率是每秒发送的信号单位数。而比特率是每秒发送的比特数。对吗? - Rishabh Gupta
@RishabhGupta 我理解你为什么不确定。已更新 :)。但是,你是正确的!:) - basickarl
为了补充这个答案,建议阅读文章:http://www.tldp.org/HOWTO/Modem-HOWTO-23.html。 - user2188550

16

比特率:- 比特率是指每秒传输的比特数。例如,如果比特率为1000bps,则每秒传输1000个比特,即0或1。

波特率:- 它表示信号改变状态的次数。当信号是二进制时,波特率和比特率相同。


2
我喜欢你简明扼要的回答。当信号不是二进制时,波特率低于比特率。这并不意味着传输速度变慢。实际上,这意味着可以在相同的时间成本内传输更多的比特。 - smwikipedia
当您说信号是二进制时,这是否意味着该信号是数字信号,不同于模拟信号? - Potion

5

首先,我认为有必要了解一些内容:

它是在物理通道上传输的符号,而不是位。符号是传输数据位的物理信号,通过物理介质传输。符号可以是多个电压、频率或相位变化之一。符号由介质的物理特性决定。而位是一个逻辑概念。

如果你想传输数据位,必须通过发送符号来完成。波特率描述符号在媒介上变化的速度。即它描述了媒介上物理状态变化的速率。

如果我们只使用2个符号来传输二进制数据,这意味着一个符号表示0,另一个符号表示1,那么就会导致波特率=比特率。这就是早期的工作方式。

如果我们足够幸运地找到一种方法来将更多的比特编码成一个符号,我们就可以在相同的波特率下实现更高的比特率。这就是波特率<比特率的情况。这并不意味着传输速度变慢。实际上,它意味着传输效率/速度得到了提高。

通信双方必须就每个物理符号如何表示位数达成一致,这就是调制协议发挥作用的地方。但是,每个符号发送多个位数的能力并非免费。发射器和接收器将会因调制方法的不同而变得复杂,并且需要更多的处理能力。最后,我想做一个类比:假设我站在房子的屋顶上,你站在你的屋顶上。我们之间有一根绳子。我想通过绳子把一些苹果用篮子送给你。篮子是符号,苹果是数据位。如果篮子很小(符号的物理限制),我可能只能在一个篮子里放一个苹果。这时波特率/篮子速率=位速率/苹果速率。如果篮子很大,我可以在一个篮子里装更多的苹果。这时波特率<位速率。我可以用更少的篮子发送所有的苹果。但是,把更多的苹果放进篮子里比只放一个苹果需要更多的努力(处理能力)。如果篮子速率保持不变,我在一个篮子里放的苹果越多,所需时间就越少。

以下是一些相关的讨论:

如何确保存在多比特每符号编码方案?

比特率、波特率和数据速率这些术语有何区别?


5
根据比特率和波特率有什么区别?所述:

比特率

数据传输速度用每秒比特数(bits/s 或 bps)来表示。数据传输速率R是比特时间TB(图1)的函数:

R = 1/TB

速率也称为信道容量C。如果比特时间为10 ns,则数据传输速率等于:

R = 1/10 x 10–9 = 1亿比特/秒

通常表示为100 M比特/秒。

波特率

“波特”一词源于法国工程师Emile Baudot,他发明了5位电传打字机码。波特率指每秒钟发生的信号或符号变化次数。符号是指多种电压、频率或相位变化之一。

NRZ二进制有两个符号,一个代表0,另一个代表1,分别表示电压水平。在这种情况下,波特率或符号率与比特率相同。但是,在每个传输间隔中使用多个符号进行传输是可能的,其中每个符号代表多个比特。当使用超过两个符号时,必须使用调制技术传输数据。

当传输介质无法处理基带数据时,调制技术就会出现。当然,这对于无线也是如此。基带二进制信号无法直接传输,而是将数据调制到无线电载波上进行传输。一些电缆连接甚至使用调制来增加数据速率,这被称为“宽带传输”。

使用多个符号可以传输多个比特。例如,如果符号率为4800波特,并且每个符号表示两个比特,则总比特率为9600比特/秒。通常符号数是2的幂次方。如果N是每个符号的比特数,则所需符号数为S = 2 ^ N。因此,总比特率为:

R = 波特率xlog2S = 波特率x3.32log10S

如果波特率为4800,每个符号有两个比特,则符号数为2 ^ 2 = 4。比特率为:

R = 4800 x 3.32 log(4) = 4800 x 2 = 9600 比特/秒

如果每个符号只有一个比特,就像NRZ二进制信号一样,则比特率和波特率保持不变。


3
为什么曼彻斯特编码中比特率是波特率的一半? - Allan Ruin
很好的问题,你应该发布它...等等。 - KCE

4

比特率:每秒传输的位数(对于二进制信号,为0或1)。

波特率:每秒传输的符号数。

一个符号由'n'个位组成。

波特率 =(比特率)/n

因此,波特率始终小于或等于比特率。当信号为二进制时,它们相等。


3
波特率主要应用于电信和电子技术中,它表示每秒传输的符号或脉冲数,而比特率则表示每秒传输的位数。简单来说,主要区别在于一个符号可以包含多个位,例如n位,这使得波特率比特率小n倍。
假设我们需要表示串行通信信号,则使用8位作为一个符号来表示信息。如果符号速率为4800波特,那么转换成整体比特率为38400比特/秒。这对于需要多个位以实现调制以实现宽带传输的无线通信领域也是如此,而不仅仅是基线传输。
希望对您有所帮助。

关于您的第二段:并不完全正确。通常在串行电缆(例如RS232)中,符号代表一个比特。波特率意味着“每秒线路状态更改次数”。看这个链接:波特率 - Michal Gonda

2
每秒比特是指每秒传输的二进制数字的速率。这被称为比特每秒(bit/s)。但是,不要与每秒字节(bytes/s,Bps或B/s)混淆。
原始吞吐量通常以比特每秒为单位给出,但许多软件应用程序报告传输速率以字节每秒为单位。
因此,比特吞吐量的标准单位是比特每秒,通常缩写为bit/s、bps或b/s。
波特是信号在每秒钟内发生的变化或转换的测量单位。
例如,如果信号每秒从一个值变成零值(或反之亦然)一百次,那就是100波特的速率。
其中一种测量数据(通道吞吐量),另一种测量转换(称为信令速率)。
例如,现代调制解调器使用先进的调制技术,将多个比特的数据编码到每个转换中。
谢谢。

1
这个话题很令人困惑,因为当人们认为只有两个术语时,实际上使用了三个术语,即:
- "比特率":单位是每秒比特数 - "波特率":单位是每秒符号数 - "波特率":单位是每秒比特数
“波特率”实际上是一种营销术语而不是工程术语。“波特率”被调制解调器制造商用于类似于数字相机使用百万像素的方式。因此,“波特率”越高,调制解调器被认为越好。
工程单位“波特”已经是一个速率(每秒符号数),这使得它与“波特率”术语有所区别。然而,您可以从答案中看到,人们将这两个术语混淆在一起,例如baud/sec,这是错误的。
从工程角度来看,我建议人们在“RS-232”中使用术语“比特率”,并将术语“波特率”归入历史。对于调制方案,请使用术语“波特”,但避免在“RS-232”中使用它。
换句话说,“比特率”和“波特率”是同一件事,也就是指每秒钟有多少位通过电线传输。请注意,每秒传输的位数(bps)是低级别的线路速率,而不是信息数据速率,因为异步的“RS-232”具有起始位和停止位来框定8个数据位的信息,因此bps包括所有传输的位。

1
比特率是衡量单位时间内传输的比特数的度量单位。
波特率,也称为符号率,衡量单位时间内传输的符号数。每个符号通常由一定数量的比特组成,具体取决于符号被定义为什么(例如8位或9位数据)。波特率以每秒符号数来衡量。
举个例子,在串行信道上每隔一秒传输一个ASCII字符'R'。
二进制等价物是01010010。
因此,在这种情况下,波特率为1(每秒传输一个符号),比特率为8(每秒传输8个比特)。

你的例子是错误的,因为串行线路按定义一次发送一个位。每个符号多个位通常不是软件级编码的问题,而是硬件级调制方案的问题。这就是为什么比特与波特率之间的比值不需要被8整除,就像现代计算机中的大多数其他数据大小一样。 - Warren Young

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接