Easyelectronics.ru

Электроника для всех
Текущее время: 22 авг 2019, 20:59

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



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 08 авг 2015, 22:40 
Старожил

Зарегистрирован: 07 фев 2011, 21:00
Сообщения: 492
Откуда: Ханты-Мансийск
а может ассемблерный сгенерированный код посмотреть?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 08 авг 2015, 23:18 
Старожил
Аватара пользователя

Зарегистрирован: 11 фев 2015, 18:08
Сообщения: 211
vt340 писал(а):
M0 понятно почему от m3/m4 отличается - у него только 16-битные thumb инструкции, он вообще arm предыдущей версии v6, а m3/m4 уже v7 - у них же в 4 раза больше инструкций за счёт добавления 32-битных thumb2.

thumb2 он же 16 и 16 и 32 битный..

С фпу все понятно, с М0 бог с ним... работы с флоатом раз-два и обчелся.
В общем познавательно вышло..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 09 авг 2015, 01:05 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 1405
У настоящих армов красивый рациональный набор 32-битных arm-инструкций и одновременно ещё и минималистичный набор 16-битных thumb-инструкций. А для контроллеров сначала вообще выкинули arm-инструкции и оставили только thumb, а потом надобавляли к thumb уродских, но эффективных 32-битных костылей и назвали это thumb2 )


Вложения:
cortex-instr.gif
cortex-instr.gif [ 207.9 Кб | Просмотров: 1558 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 09 авг 2015, 02:16 
Старожил
Аватара пользователя

Зарегистрирован: 11 фев 2015, 18:08
Сообщения: 211
ну табличку я знаю, кстати случаем мелкие не 16 битные и длинные - 32 бита?


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

Зарегистрирован: 10 апр 2013, 17:41
Сообщения: 300
Кейл бесплатный для м0, без оптимизации, со стартапом, микролиб, М0.

Код:
#include "math.h"
#include "stdint.h"

float x = 1.123, y= 6.54, z;

int main () {   
     z = (x*x+y*y);
}


Program Size: Code=616 RO-data=224 RW-data=16 ZI-data=1024

Show




Аналогичное, с оптимизацией левел-3
Program Size: Code=604 RO-data=224 RW-data=16 ZI-data=1024

_________________
Стиль: "G&P"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 09 авг 2015, 14:47 
Старожил

Зарегистрирован: 10 апр 2013, 17:41
Сообщения: 300
оптимизация левел-0
Код:
#include "math.h"
#include "stdint.h"

float x = 1.123, y= 6.54, z;


int main () {   
z = sqrtf(x*x+y*y);
}


Program Size: Code=768 RO-data=224 RW-data=20 ZI-data=1028

Show

_________________
Стиль: "G&P"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 09 авг 2015, 14:55 
Старожил

Зарегистрирован: 10 апр 2013, 17:41
Сообщения: 300
аналогично, м0, левел-0
Код:
#include "math.h"
#include "stdint.h"

double x, y, z;


int main () {
   
z = sqrt(x*x+y*y);

}


Program Size: Code=1352 RO-data=224 RW-data=32 ZI-data=1024


Код:
#include "math.h"
#include "stdint.h"

int16_t x, y, z;


int main () {
   
z = sqrt(x*x+y*y);

}


Program Size: Code=852 RO-data=224 RW-data=16 ZI-data=1024

подключает dsqrt.o

Show

_________________
Стиль: "G&P"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Размер операции
СообщениеДобавлено: 09 авг 2015, 15:17 
Старожил

Зарегистрирован: 10 апр 2013, 17:41
Сообщения: 300
Код:
#include "math.h"
#include "stdint.h"

int16_t x, y, z;

int main () {   

z = sinf( atanf( x/sqrtf(x*x+y*y) ) );

}


Program Size: Code=2340 RO-data=256 RW-data=16 ZI-data=1024

Show

_________________
Стиль: "G&P"


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу Пред.  1, 2

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


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

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


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB