Не всегда задействованы адреса. Компилятор может поместить переменные в регистры, если он обнаружит, что их адрес никогда не берется программистом. Так что вам не понадобится доступ к основной памяти. Например, в приведенном выше коде то, что может сгенерировать компилятор, может быть простым, например
add $2, $0, 3
для помещения значения 3 в регистр 2. Как только вы создадите указатель и сделаете так, чтобы он указывал на эту переменную, тогда у вас фактически есть адрес. И тогда переменная уже не может быть в регистре.