由于课本上对HDB3码的编码方式讲解的不够详尽,在通过查阅多本参考书后,特对HDB3码的编码方式总结如下:

步骤:(以下步骤针对存在四连零0000的原码,没有四连零的原码编为AMI码即为HDB3码。)

①标记原码的第一个“1”码为+1(注:不再像大多数书上说的先写AMI码),如001000011写为00+1000011。

②检查四连零的情况,取代变换节,将四连零编为一组,用V替代0000的最后一个0,记为000V。

③检查相邻V中间非零码的个数,如果两个相邻V之间有奇数个非零码,则记为000V,若有偶数个非零码,则记为B00V。

④对“1”“B”加符号,首先将“1”和“B”看做整体,保证这个整体按正负交替规律变化。

⑤对“V”加符号,保证V与它的前一个非零码的符号相同(这也是最后B00V码段中B与V符号总是相同的原因)。

⑥整理,如有需要将B和V用1替换。写出HDB3码。

原理:

“V”码称为破坏码(Violate),它的加入破坏了原先正负交替的规律。“B”码称为平衡码(Balance),引入B是因为当相邻两V之间有偶数个非零码是“V”不满足正负极性交替的规律,加入B来平衡它。

举例:

原码:1  0  0  0  0  0  1  1  0  0  0  0  0  0  0  0  1  0  0  0  0  1  0  0

①: +1   0  0  0  0  0  1  1  0  0  0  0  0  0  0  0  1  0  0  0  0  1  0  0

②: +1   0  0  0  V  0  1  1  0  0  0  V  0  0  0  V  1  0  0  0  V  1  0  0(注:八连零情况中两V之间没有非零码,当偶数个处理。)

③: +1   0  0  0  V  0  1  1  B  0  0  V  B  0  0  V  1  0  0  0  V  1  0  0

④: +1   0  0  0  V  0 -1 +1 -B 0 0 V  +B 0  0  V  -1 0 0  0  V +1 0  0

⑤: +1   0  0  0 +V 0 -1 +1 -B 0 0 -V +B 0 0 +V -1 0 0  0 -V +1 0  0

⑥:如有需要,将B和V用1替换,B和V只是为了表明该非零码是由原码中的0变换来的。

HDB3码:快速上手步骤实例相关推荐

  1. TortoiseGit + GitHub 快速上手指南

    TortoiseGit + GitHub 快速上手指南 名词解释: 1. TortoiseGit 是 TortoiseSVN的Git版,它很好的实现了与windows资源管理器的融合,使用界面与Tor ...

  2. Vue入门指南-05 Vue实例的生命周期(快速上手vue)

    生命周期钩子 = 生命周期函数 = 生命周期事件 实例创建期间的生命周期函数 // 刚初始化了一个空的实例对象, 这时候只有默认的一些生命周期函数和默认事件, 其他都未创建. // 如果要调用 met ...

  3. 简单python脚本实例-30个Python 小例子,帮你快速上手Python

    可能很多人学编程有个误区,总想着从最基础的原理开始,看了一大堆书一堆视频还是不会,兴趣也早没了.而自己动手写代码是最好的开始方式,不管TM三七二十一,直接就是干,无论是看书还是看视频,确保身边有台电脑 ...

  4. STM32F4 CAN总线通信资料参考,提供源码参考快速上手CAN总线通信

    STM32F4 CAN总线通信资料参考,提供源码参考快速上手CAN总线通信,提供CAN1.CAN2通信这样便于在F4的一个板子学习 编号:489659239564198酱料的卡卡

  5. 小程序源码:仿各大APP种树微信小程序源码下载-简单快速上手

    这是一款仿各大APP的种树获取水果的一款微信小程序 可以对树浇水,杀虫,修剪等等 另外还有夺宝,更多小程序推荐 支持流量主模式等等 可以进行邀请好友加快树木的成长速度 小程序源码下载地址: 小程序源码 ...

  6. APP种树微信小程序源码下载-简单快速上手

    这是一款种树获取水果的一款微信小程序 可以对树浇水,杀虫,修剪等等 另外还有夺宝,更多小程序推荐 可以进行邀请好友加快树木的成长速度 下面是小编的演示图: 小程序源码下载地址:(已更新)APP种树微信 ...

  7. postgresql源码阅读快速上手

    前一篇(win10 源码编译安装postgresql数据库)介绍了windows下pg源码编译安装方法,那么装好之后从哪开始阅读学习pg源码?本文将介绍一种快速上手方法.    在进行源码编译时,务必 ...

  8. SpringBoot2.1.15(26) WebFlux快速上手——响应式Spring的道法术器

    SpringBoot2.1.15(26) WebFlux快速上手--响应式Spring的道法术器 Spring WebFlux Spring WebFlux是随Spring 5推出的响应式Web框架. ...

  9. 机器学习算法快速上手-python语言与numpy库

    1 Python快速上手 1.1.Python简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字 ...

  10. Excel+VBA+之快速上手

    第一章  VBA语言基础  第一节 标识符  一.定义  标识符是一种标识变量.常量.过程.函数.类等语言构成单位的符号,利用它可以完成对变量.常 量.过程.函数.类等的引用.   二.命名规则  1 ...

最新文章

  1. hp服务器维护开关,HP服务器开机无显维修案例
  2. 用子函数的方法求一维数组中所有元素之和
  3. 《×××颂》贵在突破了中国花鸟画难以反映社会主题的尴尬
  4. java8压缩,如何使用Java 8压缩多个列表?
  5. CCNA学习指南中文第七版-1
  6. 使用phpQuery抓取页面
  7. 计算机音乐谱大全极乐净土,极乐净土maria曲谱
  8. 阿里云上云迁移工具案例实践:腾讯云迁移到阿里云
  9. 神奇的λ-calculus
  10. pr控制C语言程序,PR控制(含代码)
  11. OpenCv图像处理之Mat类使用
  12. C++将两个字符串合并在一起
  13. 图片文字怎么转换成文本?分享几个好方法
  14. 写在2015的尾巴上
  15. 如何简单的运营企业群呼系统呼叫中心系统
  16. 微信公众平台Js API WeixinApi
  17. Android Java 网络 OS等笔试题 -- 全
  18. Web在jsp页面中生成柱状图,折线图,饼状图
  19. 【入门AUTOSAR网络管理测试】RSS-NOS状态转换
  20. H3C任意命令执行漏洞

热门文章

  1. Java Post/Get请求 工具类
  2. python一定要有主函数_python的主函数问题
  3. 如何在CAD中插入一个自定义对象?
  4. supergo定位软件_super go定位修改下载
  5. chrome浏览pdf 字体变了
  6. 大学生考华为认证有用吗?考研还是考证?这些困扰你许久的问题终于搞明白了
  7. 运维常用表格-干货分享
  8. jclasslib修改jar包中class文件 IDEA
  9. 软考中级哪一门比较好过?我建议你考这个。
  10. 分享一例BIOS损坏修复案例