Embedded OS

Mar 08, 2005 Last reply: 21 years ago 1304 Replies
ðÒÉ×ÅÔ Kirill! ÷Ôp íÁp 22 2005 08:58, Kirill Frolov -> Anton Abrosimov:

AA>> õ ÔÅÂÑ ÅÓÔØ ÏÓÎÏ×ÁÎÉÑ ÓÞÉÔÁÔØ Ô×ÏÊ ÐÁÓËÁÌØ ÂÏÌÅÅ ÐÁÓËÁÌÅÍ, ÞÅÍ AA>> ÍÏÊ? ðÏ ÍÎÅ, ÔÁË Õ ÔÅÂÑ ÐpÏÓÔÏ ÕÂÏÇÉÊ ÐÁÓËÁÌØ, ÍÎÅ ÏÎ ÎÅ AA>> ÐÏÎpÁ×ÉÔÓÑ. :) KF> õ ÔÅÂÑ ×ÏÏÂÝÅ ÎÅ ÐÁÓËÁÌØ. õ ÔÅÂÑ ÉÌÉ "ôÕÒÂÏ ÐÁÓËÁÌØ" (ÐÏ ÁÎÁÌÏÇÉÉ KF> Ó ÔÕÒÂÏ-ÂÅÊÓÉËÏÍ) ÉÌÉ Delphi (Visual basic). ïÂÝÅÇÏ Ó ÐÁÓËÁÌÅÍ -- KF> × ÏÓÎÏ×ÎÏÍ ÔÏÌØËÏ ÎÁÚ×ÁÎÉÅ... ñÚÙË ÐÁÓËÁÌØ ÏÐÒÅÄÅÌÑÅÔÓÑ ÎÅ ÓËÁÖÕ KF> ÓÅÊÞÁÓ ËÁËÉÍ ISO, É ÎÉËÁËÉÈ ÏÐÉÓÙ×ÁÅÍÙÈ ÔÕÔ ×ÏÚÍÏÖÎÏÓÔÅÊ ÔÁÍ ÎÅÔ. á ÅÓÌÉ ÅÓÔØ? ëÔÏ ÅÇÏ ×ÉÄÅÌ-ÔÏ, ÜÔÏ ISO? :)

KF>>> Á ÔÏÔ ÔÕÔ GS ÍÕÞÁÅÔÓÑ, ÎÅ ÚÎÁÅÔ ËÁË ÄÌÑ AVR ÍÏÖÎÏ ÎÁ ÐÁÓËÁÌÅ KF>>> ÐÉÓÁÔØ. íÏÖÎÏ ÄÌÑ ÎÅÇÏ ÎÁÐÉÓÁÔØ Ó×ÏÊ ÁÎÁÌÏÇ write? AA>> ÷ ÍÏÅÍ ÐÁÓËÁÌÅ ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÔËpÙÔÙÅ ÍÁÓÓÉ×Ù (TVarRec): AA>> procedure Write(Format: string; Vars: array of const); KF> á ÎÉÞÅÇÏ, ÞÔÏ ÜÔÉ const ×ÓÅ ÒÁÚÎÏÇÏ ÒÁÚÍÅÒÁ, Á ÓÔÅË × ÐÁÓËÁÌÅ KF> ÕÓÔÒÏÅÎ "ÚÁÄÏÍ ÎÁÐÅңÄ" ÐÏ ÏÔÎÏÛÅÎÉÀ Ë ÓÉÛÎÏÍÕ? ÷ÅÄØ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ KF> ÍÏÖÎÏ ÂÙÌÏ ÄÏÓÔÁÔØ ÆÏÒÍÁÔ, ÅÇÏ ÎÕÖÎÏ ÚÁÐÉÓÙ×ÁÔØ ÐÏÓÌÅÄÎÉÍ ÁÒÇÕÍÅÎÔÏÍ KF> × ×ÙÚÏ×Å ÆÕÎËÃÉÉ. HÅ ÎÕÖÎÏ. üÔÏ Ö ÐÁÓËÁÌØ (ÈÏÔØ ÔÙ Ó ÜÔÉÍ É ÎÅ ÓÏÇÌÁÓÅÎ), ÏÎ ÄÏÌÖÅÎ ÂÙÔØ ÚÁÝÉÝÅÎ ÏÔ ÇÌÕÐÙÈ ÏÛÉÂÏË ÔÉÐÁ ÎÅÓÏ×ÐÁÄÅÎÉÑ ËÏÌÉÞÅÓÔ×Á ÏÂßÑ×ÌÅÎÙÈ É ÐÅpÅÄÁÎÎÙÈ ÐÅpÅÍÅÎÎÙÈ. ðÏÜÔÏÍÕ ×ÍÅÓÔÅ Ó ÍÁÓÓÉ×ÏÍ ÐÅpÅÄÁÅÔÓÑ ÅÇÏ pÁÚÍÅp, ÐpÉ ×ÈÏÄÅ × ×ÙÚÙ×ÁÅÍÕÀ ÆÕÎËÃÉÀ ÐpÏÉÓÈÏÄÉÔ pÁÚÂÏp ÐÁpÁÍÅÔpÏ× É × ÔÅÌÅ ÆÕÎËÃÉÉ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ËÏÌÉÞÅÓÔ×Ï ÐÅpÅÄÁÎÎÙÈ ÜÌÅÍÅÎÔÏ× (Ó ÐÏÍÏÝØÀ High) É ÁÄpÅÓÏ×ÁÔØÓÑ Ë ÜÌÅÍÅÎÔÁÍ (ÉÓÐÏÌØÚÕÑ []). á ×ÓÅ const ÏÄÎÏÇÏ pÁÚÍÅpÁ, Ô.Ë. ×ÓÅ ÞÔÏ ÂÏÌØÛÅ integer ÐÅpÅÄÁÅÔÓÑ ÐÏ ÕËÁÚÁÔÅÌÀ, É ÉÍÅÎÎÏ ÜÔÉÍ ÏÂÕÓÌÏ×ÌÅÎÏ ÔpÅÂÏ×ÁÎÉÅ "const". ëÓÔÁÔÉ, × iar ÄÌÑ avr pÁÚÂÏp ÓÔÅËÁ ÐpÉ ÐÅpÅÄÁÞÅ ÐÅpÅÍÅÎÎÏÇÏ ÞÉÓÌÁ ÐÁpÁÍÅÔpÏ× ×ÓÔpÏÅÎ × ËÏÍÐÉÌÑÔÏp × ×ÉÄÅ INTRINSIC ÆÕÎËÃÉÉ.

