Реальное оборудование: инструкции ARM
ARM является наиболее популярной архитектурой набора инструкций для встроенных устройств и используется на более чем трех миллиардах производимых за каждый год устройств. Изначально предназначенная для системы Acorn RISC Machine, название которой позднее изменилось на Advanced RISC Machine, архитектура ARM появилась в том же году, что и архитектура MIPS, и следовала схожим принципам. Все совпадения перечислены в табл. 2.11.
Также вам может показаться, что такая тема как http://deaction.com/ никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт deaction.com. Тема создание сайта там представлена весьма широко. На том сайте можно узнать много интересного на тему создание сайта. Что означает вообще тема создание сайта, где найти создание сайта - про это написано на сайте deaction.com. Это очень важная для многих людей тема - создание сайта. Спасибо сайту deaction.com за информацию на тему создание сайта.
Принципиальное отличие заключалось в том, что у MIPS было больше регистров, а у ARM — больше режимов адресации.
Как показано и табл. 2.12, для MIPS и для ARM использовались похожие основные наборы арифметическо-логических инструкций и инструкций переноса данных.
Режимы адресации
показаны режимы адресации данных, поддерживаемые в ARM. В отличие от MIPS ARM не выделяет регистр для содержания нулевого значения. В MIPS имеется всего три простых режима адресации данных, а вот у ARM имеется девять режимов, которые включают довольно сложные вычисления. Например, в ARM имеется режим адресации, который для формирования адреса может сдвигать значение одного регистра на любое количество позиций, добавлять его к значениям других регистров, а затем обновлять значение одного из регистров, присваивая ему значение полученного нового адреса.
Сравнение и условный переход
В MIPS для вычисления условий переходов используется содержимое регистров. В ARM используются традиционные четыре разряда кода условия, сохраняемые в слове состояния программы: отрицательный, нулевой, переноса и переполнения negative, гею, carry и overflow. Они могут устанавливаться при выполнении любой арифметической или логической инструкции; в отличие от более ранних архитектур эта установка для каждой инструкции является выборочной. Явный выбор создает меньше проблем при конвейерной реализации. В ARM используются условные переходы для проверки кодов условий, чтобы определить все знаковые и беззнаковые соответствия.
Инструкция сравнения вычитает один операнд из другого, а по разнице устанавливает коды условия. Инструкция отрицательного сравнения — compare negative — прибавляет один операнд к другому, а по сумме устанавливает коды условий. Инструкция TST выполняет логическое И двух операндов для установки всех кодов условий, кроме переполнения overflow, а инструкция ГЕО использует исключающее ИЛИ для установки значений первых трех кодов условий.
Одно из необычных свойств ARM заключается в том, что каждая инструкция имеет настройку на условное выполнение в зависимости от кодов условий. Каждая инструкция начинается с четырехразрядного поля, определяющего, будет ли она работать как холостая инструкция - no operation instruction — или как настоящая инструкция, в зависимости от кодов условий. Следовательно, по сути условные переходы рассматриваются как условное выполнение инструкции безусловного перехода. Условное выполнение позволяет избежать перехода путем обхода его инструкции.
На простое условное выполнение одной инструкции требуется меньше времени и пространства для кода.
Опубликовал katy
June 26 2015 07:47:51 ·
0 Комментариев ·
2775 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.