- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我真的很难理解其中的区别。有人说它们是一样的,而另一些人则说它们略有不同。究竟有什么区别?如果你用一些类比来解释,我会喜欢它。
最佳答案
每秒位数很简单。这正是它听起来的样子。如果我有 1000 位并且以 1000 bps 的速度发送它们,则传输它们将需要一秒钟。
Baud是每秒符号数。如果这些符号——数据编码的不可分割元素——不是位,波特率将比比特率低每个符号的比特数。也就是说,如果每个符号有 4 位,则波特率将是比特率的 1/4。
这种困惑的产生是因为早期 analog telephone modems不是很复杂,所以 bps 等于波特。也就是说,每个符号编码一位。后来,为了使调制解调器速度更快,通信工程师发明了越来越聪明的方法来为每个符号发送更多位。¹
类比
系统 1,位:想象一个通信系统,在山谷的近侧有一个望远镜,远侧有一个人举起一只手或另一只手。称他的左手为“0”,右手为“1”,你就有了一个用于通信一个二进制数字的系统——一个 bit ——一次。
系统 2,波特率:现在想象一下山谷另一边的那个人拿着扑克牌而不是他的空手。他使用的是卡片的一个子集,每套花色从 A 到 8,总共 32 张卡片。每张卡片——每个符号——编码 5 位:二进制的 00000 到 11111。²
分析
系统 2 的人可以在每张卡片上传达 5 位信息,而系统 1 的人通过露出他的一只手来传达一位信息。
你会看到这个类比似乎被打破了:在一副牌中找到一张特定的牌并展示它比简单地决定展示你的左手或右手需要更长的时间。但是,这只是提供了一个有利可图地扩展类比的机会。
每个符号有很多位的通信系统面临类似的困难,因为每个符号发送多个位所需的编码方案比一次只发送一个位的编码方案复杂得多。再扩大一个类比,然后,展示扑克牌的人可以有几个人在他身后分担在甲板中寻找下一张牌的工作,并尽可能快地将牌交给他。辅助程序类似于生成多位每波特编码方案所需的更强大的处理器。
也就是说,通过使用更多的处理能力,系统 2 可以比更原始的系统 1 快 5 倍的速度发送数据。
历史小插曲
我们应该如何处理我们的 5 位代码?对于说英语的人来说,使用 32 个可用的 26 个似乎很自然 code points对于英文字母。我们可以将剩余的 6 个代码点用于空格字符和一小组控制代码和符号。
或者,我们可以直接使用 Baudot code ,由 Émile Baudot 发明的 5 位代码,在他之后创造了单位“波特”。³
脚注和题外话:
关于microcontroller - 波特率和比特率有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20534417/
在 setup() 中,我有 Serial.begin(9600),但是当我让串行监视器打印任何内容时,没有显示任何文本。我曾尝试移动 print() 函数的位置(包括直接在 Serial.begin
我正在使用以下代码片段每秒通过 com 端口发送一次 gps 数据: serialPort = new SerialPort("COM4", 4800, Parity.None, 8, StopBit
我们有一个电机 Controller ,它实现了USB->虚拟COM端口,其波特率固定为921600(手册甚至指出波特率无法更改)。我发现如果我使用像 Terminal 这样的终端程序,我可以通过自定
我一直在寻找 Beaglebone Black (BB) 支持的 UART 波特率。我在 BB 系统引用手册或 sitara 处理器本身的数据表中找不到它。我正在使用 pyserial 和 Adafr
我正在尝试编写一个使用 IrDA 与 Uwatec 潜水电脑通信的工具……在 Mac 上。我正在使用的 USB IrDA 设备提供了一个串行设备(/dev/cu.IrDA-IrCOMM0 和 /dev
我是一名优秀的程序员,十分优秀!