AA>> óÐÏÓÏÂÅÎ ÌÉ ÜÔÏÔ ÔpÁÎÓÌÑÔÏp ÐÅpÅ×ÁpÉÔØ ÜÔÕ ËÏÎÓÔpÕËÃÉÀ × "void AA>> Write(char* Format, ...);" ÚÁ×ÉÓÉÔ ÔÏÌØËÏ ÏÔ ÅÇÏ AA>> ÓÏÏÂpÁÚÉÔÅÌØÎÏÓÔÉ. KF> áÇÁ. åݣ × turbo pascal ÂÙÌÉ ÏÇÒÁÎÉÞÅÎÉÑ ÐÏ ÒÁÂÏÔÅ Ó ÓÏÓÔÁ×ÎÙÍÉ KF> ÔÉÐÁÍÉ. óÕÔÉ ÕÖÅ ÎÅ ÐÏÍÎÀ (× ÒÑÄÅ ÓÌÕÞÁÅ× ×ÏÚÍÏÖÎÏ ÐÒÉÍÅÎÅÎÉÅ ÔÏÌØËÏ KF> "ordinary" ÔÉÐÏ×). ÷ delphi ÕÖÅ ÉÓÐÒÁ×ÉÌÉ? ÷ 3Ê ÄÅÌØÆÅ ÉÓÐpÁ×ÌÅÎÏ ÎÅ ÂÙÌÏ. á ÓÅÊÞÁÓ Ó ÔÁËÉÍÉ ÎØÀÁÎÓÁÍÉ ÎÅ ÓÔÁÌËÉ×ÁÀÓØ É ÎÅ ÚÎÁÀ, Ñ ÐpÏÆÅÓÓÉÏÎÁÌØÎÏ ÄÅÌØÆÅÊ ÄÁ×ÎÏ ÎÅ ÚÁÎÉÍÁÀÓØ É ÞÅÍ ÏÔÌÉÞÁÅÔÓÑ 8ÁÑ ÏÔ, Ë ÐpÉÍÅpÕ, 5ÏÊ, ÏÔ×ÅÔÉÔØ ÎÅ ÓÍÏÇÕ.

HÁ ÜÔÏÍ ×ÓÅ, ÐÏËÁ. Anton Abrosimov. ... ìÅÎÉÎ É ÓÅÊÞÁÓ ÖÉ×ÅÅ ×ÓÅÈ ÖÉ×ÙÈ (Ó)÷.é.ìÅÎÉÎ

Привет Vladimir!

Wednesday March 23 2005 07:07, Vladimir V Teplouhov wrote to Alexander Torres:

ON>>>>> И если компилятор не дает сообщений про ошибки, то пусть будет ON>>>>> хуже пользователю такого компилятора. KF>>>> Компилятор, который вместо работающих программ выдаёт сообщения о KF>>>> дурацких ошибках, называется паскаль... GS>>>

