roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 04:15

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: ARM: Сложение с переполнением
СообщениеДобавлено: 24 ноя 2015, 20:25 
Не в сети

Зарегистрирован: 30 дек 2014, 18:43
Сообщения: 3
Требуется сложить на ассемблере два регистра:
R2=0x5279B077
R3=0xBC8FAFCC
Результат должен быть: 0x0F096043

Но после сложения ADDS R3,R3,R2 в R3 упорно получаю 0x0E096044
Что-где не так, не пойму.
Есть подозрение, что что-то со знаковостью, но разве в АРМ контролируется знак числа?
Подскажите плиз...

Пробовал и в Thumb и в ARM режиме, пробовал складывать по словам (по 2 байта). Отключал прерывания с горя. Все равно результат неверный...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ARM: Сложение с переполнением
СообщениеДобавлено: 25 ноя 2015, 00:41 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Прям мистика какая-то.
Симулятор IAR все нормально выдал: 0x0F096043
Ваш результат не похож на арифметику со знаком.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ARM: Сложение с переполнением
СообщениеДобавлено: 25 ноя 2015, 02:03 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Российские программисты нашли баг в архитектуре ARM

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ARM: Сложение с переполнением
СообщениеДобавлено: 25 ноя 2015, 14:10 
Не в сети

Зарегистрирован: 30 дек 2014, 18:43
Сообщения: 3
Спасибо всем за помощь!
Ключевое слово было: little-endian !!!
В этом случае при загрузке из памяти командой LDR R3,[R2] выходило так:
// ОЗУ (R2=) BC 8F AF CC (R3=) 52 79 B0 77

R2=0xCCAF8FBC
R3=0x77B07952
Правильный результат: 0x4460090E !!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ARM: Сложение с переполнением
СообщениеДобавлено: 25 ноя 2015, 14:42 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Вот тебе свезло. На 2-х наборах зеркальных чисел получить сумму с практически одинаковыми наборами байт :shock:
Это не про тебя? В комнате 100 стульев, один с подпиленной ножкой, тебя запускают в комнату и ты садишься... :D


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO