Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. Explique las salidas del programa (alpha, tag, sequence). Verifique el nivel de
compresión del archivo de entrada. Para lograr esto tal vez deba hacer
globales algunas variables locales
alpha – diccionario de los símbolos
tag – símbolos codificados en bits según el algoritmo de Huffman adaptable
seq – bits de tags decodificados en caracteres ASCII
No fue necesario hacer ninguna variable global ya que la función se corrió desde el
mismo archivo, y esta fue modificada para que diera las salidas alpha, tag, y seq.
function huffadapt()
fid=fopen('4LETTERS.WOR','r'); %Abre el fichero 4LETTERS.WOR
seq=fread(fid,'*char'); %lee el fichero 4LETTERS.WOR y lo guarda
tipo arreglo de characteres dentro de seq
fclose(fid); %cierra el fichero 4LETTERS.WOR
seq=reshape(seq,1,length(seq));
[alpha prob]=probmodel(seq); % calcula probablidad de cada
simbolo asi como su diccionario
btag=huffadaptencod(alpha,seq); %codifica seq según Huffman y
guarda los bits en btag
disp(strcat('Tag =',btag)); %Muestra btag en pantalla
seq=huffadaptdecod(alpha,btag); %decodifica btag
disp(strcat('Sequence =',seq)); %Muestra btag decodificado
6. Utilice el nombre del arreglo en el lugar del parámetro stream para mandar a
llamar a la función huffstream = adaptivehuffman(stream, type) en donde type
se sustituye por ‘enc’ o ‘dec’ según se desee codificar o decodificar.
huffstream_enco = adaptivehuffman(intArray,'enc');
huffstream_deco = adaptivehuffman(huffstream_enco,'dec');