GS>>> Компилятор, который вместо сообщений о дурацких ошибках выдаёт GS>>> неработающие программы, называется си ;) VT>

AT>> Фидошник, котрый 8 лет тарахтит в эхах о том, о чем он не имеет ни AT>> малейшего понятия, называется "Жора Шепелев", который в очередной раз AT>> не зная Си - делает какие-то "глобальные выводы". VT>

AT>> А видимо, для подтверждения своих слов опять, как в прошлый раз, AT>> приведет фрагмент программы с синтаксическими ошибками.... VT>

VT> а что, кто-то еще пишет на Ц?

Большинство здесь присутствующих :)

VT> Hу ладно там программеры, но в embedded это уже на направление VT> к психиатору тянет...

Товарисч, к психиатру это Вам давно пора.

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
, ftp://altor.sytes.net

Привет Alexey!

Wednesday March 23 2005 16:09, Alexey Boyko wrote to Dima Orlov:

AB> 2Alexander Torres: Большая просьба не раздваиваться. А то почти все письма AB> от вас идут в двух экземплярах. Вы легко можете на работе договориться кто AB> из вас будет отвечать.

Я не все письма в эхах вижу по Фидо, например письма Максима, про бошевскую лампочку )которая оказалась автомобильной ксенонкой, дя которых мы ничего не делаем) - я не виджел, только тветы ему.

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
, ftp://altor.sytes.net

Пpивет, Vladislav.

Вот что Vladislav Baliasov wrote to Michael Belousoff:

GS>>> А для AVR я могy и на ассемблеpе пpогpаммкy сделать (собственно, GS>>> как pаз сейчас делаю), хоть это и не самое пpиятное занятие.

MB>> Пожалей себя, бpось какy.

VB> Для AVR писать на asm - сплошное yдовольствие. По кpайней меpе до VB> одного-двyх килослов объектного кода.

После 51-го я на АВРовские мнемоники без слёз смотpеть не могy.

Michael G. Belousoff

formatting link
mailto: mickbell(dog)r66(dot)ru

... ==== Пpоблемy надо pешать до того, как она появится. ====

ðÒÉ×ÅÔ Dima! ÷Ôp íÁp 22 2005 08:23, Dima Orlov -> Anton Abrosimov:

DO> ÆÕÎËÃÉÏÎÁÌØÎÙÊ ÁÎÁÌÏÇ ÐÏÌÕÞÁÅÔÓÑ ÍÅÎÅÅ ÕÄÏÂÎÙÍ É ÎÁÇÌÑÄÎÙÍ, ÞÅÍ ÐÒÉ DO> ÓÉÛÎÏÍ ÓÉÎÔÁËÓÉÓÅ, ÈÏÔÑ ÄÅÌÁÅÔ ÐÏÞÔÉ ÔÏÖÅ ÓÁÍÏÅ É ÈÕÖÅ ÔÏÌØËÏ á ÓÉÛÎÙÊ ÓÉÎÔÁËÓÉÓ ÔÕÔ ÐpÉ ÞÅÍ?

DO> ÄÏÐÏÌÎÉÔÅÌØÎÙÍ ÕËÁÚÁÔÅÌÅÍ (ÐÅÒÅÄÁÅÔÓÑ ÕËÁÚÁÔÅÌØ ÎÁ ÍÁÓÓÉ× ÕËÁÚÁÔÅÌÅÊ DO> ×ÍÅÓÔÏ ÐÒÏÓÔÏ ÍÁÓÓÉ×Á ÕËÁÚÁÔÅÌÅÊ/ÚÎÁÞÅÎÉÊ). HÅ ÓÏ×ÓÅÍ ÐpÁ×. ðÅpÅÄÁÅÔÓÑ ÉÍÅÎÎÏ ÍÁÓÓÉ×, ÓÏÓÔÏÑÝÉÊ ÉÚ ÓÔpÕËÔÕp Ó "Variant parts", ÞÅpÅÚ ÓÔÅË. ðpÉÞÅÍ ÔÉÐÙ integer, boolean É char ÐÅpÅÄÁÀÔÓÑ ÐÏ ÚÎÁÞÅÎÉÀ.

HÁ ÜÔÏÍ ×ÓÅ, ÐÏËÁ. Anton Abrosimov. ... üÔÏ ÐÉÓØÍÏ ÓÏ×ÅÒÛÉÌÏ ÏÛÉÂËÕ É ÂÕÄÅÔ ÚÁËÒÙÔÏ [OK]

Hi Kirill!

÷Ï ×ÔÏpÎÉË, 22 ÍÁpÔÁ 2005 09:02:42, Kirill Frolov ÐÉÓÁÌ to Vadim Rumyantsev:

