Minimal Submitted Files
You are required, but not limited, to turn in the following source files:
Assignment8.java(More code need to be added)
ZipInfo.java(given by the instructor, it needs to be modified for this assignment)
Requirements to get full credits in Documentation
- The assignment number, your name, StudentID, Lecture number/time, and a class description need to be included at the top of each file/class.
- A description of each method is also needed.
- Some additional comments inside of methods(especially for the “main” method) to explain code that are hard to follow should be written.
You can look at the Java programs in the text book to see how com
In this assignment, you will design a generic memory block and use it to perform various tasks.
Part 1: Memory/cache design.
A physical cache block is made up of memory cells which are associated in rows and columns. Each row corresponds to a cache-line, which may contain any size of data. These lines are then stacked in column form. In general, each cache line consists of 3 major parts, the ID tag, the data, and the state (or status) of each line. The state bits will be ignored for this assignment (just use ID tag and data).
When a request comes in for a line, the cache lines are searched concurrently to determine if a line matches the requested ID tag. If the tag matches, then the bits in the data portion of the cache line are sent out of the system. (Note: this assignment is a scaled down version of a traditional fully-associative cache, not including any sense amplifiers and other support circuitry).
Your job is to design such a cache, with a compile-time vari
In many applications, the order of the data items in a list changes over time. Not only are new data items added and existing ones removed, but data items are repositioned within the list. The following operation is needed to move a data item to the beginning of an array. Do not use a vector for this assignment.
Precondition: the array is not empty.
Postcondition: This function removes the data item marked by a cursor from an array and reinserts the data item at the beginning of the array.
A cursor is some indicator for the element to be moved. It may be an index number or a search key. For example, the function could take in the index number 4 to move the fifth element of the array to the front. Alternatively, the function could take in the search string “Joe” and if found in the array, that “Joe” element would be moved to the front. You can select the strategy you prefer for the cursor.
- Create a class that has an arra