?Module 1: Input
–Reads data lines and stores them in
“core”.
–Storage format: 4 chars/machine word; array of pointers
to start of each line.
–
?Module 2: Circular Shift
–Called after Input is done.
–Reads line storage to produce new array of pairs:
(index of 1st char of each circular shift, index of original
line)
–
?Module 3: Alphabetize
–Called after Circular Shift.
–Reads the two arrays and produces new index.
?Module 4: Output
–Called after alphabetization and prints nicely
formatted output of shifts
–Reads arrays produced by Modules 1 & 3
–
?Module 5: Master Control
–Handles sequencing of the first 4 modules
–Handles errors