VR>> íÏÖÎÏ × óÉ ÎÁÐÉÓÁÔØ Ó×ÏÊ ÁÎÁÌÏÇ switch?

KF> ÷ GCC -- ÍÏÖÎÏ.

ôÙ ÖÅ, ×ÒÏÄÅ ËÁË, ÓÔÏÒÏÎÎÉË ISO?

KF> åݣ ÍÏÖÎÏ Ó ÍÁËÒÏÓÁÍÉ ÐÏÍÕÞÁÔØÓÑ.

âÙÌÏ ÂÙ ÉÎÔÅÒÅÓÎÏ ÐÏÓÍÏÔÒÅÔØ ÎÁ ÒÅÁÌÉÚÁÃÉÀ switch ÎÁ ÓÉÛÎÙÈ ÍÁËÒÏÓÁÈ :)

Sincerely, Vadim.

ðÒÉ×ÅÔ Kirill! ÷Ôp íÁp 22 2005 09:01, Kirill Frolov -> Anton Abrosimov:

KF>>>>> ÒÁÚÎÙÍÉ ÁÔÒÉÂÕÔÁÍÉ (ÎÁÐÒÉÍÅÒ, ÓޣÔÞÉËÏÍ ÓÓÙÌÏË É Ô.Ð.) AA>>>> á ËÁË pÅÁÌÉÚÕÅÔÓÑ ÔÏÔ-ÖÅ ÓÞÅÔÞÉË ÓÓÙÌÏË ÂÅÚ ÐÏÄÄÅpÖËÉ ÓÏ AA>>>> ÓÔÏpÏÎÙ ËÏÍÐÉÌÑÔÏpÁ? KF>>> á ËÁË ÏÎ ÍÏÖÅÔ ÂÙÔØ ÒÅÁÌÉÚÏ×ÁÎ ÎÁ ÁÓÓÅÍÂÌÅÒÅ, ÂÅÚ ÐÏÄÄÅÒÖËÉ ÓÏ KF>>> ÓÔÏÒÏÎÙ ËÏÍÐÉÌÑÔÏÒÁ ÐÁÓËÁÌÑ? AA>> ïÔ×ÅÞÁÔØ ÎÅ×ÎÑÔÎÙÍ ×ÏÐpÏÓÏÍ ÎÁ ×ÐÏÌÎÅ ËÏÎËpÅÔÎÙÊ ×ÏÐpÏÓ - ÉÍÈÏ AA>> ËÁË-ÔÏ ÎÅÈÏpÏÛÏ Ó Ô×ÏÅÊ ÓÔÏpÏÎÙ. :) ðÏÑÓÎÀ Ó×ÏÊ ×ÏÐpÏÓ. HÁÐpÉÍÅp, AA>> ÌÏËÁÌØÎÏÊ ÐÅpÅÍÅÎÎÏÊ-ÓÔpÏËÅ ÐpÉÓ×ÏÉÌÉ ÚÎÁÞÅÎÉÅ ÇÌÏÂÁÌØÎÏÊ ÓÔpÏËÉ. AA>> óÞÅÔÞÉË ÄÏÌÖÅÎ ÂÙÔØ ÉÎËpÅÍÅÎÔÉpÏ×ÁÎ, ÞÔÏ × ÓÉ ×ÐÏÌÎÅ ÍÏÖÎÏ AA>> ÓÄÅÌÁÔØ ÐÅpÅÏÐpÅÄÅÌÅÎÉÅÍ ÏÐÅpÁÔÏpÁ. HÏ ÐpÉ ×ÙÈÏÄÅ ÉÚ AA>> ÏÂÌÁÓÔÉ ×ÉÄÉÍÏÓÔÉ ÌÏËÁÌØÎÏÊ ÐÅpÅÍÅÎÎÏÊ É ÅÅ Á×ÔÏÍÁÔÉÞÅÓËÏÍ AA>> ÕÄÁÌÅÎÉÉ ÓÞÅÔÞÉË ÎÕÖÎÏ ÄÅËpÅÍÅÎÔÉpÏ×ÁÔØ. KF> ïÞÅ×ÉÄÎÏ, ÓÕÍÍÉÒÏ×ÁÎÉÅÍ ÚÎÁÞÅÎÉÑ ÓޣÔÞÉËÁ Ó -1 × ÎÕÖÎÏÍ ÍÅÓÔÅ. üÔÏ ÔÙ ÏÂßÑÓÎÑÅÛØ, ËÁË ÎÁÄÏ ÄÅËpÅÍÅÎÔÉpÏ×ÁÔØ? óÐÁÓÉÂÏ ÚÁ ÏÞÅÎØ ÐÏÌÅÚÎÕÀ ÉÎÆÏpÍÁÃÉÀ, ÓÅÊÞÁÓ ÐÏÊÄÕ ÔpÅÎÉpÏ×ÁÔØÓÑ. :)

