CPE 357 Laboratory Exercise 3

$24.99 $18.99

Laboratory Exercises This laboratory exercise is to create an initial version of Assignment 3, Huffman encoding and decoding. For this lab, you are to create a program, htable that will generate the table of encodings appropriate for a given file. Usage: htable filename Your program must: Read the input file—given on the command line—and build…

5/5 – (2 votes)

You’ll get a: zip file solution

 

Categorys:

Description

5/5 – (2 votes)

Laboratory Exercises

This laboratory exercise is to create an initial version of Assignment 3, Huffman encoding and decoding. For this lab, you are to create a program, htable that will generate the table of encodings appropriate for a given file.

Usage:

htable filename

Your program must:

  • Read the input file—given on the command line—and build the Huffman code tree according to the rules given in Assignment 3; and

  • Write this encodings described by this code tree to standard out according the the following format:

Only bytes that are present in the file are included in the table.

Bytes are included in the table in numerical order.

Each line of the table consists of the byte as a two-digit hexadecimal number followed by a colon and a space, followed by the binary encoding represented by the characters ‘0’ and ‘1’.

Example: 0x61: 101

You may use any kind of IO you like for this, the restrictions for Assignment 3 do not apply.

What to turn in

For the Laboratory Exercise: Submit via handin in the CSL to the lab03 directory of the pn-cs357 account:

  • your source files.

  • A makefile (called Makefile) that will build your program when given the command make htable.

  • A README file that contains:

Your name(s). In addition to your names, please include your Cal Poly login names with it, in parentheses. E.g. (pnico)

Any special instructions for running your program.

Any other thing you want me to know while I am grading it.

The README file should be plain text, i.e, not a Word document, and should be named “README”, all capitals with no extension.

Sample Runs

I have placed a runable version of htable in the CSL in ~pn-cs357/demos as htable.

  • cat test aabbccddd

  • htable test 0x0a: 100 0x61: 101

0x62: 00

0x63: 01

0x64: 11

2

CPE 357 Laboratory Exercise 3
$24.99 $18.99