В MIPS такая пара инструкций включает специальную загрузку, называемую связанной загрузкой, — load linked, и специальное сохранение, называемое условным сохранением, — store conditional.
Также вам может показаться, что такая тема как http://zabor-spb.com/ никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт zabor-spb.com. Тема забор под ключ там представлена весьма широко. На том сайте можно узнать много интересного на тему забор под ключ. Что означает вообще тема забор под ключ, где найти забор под ключ - про это написано на сайте zabor-spb.com. Это очень важная для многих людей тема - забор под ключ. Спасибо сайту zabor-spb.com за информацию на тему забор под ключ.
Эти инструкции используются одна за другой: если содержимое места памяти, указанное в связанной загрузке, изменить до того, как будет произведено сохранение в то же место памяти, условное сохранение потерпит неудачу. Условное сохранение отличается тем, что оно сохраняет значение регистра в памяти и меняет значение этого регистра на единицу, если выполняется успешно, и на нуль, если терпит неудачу.
Поскольку связанная загрузка возвращает исходное значение и условное сохранение возвращает единицу только при успешном выполнении, следующая последовательность выполняет атомарный с местом памяти, указанном в содержимом регистра.
По завершении работы этой последовательности будет произведен атомарный содержимого Ss4 и места в памяти, указанного с помощью регистра Ssl.
При любом вмешательстве процессора и модификации значения в памяти между инструкция sc возвращает в значение 0, что заставляет последовательность предпринять повторную попытку.
Преимуществом механизма связанной загрузки - условного сохранения является возможность его использования для создания других примитивов, таких как атомарное сравнение и обмен или атомарное извлечение и увеличение на единицу, которые используются в некоторых моделях параллельного программирования. В этих примитивах между I) и sc используется большее количество инструкций.
В этом разделе рассматриваются четыре этапа превращения программы на языке С в программу, запускаемую на компьютере.
Ранее показана иерархия трансляции. Некоторые системы объединяют показанные в ней этапы, чтобы сократить время трансляции, но здесь показаны четыре последовательных этапа, через ко торые проходит программа. В данном разделе используется именно эта иерархия трансляции.
Ассемблер MIPS
Ассемблер MIPS также превращает инструкцию перехода «если меньше чем — bit — в две инструкции: sit и One, упоминавшиеся в упражнении раздела 2.10. Другие примеры включают инструкции bgt, bge и ble. Ассемблер также превращает условные переходы на слишком отдаленные адреса в инструкции условных и безусловных переходов. Как уже упоминалось, ассемблер MIPS позволяет 32-раэрядным константам загружаться в регист р, несмотря на 16-разрядное ограничение, налагаемое на инструкции, использующие непосредственные значения.
В целом инструкции обогащают набор инструкций языка ассемблера MIPS по сравнению с тем набором, для которого имеется аппаратная реализация. Единственной ценой этого обогащения является резервирование одного регистра. Sat. для использования ассемблером. Если вы собираетесь создавать программы на ассемблере, то для упрощения своих задач пользуйтесь псевдоинструкциями.
Но чтобы разобраться в MIPS-архитектуре и обеспечить наилучшую производительность, нужно изучить настоящие MIPS-инструкции
Ассемблеры принимают числа с разными основаниями. В дополнение к двоичным и десятичным они обычно принимают числа по основанию, позволяющему представить их в более сжатой форме, чем числа по основанию 2, и легко преобразовать их в двоичную комбинацию. Ассемблер MIPS использует шестнадцатеричные числа.
Опубликовал katy
June 26 2015 07:25:12 ·
0 Комментариев ·
2755 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.