KF> äÌÑ KF> ÒÁÂÏÔÙ Ó ÕËÁÚÁÔÅÌÑÍÉ ×ÙÐÏÌÎÑÅÔÓÑ ÒÑÄ ÎÅÈÉÔÒÙÈ ÐÒÁ×ÉÌ (ÐÒÉÍÅÞÁÔÅÌØÎÏ, KF> ËÏÍÐÉÌÑÔÏÒ LCC ÉÍÅÅÔ ÔÁËÕÀ ×ÏÚÍÏÖÎÏÓÔØ). íÎÅ ÉÎÔÅpÅÓÅÎ ÎÅ ÐpÉÍÅÞÁÔÅÌØÎÙÊ ËÏÍÐÉÌÑÔÏp, Á ×ÏÚÍÏÖÎÏÓÔØ pÅÁÌÉÚÁÃÉÉ ÕÎÉ×ÅpÓÁÌØÎÏÊ ÂÉÂÌÉÏÔÅËÉ ÓÏ ÓÞÅÔÞÉËÏÍ ÓÓÙÌÏË.

AA>> ëÁË ÏÂpÁÂÏÔÁÔØ ÜÔÏ ÓÏÂÙÔÉÅ? KF> á ÐÏÞÅÍÕ ×Ù ÓÐÒÁÛÉ×ÁÅÔÅ? HÅ ÚÎÁÅÛØ - ÔÁË É ÓËÁÖÉ. HÉÞÅÇÏ ÄÏÓÔÏÊÎÏÇÏ ÐÏ 'reference count "c++"' ÓÈÏÄÕ ÎÅ ÎÁÛÌÏÓØ.

HÁ ÜÔÏÍ ×ÓÅ, ÐÏËÁ. Anton Abrosimov. ... öÉÚÎØ - ÉÇÒÁ. úÁÄÕÍÁÎÎÁ ÈÒÅÎÏ×Ï, ÎÏ ÇÒÁÆÉËÁ ÏÂÁÌÄÅÎÎÁÑ!

Alexander, ты ещё здесь сидишь?

Вторник Март 22 2005 08:34, Alexander Torres wrote to George Shepelev:

ON>>>> И если компилятор не дает сообщений про ошибки, то пусть будет ON>>>> хуже пользователю такого компилятора. KF>>> Компилятор, который вместо работающих программ выдаёт KF>>> сообщения о дурацких ошибках, называется паскаль... GS>> Компилятор, который вместо сообщений о дурацких ошибках выдаёт GS>> неработающие программы, называется си ;) AT> Фидошник, котрый 8 лет тарахтит в эхах о том, о чем он не имеет ни AT> малейшего понятия, называется "Жора Шепелев",

Скунс смердящий зовётся Алеском Торресом, одиныжды уже экскоммуницированным за подобное поведение.

Георгий

Kirill, ты ещё здесь сидишь?

Вторник Март 22 2005 08:40, Kirill Frolov wrote to George Shepelev:

MB>>>>> Компенсиpовано. GS>>>> Hе совсем. Для разных задач могут оказаться удобными разные GS>>>> представления! KF>>> Эффективен смешанный вариант. GS>> Зачем? В огромной массе случаев удобен один из простейших GS>> вариантов. KF> Один из простейших видов сортировки -- сортировка пузырьком...

И что? Сортировка - вовсе не единственное действие над строками. И "пузырьковая" сортировка - отнюдь не лучший метод сортировки...

KF>>> И не спорь. Чисто паскалевский требует хранить длину в отдельном KF>>> регистре GS>> В "нулевом" элементе символьного массива, хранящего строку. GS>> Занимает ровно столько же места, сколько сишный "нуль-терминатор". KF> Hет. Одно слово -- типично 4 байта.

Один байт. Отсюда и ограничение длины текстовой строки - 255 символов.

KF>>> и всё время её перевычислять, GS>> А каждый раз парсить строку в поисках "нуль-терминатора" тебя не GS>> напрягает? KF> Hетрудно догадаться, что в функции вроде strtoul оно автомагически KF> парсится.

По-твоему автоматический парсинг выполняется мгновенно? ;)

KF>>> Чисто сишный имеет трудности с определением длины когда это KF>>> действительно нужно. GS>> Чисто сишный имеет преимущество в возможности создания строк GS>> произвольной длины, KF> "Дельфийный" тоже имеет такое преимущество (см. выше, про байт и KF> слово).

В "борландовском" паскале тоже поддерживались z-строки. Жизнь заставила...

GS>> вариант". С длиной, хранящейся отдельно от самой строки, ибо в GS>> "сишной строке" для этого параметра места нету... KF> Ещё раз: в языке C строк нет,

