//
---------------------------------------------------------------------------- |
//
标题: 曼彻斯特和差分曼彻斯特编码的实现 |
//
分析:曼彻斯特编码是将每个码元的中央实现跳变,具体的码字表示为: |
//
1->10,0->01. |
//
差分曼彻斯特编码每个码元依前一码元而定,遇1跳变,遇0保持 |
//
若前为:01,则1->10 0->01 |
//
若前为:10,则1->01 0->10 |
//
实现:定义两个数组,一个用来放置输入要编码的序列,另一个用来放编码后的序列 |
//
|
//
|
//
----------------------------------------------------------------------------

/**/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
头文件
#include
<
stdio.h
>
#include
<
assert.h
>
#include
<
string
.h
>


/**/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
全局变量
#define
M 10
int
j;
//
指向编码后序列的数组下标
int
i;
//
输入码字的数组下标
int
length;
//
求值输入数组的长度

/**/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
参数表
int
Direct_code(
char
str0[])
//
直接编码

...
{
char dirct_code[2*M];
memset(dirct_code,0,2*M);
dirct_code[0]=

本文介绍了曼彻斯特和差分曼彻斯特编码的原理,并通过C程序进行了模拟实现。文章强调了编程时的注意事项,如代码清晰度、流程图设计、专注力和程序思路的重要性。此外,还讲解了ASSERT宏的使用,以增强代码的健壮性,以及memset函数在内存初始化中的应用。
最低0.47元/天 解锁文章
1250





