Я хочу понять, какое количество обращений к памяти требуется для передачи данных такой инструкции, как: xor (% eax),% eax
, если мы находимся в страничной системе с одной таблицей страниц, без tlb кэша и с ошибками нулевой страницы.
Я думаю, что мы должны go сначала в таблице страниц, а затем во фрейме, чтобы перевести адрес, который находится в eax, а затем выполнить xor. Так что я думаю, что есть 2 доступа к памяти, но я хочу быть уверен.
Я должен также посчитать выборку из памяти инструкции?
А если у меня есть две таблицы страниц уровня (каталог страниц и таблица страниц) и инструкция типа
add $10, 16(%eax)
мне нужно go по адресу в eax по смещению 16, сумме 10 и сохранить это значение в той же ячейке памяти? Поэтому мне нужно сделать один доступ к каталогу страниц, один к странице таблицы и один к фрейму, чтобы перевести адрес?
Так что, если у меня есть такая инструкция:
mov 4(%eax),(%ebx)
У меня есть сделать 6 доступ к памяти, потому что один на страницу каталога, один на страницу таблицы и один на фрейм для двух адресов в eax и ebx?