Жаль, что составители документации по языку C этого не знают, и постоянно пользуются строковыми константами и переменными. Причём всё это работает и на практике.

KF> есть байтовый вектор. Принять как аксиому.

Hа самом деле есть только нулевые и единичные биты. Принять как аксиому.

Георгий

Kirill, ты ещё здесь сидишь?

Вторник Март 22 2005 08:42, Kirill Frolov wrote to George Shepelev:

GS>> Компилятор, который вместо сообщений о дурацких ошибках выдаёт GS>> неработающие GS>> программы, называется си ;) KF> Я уверен, что из всех программ обеспечивающих прохождения моего вот KF> этого письма ко всем его читателям причастны, возможно за редкими KF> исключениями, в основном программы написанные на языке C. Как можно KF> видеть, все буковки на месте.

Да, при желании можно даже в машинных кодах программы писать. Вообще без компилятора. В своё время это было повседневной практикой...

Георгий

Kirill, ты ещё здесь сидишь?

Вторник Март 22 2005 08:50, Kirill Frolov wrote to Olga Nonova:

ON>> символов. Вот, и представьте насколько времени зависают ON>> библиотечные функции на таких строках. KF> Для большинства функций 0 -- сигнал к завершению разбора строки. KF> Если функция в процессе работы до конца и не доходит, то она KF> вычислением длины не занимается вообще. Из явно вычисляющих длину KF> вспоминается только printf, strdup и strlen.

Конкатенация текстовых строк, да?..

Георгий

Kirill, ты ещё здесь сидишь?

Вторник Март 22 2005 09:07, Kirill Frolov wrote to Olga Nonova:

KF> Сборками строк в микроконтроллере никто в трезвом уме заниматься не KF> будет, за редкими исключениями.

Я занимался, в трезвом уме. Экономило кучу места в памяти программ.

KF> Ибо памяти мало.

Вот именно! ;)

KF> А printf, путём переопределения ряда функций (вроде посимвольного KF> вывода) позволяет форматируемые данные непосредственно выдавать в KF> поток.

Это было избыточно.

Георгий

Vladislav, ты ещё здесь сидишь?

Вторник Март 22 2005 20:01, Vladislav Baliasov wrote to Michael Belousoff:

GS>>> А для AVR я могy и на ассемблеpе пpогpаммкy сделать (собственно, GS>>> как pаз сейчас делаю), хоть это и не самое пpиятное занятие. MB>> Пожалей себя, бpось какy. VB> Для AVR писать на asm - сплошное удовольствие.

Очень сомнительное удовольствие :-/

Георгий

Michael, ты ещё здесь сидишь?

Вторник Март 22 2005 20:25, Michael Belousoff wrote to George Shepelev:

GS>> А для AVR я могy и на ассемблеpе пpогpаммкy сделать (собственно, GS>> как pаз сейчас делаю), хоть это и не самое пpиятное занятие. MB> Пожалей себя, бpось какy.

Сигнал нужно выдавать на ножку с дискретностью 50 нс. Вариант на AVR просто напрашивается...

Георгий

Привет!

Fri Mar 18 2005 21:01, Maxim Polyanskiy wrote to Alexander Golov:

...

AG>> Речь шла прежде всего об удобствах доступа к программной памяти (LFSR, AG>> PLUSW, банальном ускорении доступа, наконец) и передачи ссылок (если AG>> ты не в курсе, ссылки и на асме удобно передавать единым образом, а не AG>> раздельно для данных и кода). Hу и, естественно, о возможности AG>> размещения Software Stack во внешнем ОЗУ.

MP> Теперь опиши нафиг все это нужно на ассемблере?

А что, фанатам ассма трудно догнать, что лучше иметь возможность написать:

lfsr 0,adr movfw indf0

при доступе за 2 цикла (в программную память), а не:

movlw low adr movwf tblptrl movlw high adr movwf tblptrh tblrd movfw tablat

при доступе за 3 цикла? Или что иметь возможность вот так индексно адресоваться к данным в программной памяти:

lfsr 0,adr movfw index movff plusw0,temp

вместо чего-нибудь вроде:

movfw index addlw low adr movwf tblptrl clrf tblptrh movlw high adr addwf tblptrh tblrd movff tablat,temp

Или что лучше однотипно передавать ссылки, скажем, при вычислениях как для переменных в памяти данных, так и во внешней памяти, и для констант?

lfsr 0,val1 lfsr 1,const1 lfsr 2,temp1 call fp_mul3 lfsr 0,temp1 lfsr 1,const2 call fp_add2

Неужели всё это там труднопостижимо для ассемблерщика?

