本人编写。
package Veteribi;
import java.util.ArrayList;
public class Veterbi {
public static void decoder(StringBuffer received) {
// 记录四种状态的路径
StringBuffer route1 = new StringBuffer("0000"); // x00
StringBuffer route2 = new StringBuffer("0011"); // x10
StringBuffer route3 = new StringBuffer("1110"); // x01
StringBuffer route4 = new StringBuffer("1101"); // x11
StringBuffer realway1 = new StringBuffer("00");
StringBuffer realway2 = new StringBuffer("01");
StringBuffer realway3 = new StringBuffer("10");
StringBuffer realway4 = new StringBuffer("11");
System.out.println("接收到的数据长度为: " + received.length());
System.out.println("接收到的数据为 : " + received);
int [] distance = {
0,0,0,0,0};; //记录4种状态的最小码距
int length = received.length();
distance[0] = 0;
distance[1] += (route1.charAt(0)^received.charAt(0) ) + (route1.charAt(1)^received.charAt(1))
+ (route1.charAt(2)^received.charAt(2)) +(route1.charAt(3)^received.charAt(3)) ;
distance[2] += (route2.charAt(0)^received.charAt(0) ) + (route2.charAt(1)^received.charAt(1))
+ (route2.charAt(2)^received.charAt(2)) +(route2.charAt(3)

这篇博客介绍了如何使用JAVA编程实现(2,1,2)卷积码的译码过程,详细阐述了关键算法和步骤。"
107240163,9868672,C语言基础:数据类型、变量与运算符,"['C语言基础', '编程入门', '数据类型', '控制结构']
卷积码译码器的JAVA实现&spm=1001.2101.3001.5002&articleId=88827530&d=1&t=3&u=b750d57fd59046b099632362e475ba4e)
396

被折叠的 条评论
为什么被折叠?



