Вопросы по теме 'thumb'

Сравнение производительности ARM и Thumb на iPhone 3GS, код без плавающей запятой
Мне было интересно, есть ли у кого-нибудь точные цифры производительности кода ARM и Thumb на iPhone 3GS. Специально для кода без плавающей запятой (VFP или NEON) — мне известно о проблемах с производительностью с плавающей запятой в режиме Thumb....
8356 просмотров
schedule 12.06.2022

Как я могу проверить, скомпилирована ли сторонняя статическая библиотека для iPhone SDK для Thumb?
Я работаю с платформой разработки (monotouch), которая не позволяет мне связывать сторонние библиотеки, скомпилированные для Thumb, из-за ошибки в компоновщике Apple. Как я могу определить, была ли библиотека скомпилирована для большого пальца или...
453 просмотров
schedule 22.06.2022

Взаимодействие ARM-C
Я пробую простую программу для взаимодействия ARM-C. Вот код: #include<stdio.h> #include<stdlib.h> int Double(int a); extern int Start(void); int main(){ int result=0; printf("in C main\n"); result=Start();...
2593 просмотров
schedule 02.08.2022

Разборка одних и тех же бинарных файлов с разными инструкциями
Я использую микроконтроллер at91sam4e16e в своем приложении и примере загрузчика из ASF(xdk-1.15.0) для загрузчика с именем starter_kit_bootloader_demo. Теперь я настроил проект для sam4e-ek. Я пытаюсь обновить двоичный файл с помощью этого...
101 просмотров
schedule 22.12.2022

GCC ARM Cortex-M3/M4: инструкция SVC переводит ЦП из состояния Thumb в состояние ARM из-за неправильного значения в таблице векторов
Я портирую ядро ​​реального времени TNeoKernel на процессоры Cortex-Mx, оно работает при компиляции с ARMCC, но не работает при компиляции с GCC: сразу после вызова инструкции SVC PC обновляется до SVC_Handler , а при следующей (любой)...
815 просмотров
schedule 01.02.2023

Регистр во время компиляции проверяет наличие кода Thumb-2
В коде Thumb-2 невозможно использовать регистры 8-15 в большинстве инструкций, в то время как в коде ARM это возможно. Следовательно, следующая сборка выдает ошибку Illegal Instruction во время выполнения: .syntax unified .fpu...
180 просмотров
schedule 14.06.2022

Функция ARM THUMB2 для сравнения с рядом значений
Я новичок в ARM и хочу сравнить значение в регистре с набором известных шестнадцатеричных значений. На данный момент я делаю это, используя отдельные инструкции CMP, поэтому код выглядит так: ;stuff CMP r2, #0x41 CMP r2, #0x45 CMP r2, #0x49...
542 просмотров
schedule 01.10.2022

Компилятор IAR 7.40 создает неверную сборку
У меня есть встроенный ассемблерный код для arm cortex-R5. #include <stdio.h> #define mtcpsr(v) __asm volatile(\ "msr cpsr,%0\n"\ : : "r" (v)\ ) int mfcpsr (void) { int rval; asm("mrs %0,...
245 просмотров
schedule 12.08.2022

Значение контрольной суммы LPC4088 для большого пальца?
В руководстве пользователя LPC4088 (стр. 876) мы можем прочитал, что микроконтроллер LPC4088 имеет действительно необычную процедуру запуска: Это выглядит как полная ерунда, и мне нужен кто-то, кто поможет мне разобраться... В мире ARM я...
122 просмотров
schedule 30.04.2023

Простой пример байта ветви таблицы (TBB) в большом пальце руки
Я пытаюсь выяснить детали того, как TBB работает в сборке руки. Я просто пытаюсь понять простой пример, но независимо от того, что мой код переходит в бесконечный цикл или не компилируется. .syntax unified .thumb...
827 просмотров
schedule 25.06.2023

Сколько векторов исключений нужно заливать в прошивку?
Я играю с ARM, используя плату STM32F103C8T6 Blue Pill. Согласно его Руководство по программированию (раздел 2.3.4 Таблица векторов), всего должно быть 83 вектора исключений. набор. Однако это руководство заполняет только первые 6 и этот...
99 просмотров
schedule 02.06.2022

Поведение регистра ПК ARM Thumb-2
Thumb-2 имеет размеры инструкций 32 и 16 бит, которые выровнены по 2 байтам. Более того, когда инструкция выполняется, регистр ПК имеет значение двух инструкций перед ней. То есть, когда вы вводите: 0x1 - MOV R1, [PC #xx] Значение ПК не...
45 просмотров
schedule 06.01.2023

Почему в сгенерированной сборке для обработчика прерываний Cortex-M есть мертвая петля?
Я изучаю Cortex-M с помощью MDK uVision IDE. Я написал простой SysTick_Handler() , чтобы заменить WEAK по умолчанию SysTick_Handler() , который представляет собой простой мертвый цикл. My SysTick_Handler() : Разборка: Меня...
79 просмотров