MP> Почитай как создают процессорные ядра, какие цели при этом преследуют. MP> Hикто не собирается делать тебе 8-ми битный контроллер для упрощения MP> построения компилятора ЯВУ, а на асм это не нужно. Cовсем не нужно.

Меня не сильно занимает, что там кто-то думает по поводу целей преследуемых производителем МК (в данном случае Microchip) при его создании, особенно когда высказаное очевидно расходится с действиями производителя. В данном случае я вижу в наличии три 16-разрядных указателя, используемые лишь на 1/16 их возможностей и вижу существенные потери эффективности всвязи с неиспользованием оставшихся 15/16 для доступа к памяти программ и не вижу никаких препятствий, всё это поправить даже сейчас не говоря уже, что это можно было учесть при создании Extended Instruction Set.

MP> Так-же как и передача расположения строки в ее адресе. Проще выделить и MP> выставить бит, который будет управлять логикой работы процедуры (если это MP> надо) или вообще ничего не делать (т.к. у нормального программиста, одно MP> и то-же не лежит и там и там, и функции типа strcat просто не MP> применяются).

Понять бы ещё о чём тут речь...

Александр Голов, Москва, snipped-for-privacy@mail.ru

Hello, Maxim! You wrote to Andy Mozzhevilov on Wed, 23 Mar 2005 11:01:06 +0300:

MP> Если ты думаешь, что вагон экстернов и прототипов увеличивают MP> читабельность, а инкапсулированность функций упрощает отладку, то MP> это твои личные заблуждения.

Все высказываемые мнения - суть заблуждения говорящего :-))). Так вот, мои заблуждения с твоими не согласны :-)))))). Упомянутые тобой приёмы разработаны для больших и средних проектов. Там без них нельзя - просто ничего не получится. На малых это не так чувствуется, но распространять подобный опыт на другие масшатбы и говорить в этой связи о заблуждениях - не совсем корректно. IMHO, разумеется.

With best regards, Alexander Derazhne

ðÒÉ×ÅÔÓÔ×ÕÀ ÷ÁÓ, ÍÎÏÇÏÕ×ÁÖÁÅÍÙÊ/ÁÑ/ÏÅ Anton! ópÄ íÁp 23 2005 20:58, Anton Abrosimov ÐÉÓÁÌ Ë Kirill Frolov:

KF>> ÔÉÐÁÍÉ. óÕÔÉ ÕÖÅ ÎÅ ÐÏÍÎÀ (× ÒÑÄÅ ÓÌÕÞÁÅ× ×ÏÚÍÏÖÎÏ ÐÒÉÍÅÎÅÎÉÅ KF>> ÔÏÌØËÏ "ordinary" ÔÉÐÏ×). ÷ delphi ÕÖÅ ÉÓÐÒÁ×ÉÌÉ? AA> ÷ 3Ê ÄÅÌØÆÅ ÉÓÐpÁ×ÌÅÎÏ ÎÅ ÂÙÌÏ. á ÓÅÊÞÁÓ Ó ÔÁËÉÍÉ ÎØÀÁÎÓÁÍÉ ÎÅ AA> ÓÔÁÌËÉ×ÁÀÓØ É ÎÅ ÚÎÁÀ, Ñ ÐpÏÆÅÓÓÉÏÎÁÌØÎÏ ÄÅÌØÆÅÊ ÄÁ×ÎÏ ÎÅ ÚÁÎÉÍÁÀÓØ É AA> ÞÅÍ ÏÔÌÉÞÁÅÔÓÑ 8ÁÑ ÏÔ, Ë ÐpÉÍÅpÕ, 5ÏÊ, ÏÔ×ÅÔÉÔØ ÎÅ ÓÍÏÇÕ.

þÅÍ ÏÔÌÉÞÁÅÔÓÑ D8 ÏÔ D5, ÓËÁÚÁÔØ ËÁË ÒÁÚ ÏÞÅÎØ ÌÅÇËÏ: ÐÅÒ×ÁÑ ËÏÍÐÉÌÉÔ ÐÏÄ .Net, ×ÔÏÒÁÑ - ÐÏÄ Win32 :). HÏ Ï ËÁËÉÈ ÏÇÒÁÎÉÞÅÎÉÑÈ ÉÄÅÔ ÒÅÞØ - Ñ ÔÁË É ÎÅ ÐÏÎÑÌ... ó ÎÁÉÌÕÞÛÉÍÉ ÐÏÖÅÌÁÎÉÑÍÉ, Dmitri.

Привет George!

Wednesday March 23 2005 23:50, George Shepelev wrote to Alexander Torres:

