Викладене питання не зовсім відповідальний. Слово було визначено як 32 біта. Нам потрібно знати, чи система "адресована байтом" (ви можете отримати доступ до 8-бітового фрагменту даних) або "адресною для слова" (найменший доступний фрагмент - 32 біт) або навіть "адресована півсловом" ( найменший фрагмент даних, до якого ви можете отримати, - це 16-бітний.) Вам потрібно це знати, щоб знати, про що говорить вам біт найнижчого порядку.
Тоді ви працюєте знизу вгору. Припустимо, що система є байт адресною.
Тоді кожен блок кешу містить 8 слів * (4 байти / слово) = 32 = 2 5 байт, тому зміщення становить 5 біт.
Індекс для прямого відображення кешу є кількість блоків в кеші (12 біт в цьому випадку, оскільки 2 12 = 4096) .
Тоді тег - це всі біти, що залишилися, як ви вказали.
Оскільки кеш стає більш асоціативним, але залишається однакового розміру, менша кількість бітів індексу та більше бітів тегів.