- Thumb
-
Thumb — режим процессоров ARM, в котором используется сокращенная система команд. Она состоит из 36 команд, взятых из стандартного набора 32-разрядных команд архитектуры ARM и преобразованных до 16-разрядных кодов.
Длина команд Thumb составляет половину длины стандартных 32-разрядных команд, что позволяет существенно сократить необходимые объёмы памяти программ (порядка 30 %) и, кроме того, позволяет использовать более дешёвую 16-разрядную память.
При выполнении эти команды дешифруются процессором в эквивалентные операции ARM, выполняемые за то же количество тактов. Переключение ARM <-> THUMB возможно командой BX либо переключением режима работы по прерыванию/исключению.
Набор команд THUMB неортогонален и малоэлегантен. Команды позволяют работать напрямую лишь с 8-ю младшими РОН; к 8-и старшим РОН (включая SP, LR, PC) применимы лишь несколько операций. В наборе недоступны следующие возможности ARM: умножение с накоплением/расширением, сопроцессорные операции, доступ к PSR и регистрам других контекстов, атомарный обмен SWAP. Недоступны условное исполнение, сдвиг 2-го операнда в командах общего назначения, трехадресные операции (кроме ADD и SUB), автоинкрементный и автодекрементный режимы адресации. Все команды обработки данных устанавливают коды условий. Команда BL вынужденно кодируется в два слова, причем смещение ограничено 23 битами. Доступ к стеку (мультирегистровые команды PUSH и POP) организован принудительно по 13-у регистру, стек растет вниз.
Это заготовка статьи о компьютерах. Вы можете помочь проекту, исправив и дополнив её.
Это примечание по возможности следует заменить более точным.См. также
- Jazelle
- Thumb-2
- Thumb-2EE
- NEON
- VFP
Для улучшения этой статьи желательно?: - Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждающие написанное.
Категории:- Технологии процессоров
- ARM
Wikimedia Foundation. 2010.