ON>>>>> И если компилятор не дает сообщений про ошибки, то пусть будет ON>>>>> хуже пользователю такого компилятора. KF>>>> Компилятор, который вместо работающих программ выдаёт KF>>>> сообщения о дурацких ошибках, называется паскаль... GS>>> Компилятор, который вместо сообщений о дурацких ошибках выдаёт GS>>> неработающие программы, называется си ;) AT>> Фидошник, котрый 8 лет тарахтит в эхах о том, о чем он не имеет ни AT>> малейшего понятия, называется "Жора Шепелев", GS>

GS> Скунс смердящий зовётся

Жорой Шепелевым.

GS> Алеском Торресом, одиныжды уже экскоммуницированным за подобное GS> поведение.

Hиразу в жизни такого небыло, постоянный ты лгун.

А вот тебя с подельником - регулярно из конференций выгоняют за хамтсво.

Alexander Torres, 2:461/28 aka 2:461/640.28 aka 2:5020/6400.28 aka snipped-for-privacy@yahoo.com

formatting link
, ftp://altor.sytes.net

Hello Alex.

23 Mar 05 17:15, you wrote to Anton Abrosimov:

AA>>>> åÓÔØ ×ÁpÉÁÎÔÙ ÅÝÅ ËÏÍÐÁËÔÎÅÅ, ÐpÁ×ÄÁ ÚÁ ÓÞÅÔ ÏÔÓÕÔÓÔ×ÉÑ AA>>>> ÓÏÂÓÔ×ÅÎÎÏ ÆÏpÍÁÔÉpÏ×ÁÎÉÑ. á×ÔÏpÓÔ×Ï - IAR, ×ÁpÉÁÎÔ ÄÌÑ AA>>>> sizeof(int)=16. AM>>> ïÈ-È-È-È-ÒÅÎÅÔØ!!! üÔÏ ÄÌÑ ËÁËÏÊ ÐÌÁÔÆÏÒÍÙ? AA>> âÙÌÏ × ÓÏÓÔÁ×Å EW ÄÌÑ AVR. á ÐpÉÞÅÍ ÚÄÅÓØ ÐÌÁÔÆÏpÍÁ? AM> ôÏÇÄÁ ÔÅÍ ÂÏÌÅÅ ÏÈ-È-ÈÒÅÎÅÔØ. ñ ÚÎÁÀ Ï ÓÕÝÅÓÔ×Ï×ÁÎÉÉ ÓÉÓÔÅÍ Ó AM> sizeof(int)=8, ÎÏ ÎÉ ÒÁÚÕ ÎÅ ×ÉÄÅÌ ÖÉרÅÍ. éÌÉ Õ ÔÅÂÑ ËÁÌÅÎÄÁÒØ ÓÐÅÛÉÔ AM> (ÄÏ 1 ÁÐÒÅÌÑ ÅÝÅ ÂÏÌØÛÅ ÎÅÄÅÌÉ), ÉÌÉ Õ IAR ËÒÙÛÁ ÐÏÅÈÁÌÁ...

ïÂßÑÓÎÉ ÐÏÞÅÍÕ ÔÅÂÑ ÔÁË ÄÉËÏ ×ÏÚÂÕÖÄÁÅÔ ÆÁËÔ, ÞÔÏ Õ AVR-Á int ÚÁÎÉÍÁÅÔ 2 ÂÁÊÔÁ?

ps: ÷ÏÏÂÝÅ-ÔÏ, Õ avr-gcc ÅÓÔØ ÏÐÃÉÑ -mint8, ËÏÔÏÒÁÑ ÄÅÌÁÅÔ int - 8-ÂÉÔÎÙÍ.

Alexey

Dmitri, ты ещё здесь сидишь?

Вторник Март 22 2005 23:37, Dmitri Litovchenko wrote to George Shepelev:

ON>>>>> Результат будет обрезан до размера 255. GS>>>> Hо это, по-твоему, проблемой не будет являться? Hикаких хлопот, GS>>>> просто часть нужной инфы куда-то тихонько пропала ;))) ON>>> Hе фатально. GS>> Кто сказал? В реальной жизни это может оказаться _очень_ GS>> фатально! DL> Hе-а. Обычно при работе с короткими строками сильно думают, какой DL> длины их сделать. И там, где должно быть 20 байт, оказаться 200 байт DL> может разве что вследствие чей-то вредительской деятельности.

Hо от этого ведь не легче, правда? Знаешь ли, в реальной жизни вредительская деятельность как раз и может заключаться в нарушении работы системы, путём подсовывания некорректных данных :-/

GS>> А я - про неумение. Если даже такая простая вещь, как получение GS>> текстовой строки, может вызвать крах программы - что уж говорить о GS>> более серьёзных алгоритмах... DL> Hадеюсь, ты в курсе, что одна из самых популярных атак - это атака DL> на переполнение буфера ;)?

Это говорит лишь о чрезвычайно низком общем профессиональном уровне нынешних программеров :-/

Георгий

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required