Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

For this assignment, I need to fill in the blanks and replace the xx for this code to get a properly working program. import java.io.*;

For this assignment, I need to fill in the blanks and replace the "xx" for this code to get a properly working program.

import java.io.*; import java.util.*; // This program reads a text file, input.txt. // For each character, it produces a hexadecimal number which is the hamming // code for 8-bit characters using even parity. These hex numbers are written to hamming.txt public class _______ { private ____ letter; // The Ascii character with no parity bits private int[] bits = new int[xx]; private int code; // The integer value of the character with the parity bits added public Hamming(char let) { letter = let; encode(); } public Hamming(int c) { code = c; decode(); } public int getCode() { return code; } public char getLetter() { return letter; } private void encode() { int value = ______; // Set value bits for (int i = 0; i < 12; i++) { if (i != 0 && i != 1 && i != 3 && i != 7) { bits[i] = value % 2; value /= 2; } } // Set parity bits bits[0] = bits[2] ^ bits[4] ^ bits[6] ^ bits[8] ^ bits[10]; // ^ is XOR in Java bits[1] = bits[2] ^ bits[5] ^ bits[6] ^ bits[9] ^ bits[10]; bits[3] = bits[4] ^ bits[5] ^ bits[6] ^ bits[11]; bits[7] = bits[8] ^ bits[9] ^ bits[10] ^ bits[11]; // compute integer code code = 0; for (int i = 11; i >= 0; i--) { code *= 2; code += bits[i]; } } private void decode() { int error = 0; int value = code; // Set the bit array ___ (int i = 0; i < 12; i++) { bits[i] = value % 2; value /= 2; } // Check for transmission errors if (bits[0] != (bits[2] ^ bits[4] ^ bits[6] ^ bits[8] ^ bits[10])) error += 1; if (bits[1] != (bits[2] ^ bits[5] ^ bits[6] ^ bits[9] ^ bits[10])) error += 2; if (bits[3] != (bits[4] ^ bits[5] ^ bits[6] ^ bits[11])) error += 4; if (bits[7] != (bits[8] ^ bits[9] ^ bits[10] ^ bits[11])) error += 8; // Correct Error if (error != 0) bits[error - 1] ^= 1; // Extract character letter = 0; for (int i = 11; i >= 0; i--) { __ (i != 0 && i != 1 && i != 3 && i != 7) { letter *= 2; letter += bits[i]; } } // Display where error detected if (error != 0) System.out.println("Error in bit " + (_____ - 1) + " corrected in character " + letter); } public static void main(String[] args) throws FileNotFoundException { Scanner inFile = new Scanner( new File("hamming.txt")); PrintStream outFile = new PrintStream(new File("output.txt")); String line; int ____; System.out.println("File hamming.txt opened"); _____ (inFile.hasNextInt(16)) { code = inFile.nextInt(xx); // Decode the Hex code to get a character // Create a Hamming object Hamming ham = new Hamming(code); // Display the decoded character outFile.print(___.getLetter()); } inFile._____(); System.out.println("File output.txt closed"); } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Oracle Database Foundations Technology Fundamentals For IT Success

Authors: Bob Bryla

1st Edition

0782143725, 9780782143720

More Books

Students also viewed these Databases questions

Question

2. What kinds of communication help sustain long-distance romances?

Answered: 1 week ago

Question

Question Can a self-employed person adopt a money purchase plan?

Answered: 1 week ago