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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> IAR: вопрос типа "глазам не верю"
ReAl
сообщение Jan 20 2012, 09:59
Сообщение #31


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(ARV @ Jan 20 2012, 11:29) *
а доверять такой проверке можно ВСЕГДА? то есть там механизм строко по стандарту делает просчет?
«Я не знаю, но эти двое его шефом называют» © анек про цены на трёх попугаев.
1) На программистских форумах часто встречал ссылки на codepad. Их таких много http://en.wikipedia.org/wiki/Comparison_of_pastebins. В данном случае у меня кроме gcc, головы и интернета рядом ничего нет, поэтому для увеличения явки на голосование ещё и туда послал.

Цитата(ARV @ Jan 20 2012, 11:29) *
что стандарт говорит по поводу порядка вычисления выражения? имеем выражение вида A # B # C # D, где A,B,C и D - любые допустимые выражения, а # - любые допустимые операции/операторы с одинаковым приоритетом. что стандарт говорит по поводу порядка вычисления A,B,C и D? или даже чуть иначе: в выражении
Код
(A # B) == (C # D)
определена очередность выражения слева и справа, а так же что будет "первее" вычислено: A или B (С или D) ?
Сами вычисления подвыражений A, B, C, D — в произвольном порядке.
Вычисления операндов оператора == — в произвольном порядке (порядок вычисления операндов определён только для && и || да и то только в С и для неперегруженных в С++, перегруженные — это функции, а порядок вычисления аргументов функций неопределён).

Для цепочек операторов в выражениях — порядок слева направо или, редко, справа налево (например, A = B = C = D;).
Но там, где мне лично порядок важен, я ставлю скобки.

p.s. иду работать, а то так весь день уйдёт.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 20 2012, 10:06
Сообщение #32


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
я не использую IAR по религиозным принципам


Тогда, позвольте спросить - зачем открыли тему? Думали холиварчик локальный разжечь - "проприентарщина говно, опенсорс рулит"? Так это не на этот форум, пожалуйста.

QUOTE
Ага, особенно показалось, что МП3 декодер, скомпилированный этими компиляторами, отличается по скорости на 15%.


Версия компилятора, что за декодер и так далее. Классический прокол - в декодере всякая низкоуровневая математика запилена с использованием inline-ассемблера GCC, а для других компиляторов - просто сишный код, не самый оптимальный.

Ну да ладно, тут это оффтоп крепкий.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
ARV
сообщение Jan 20 2012, 10:06
Сообщение #33


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(ReAl @ Jan 20 2012, 13:59) *
p.s. иду работать, а то так весь день уйдёт.
преогромное Вам спасибо!

bb-offtopic.gif неужели нет какой-то организации, которая официально переводит международные стандарты? хочется, наконец, самому все прочесть, но уровень владения языком позволит сделать это лишь к пенсии, а доверять переводу google-translator просто страшно...




--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
_Ivana
сообщение Jan 20 2012, 10:06
Сообщение #34


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



ReAl, спасибо за наводку, попозже внимательно проштудирую стандарт самостоятельно (сейчас тоже работаю у заказчиков, неудобно) sm.gif У меня ещё всего ~25 сообщений только, я не успел вам ни разу сказать что вы не к месту хвастаетесь знаниями sm.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 20 2012, 10:09
Сообщение #35


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
я надеялся, что Си в любом компиляторе одинаков


Си одинаков, а вот оптимизатор может и ошибаться. Он-то пилен под каждый таргет свой.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
ARV
сообщение Jan 20 2012, 10:10
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(Rst7 @ Jan 20 2012, 14:06) *
Тогда, позвольте спросить - зачем открыли тему?
извольте, я отвечу: я стараюсь постоянно учиться. и вот в один момент я вижу, как кое-кто приводит пример со ссылкой на IAR, причем пример этот переворачивает с ног на голову все то, чему я уже научился. и что прикажете делать? вот я и начал тему, по-моему, ее название говорит само за себя, и раздел форума соответствующий. по слухам-то IAR очень хороший продукт, а тут - такое...


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 20 2012, 10:13
Сообщение #37


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
а тут - такое...


Какое - такое? Сами Вы проверить информацию отказались по религиозным соображениям.

QUOTE
вот я и начал тему, по-моему, ее название говорит само за себя


Вот именно. Очень толстый вброс detected.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jan 20 2012, 10:17
Сообщение #38


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(Rst7 @ Jan 20 2012, 14:06) *
Версия компилятора, что за декодер и так далее. Классический прокол - в декодере всякая низкоуровневая математика запилена с использованием inline-ассемблера GCC, а для других компиляторов - просто сишный код, не самый оптимальный.

Компилер 6.30.4, декодер от RealNetworks, почти всё там на си, код не сильно оптимальный, согласен, но этот же код RealView умеет готовить лучше sm.gif
Я приводил результаты компиляции здесь, если Вам интересно.
В частности, там во втором посте приведён пример компиляции ИАРом простого цикла, на котором он просто "потерялся" и навернул нечто несуразное... sad.gif

Сорри за офтоп.
Go to the top of the page
 
+Quote Post
ARV
сообщение Jan 20 2012, 10:19
Сообщение #39


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



Цитата(Rst7 @ Jan 20 2012, 14:13) *
Какое - такое? Сами Вы проверить информацию отказались по религиозным соображениям.
Вот именно. Очень толстый вброс detected.
сам я проверил в WinAVR и получил прогнозируемый результат (не тот, о котором говорили на стороне те, кто проверял в IAR-е).а что касается вброса - то лично я, пока не стал вам отвечать, не развивал холивар и не поддерживал его. так что вбросом становится не бросок камня в воду, а круги, им порождаемые. все, что меня интересовало - я уже получил, спасибо тем, кто помог, я уже сказал.




--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jan 20 2012, 16:28
Сообщение #40


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(ARV @ Jan 20 2012, 11:59) *
но точно помню, что в нем сказано буквально следующее: при вычислении выражений переменные типа char и unsigned char всегда неявно преобразуются к типу int и unsigned int соответственно


Хотел бы уточнить/проинформировать уважаемое собрание. Процитированное поведение было предложено K&R в первом варианте языка (который так и называется). В последующих редакциях, в том числе и перешедьшей в ANSI стандарт, и signed char и unsigned char (каждый своим способом) преобразуются к int перед выполнением остальных действий по integer promotion.

Сообщение отредактировал Genadi Zawidowski - Jan 21 2012, 00:08
Go to the top of the page
 
+Quote Post
zombi
сообщение Jan 20 2012, 23:03
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



off biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Хотите чтоб всё работало правильно пишите на асме!!!!! disco.gif
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Jan 21 2012, 01:24
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(zombi @ Jan 21 2012, 01:03) *
off biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Хотите чтоб всё работало правильно пишите на асме!!!!! disco.gif


Изыди сатана!
Асм - зло!
Отладчики суть диавольское искушение!
Хекс - грех!
Истинны только "0" и "1"!
Программировать тумблерами в двоичном коде!
Так обретёте рай и спасение!
Go to the top of the page
 
+Quote Post
zombi
сообщение Jan 21 2012, 07:05
Сообщение #43


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(_Артём_ @ Jan 21 2012, 05:24) *
...
Программировать тумблерами в двоичном коде!
...

biggrin.gif Это уже перебор! хотя и такое было biggrin.gif

Я просто хочу сказать что при сложении двух байтов в случае переполнения выставляется бит Carry и это единственный СТАНДАРТ которому приходится доверять!!!
Анализировать этот бит или нет или не допустить его возникновения личное дело программиста.
Go to the top of the page
 
+Quote Post

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

 


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


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