Що таке набір інструкцій Thumb?

Набір інструкцій для великого пальця стосується набір інструкцій у комп’ютерному програмуванні, які мають довжину 16 біт і мають певні обмеження, такі як доступ лише до восьми нижніх регістрів і відсутність умовного виконання.

Кожна інструкція Thumb має довжину 16 біт і має відповідну 32-бітну інструкцію ARM, яка має такий самий вплив на модель процесора. Інструкції Thumb працюють зі стандартною конфігурацією регістра ARM, що забезпечує чудову взаємодію між станами ARM і Thumb.

Технологія Thumb-2 є основним вдосконаленням набору інструкцій Thumb. Він додає 32-розрядні інструкції, які можна вільно змішувати з 16-розрядними інструкціями в програмі. Технологія Thumb-2 доступна в ARMv6T2 і новіших архітектурах.

Однак обмеження набору інструкцій Thumb, порівняно з набором інструкцій ARM, часто може призвести до створення коду нижчої якості. Таким чином, незважаючи на те, що код Thumb може бути меншим за код ARM, він може працювати погано і, отже, не призвести до загальної економії енергії.

Набір інструкцій Thumb складається з 16-бітний інструкції, які діють як коротке скорочення підмножини 32-розрядних інструкцій стандарту ARM. Натомість кожна інструкція Thumb може бути виконана через еквівалентну 32-розрядну інструкцію ARM.

ВІДПОВІДЬ

  • Код Thumb здатний забезпечити до 65% розміру коду Arm і 160% продуктивності еквівалентного процесора Arm, підключеного до 16-розрядної системи пам'яті.
  • Для додатків із критичним розміром коду альтернативний 16-бітний режим Thumb зменшує код більш ніж на 30% із мінімальною втратою продуктивності.