реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Настройки в ИАРЕ, Normal or position-independent code
promelectronshch...
сообщение Jan 14 2011, 14:42
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 8-11-10
Из: Украмна
Пользователь №: 60 714



Здравствуйте, вот читаю справку на ИАР, так в ней написано, что есть возможность выбора кода : Normal(стандартный) or position-independent(позиционно-независимый) code...
Но описание этой опции нету, может кто-то подскажет значение этой опции?


Также, в опциях можно задавать тип выходного файла: executable(исполнимый) или library...То есть, library выбираем, если хотим создать библиотечный файл, если так то каким образом это происходит...не совсем понятно, можно же создать библиотечный файл при настройке executable(исполнимый)...

Сообщение отредактировал promelectronshchic - Jan 14 2011, 14:43
Go to the top of the page
 
+Quote Post
rezident
сообщение Jan 14 2011, 15:40
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Различие в использовании адресации и переходов. Position-independed подразумевает относительную адресацию и переходы. Проблема может возникнуть там, где относительный переход ограничен особенностями архитектуры. Например, возможен относительный переход только +-127 слов. И если требуется более длинный переход, то компилятор вынужден генерить JMP уже на абсолютный адрес, а не RJMP относительно текущего. При этом весь смысл позиционно-независимого кода пропадает. Так что эту опцию нужно использовать разумно и осторожно.
Go to the top of the page
 
+Quote Post
promelectronshch...
сообщение Jan 18 2011, 14:52
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 8-11-10
Из: Украмна
Пользователь №: 60 714



Выходит лучше оставлять эту опцию Normal. Плюс Position-independed в том, что относительный переход занимает меньше тактов при выполнении команды rjmp-2 cycle, jmp -4(это у авр), быстродействие кода будет по высше)



Сообщение отредактировал promelectronshchic - Jan 18 2011, 14:53
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Jan 18 2011, 16:18
Сообщение #4


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(promelectronshchic @ Jan 18 2011, 17:52) *
Плюс Position-independed в том, что относительный переход занимает меньше тактов при выполнении команды rjmp-2 cycle, jmp -4(это у авр), быстродействие кода будет по высше)

Скорее в том, что можно этот код залить в любое место памяти и запустить оттуда. Код не привязан к адресам своего расположения.
Go to the top of the page
 
+Quote Post
promelectronshch...
сообщение Jan 19 2011, 07:23
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 8-11-10
Из: Украмна
Пользователь №: 60 714



Понятно, интересно...)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 00:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01368 секунд с 7
ELECTRONIX ©2004-2016