There is a 64 KB 1-word cache, and a word is 32 bits. From that I can derive that the length of the tag field is 16 bits, the length of index field is 14 bits, and, as my professor taught me, there is always 2 bits left behind for a byte offset.
Why the offset field is 2 bits, other than it fills in the remaining 2 bits of the word, and what its contents is was never covered in the course.
But when I looked around on Google, I read, and correct me if I am wrong, that the length of the offset field can vary. Although I have found answers on how to determine the length, I could not find anything about determining its contents when a read hit/miss is performed. My professor merely said "the byte offset is not used to select the word in the cache".
Just looking for clarification.