Это действительно не расширение знака.Напомним, что инструкции в MIPS выровнены по 4 байта.
Это означает, что вы можете запустить инструкцию по адресам, которые являются 0 модулем 4 (т. Е. 0, 4, 8, 12, ...)
Теперь, сдвиг влево от 2 двабиты подобны умножению на 4, что дает числа, которые всегда равны 0 модулю 4.
Фактический адрес будет сформирован из: - 4 старших разрядов nPC (то есть ПК + 4) (давайте вызовемних PPPP) - 26 битов поля адреса, указанного в инструкции, (давайте назовем их AAA .... AA) - 00 как два младших бита (что приводит к требуемому выравниванию инструкции)
Таким образомадрес будет (двоичный) PPPPAAAAAAAAAAAAAAAAAAAAAAAAAA00