WINAVR

Sep 05, 2005 Last reply: 20 years ago 816 Replies
ðÒÉ×ÅÔ Dimmy!

21 Oct 05 15:44, Dimmy Timchenko ÐÉÓÁÌ Alex Mogilnikov:

AM>>>> á ÅÓÌÉ ÎÁÏÂÏÒÏÔ, ÐÁÓËÁÌÅ×ÓËÉÊ ÍÏÄÕÌØ ÎÁÄÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÇÄÅ-ÔÏ AM>>>> ÅÝÅ? DT>>> HÁÐÒÉÍÅÒ, ÇÄÅ? :) AM>> HÁÐÒÉÍÅÒ × ÁÓÓÅÍÂÌÅÒÎÏÍ.

DT> ðÁÓËÁÌÅ×ÓËÉÊ ÍÏÄÕÌØ ÐÒÉ×ÑÚÙ×ÁÔØ Ë ÁÓÓÅÍÂÌÅÒÎÏÍÕ ÐÒÏÅËÔÕ? :) ôÏÎËÏÅ DT> ÉÚ×ÒÁÝÅÎÉÅ. ïÂÙÞÎÏ ÄÅÌÁÀÔ ÎÁÏÂÏÒÏÔ.

á ËÁË ÓÄÅÌÁÔØ, ÎÁÐÒÉÍÅÒ, ÏÂÒÁÂÏÔÞÉË ÐÒÅÒÙ×ÁÎÉÑ? ÷ÈÏÄ É ×ÙÈÏÄ ÉÚ ÎÅÇÏ ÐÒÉÄÅÔÓÑ ×ÅÄØ ÄÅÌÁÔØ ÎÁ ÁÓÓÅÍÂÌÅÒÅ. ðÏÌÕÞÁÅÔÓÑ, ÞÔÏ ÔÏÇÄÁ ÓÏÂÓÔ×ÅÎÎÏ ÏÂÒÁÂÏÔÞÉË ÜÔÏÇÏ ÐÒÅÒÙ×ÁÎÉÑ ÎÁ ðÁÓËÁÌÅ ÎÁÐÉÓÁÔØ ÎÅÌØÚÑ? ðÒÉÄÅÔÓÑ ÅÇÏ ÐÉÓÁÔØ, ÎÁÐÒÉÍÅÒ, ÎÁ C (ÐÒÉ ÔÏÍ ÞÔÏ, ÄÏÐÕÓÔÉÍ, ×ÅÓØ ÏÓÔÁÌØÎÏÊ ÐÒÏÅËÔ ÎÁ ðÁÓËÁÌÅ)? :) é ÜÔÉ ÌÀÄÉ ÇÏ×ÏÒÑÔ ÍÎÅ Ï ÉÚ×ÒÁÝÅÎÉÑÈ? :)

DT>>> ÷Ï-ÐÅÒ×ÙÈ, ×ÓÔÒÏÅÎÎÙÊ make ÐÒÏ×ÅÒÑÅÔ ÄÁÔÙ ÆÁÊÌÏ× É DT>>> ÐÅÒÅËÏÍÐÉÌÉÒÕÅÔ ÔÏÌØËÏ ÏÂÎÏ×̣ÎÎÙÅ.

AM>> üÔÏ ÞÒÅ×ÁÔÏ ÐÒÏÂÌÅÍÁÍÉ. èÏÒÏÛÏ ÅÓÌÉ ÐÒÏÇÒÁÍÍÁ ÐÒÏÓÔÏ ÎÅ AM>> ÓÌÉÎËÕÅÔÓÑ, × ÈÕÄÛÅÍ ÖÅ ÓÌÕÞÁÅ ÂÕÄÕÔ ÇÌÀËÉ ÐÒÉ ×ÙÐÏÌÎÅÎÉÉ.

DT> ó ËÁËÏÊ ÓÔÁÔÉ?

äÏÐÕÓÔÉÍ, × ÐÒÏÇÒÁÍÍÅ ÉÚ ÆÁÊÌÁ A ×ÙÚÙ×ÁÅÔÓÑ ÆÕÎËÃÉÑ, ÒÅÁÌÉÚÏ×ÁÎÎÁÑ × ÆÁÊÌÅ B. ðÒÏÇÒÁÍÍÕ ÓËÏÍÐÉÌÉÒÏ×ÁÌÉ É ÏÎÁ ÒÁÂÏÔÁÅÔ. úÁÔÅÍ × ÜÔÏÊ ÆÕÎËÃÉÉ ÉÚÍÅÎÉÌÉ ÔÉÐ ÁÒÇÕÍÅÎÔÁ, Á × ÆÁÊÌÅ A ÅÅ ×ÙÚÏ× ÉÚÍÅÎÉÔØ ÚÁÂÙÌÉ. ðÏÓÌÅ ÐÅÒÅËÏÍÐÉÌÑÃÉÉ ÍÏÄÕÌÑ B É ÌÉÎËÏ×ËÉ ÐÒÏÇÒÁÍÍÙ ÐÏÌÕÞÁÅÔÓÑ ÔÁËÁÑ ÓÉÔÕÁÃÉÑ: ÆÕÎËÃÉÑ ÉÎÔÅÒÐÒÅÔÉÒÕÅÔ ÐÅÒÅÄÁÎÎÙÊ ÅÊ ÁÒÇÕÍÅÎÔ ÎÅ ÔÁË, ËÁË ×ÙÚÙ×ÁÀÝÉÊ ÅÅ ËÏÄ.

DT> HÏ ÄÌÑ ÎÁģÖÎÏÓÔÉ ÅÓÔØ ÏÐÃÉÑ "Rebuild All".

:)

÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... óÏ×ÅÔ ÄÎÑ: ÞÔÏÂÙ ÕÂÉÔØ ÖÉÒÎÕÀ ÌÏÛÁÄØ, ÄÏÂÁרÔÅ Ë ËÁÐÌÅ ÎÉËÏÔÉÎÁ ËÁÐÌÀ fairy

Hello Dimmy.

22 Oct 05 09:19, you wrote to Kirill Frolov:

DT> ëÓÔÁÔÉ, ÖÁÌØ, ÞÔÏ ÎÉ × C/C++, ÎÉ × ðÁÓËÁÌÅ ÎÅÔ, ÎÁÐÒÉÍÅÒ, ÁÇÒÅÇÁÔÏ× DT> ÉÌÉ ÉÍÅÎÏ×ÁÎÎÙÈ ÐÁÒÁÍÅÔÒÏ×. á ×ÅÄØ ÕÄÏÂÎÏ ÂÙÌÏ ÂÙ ÎÁÐÉÓÁÔØ, ÎÁÐÒÉÍÅÒ:

DT> [x,y] = some_func (a, b);

þÉÔÁÊ ËÎÉÖËÉ ÐÏ ã++, ÛÁÂÌÏÎÁÍ, STL, boost, loki ÎÁ ËÌÀÞÅ×ÏÅ ÓÌÏ×Ï tuple. éÚ×ÒÁÝÅÎÉÅ ×ÓÅ ÜÔÏ... äÁ, ÎÁ ×ÓÑËÉÊ ÓÌÕÞÁÊ... ÕÓÔÒÉÃÙ ÔÙ ÐÒÏÂÏ×ÁÌ ? ;)

Dmitry

Hello Alex.

Sat Oct 22 2005 15:38, Alex Mogilnikov wrote to me:

DT>> ðÁÓËÁÌÅ×ÓËÉÊ ÍÏÄÕÌØ ÐÒÉ×ÑÚÙ×ÁÔØ Ë ÁÓÓÅÍÂÌÅÒÎÏÍÕ ÐÒÏÅËÔÕ? :) ôÏÎËÏÅ DT>> ÉÚ×ÒÁÝÅÎÉÅ. ïÂÙÞÎÏ ÄÅÌÁÀÔ ÎÁÏÂÏÒÏÔ.

AM> á ËÁË ÓÄÅÌÁÔØ, ÎÁÐÒÉÍÅÒ, ÏÂÒÁÂÏÔÞÉË ÐÒÅÒÙ×ÁÎÉÑ?

HÁÐÒÉÍÅÒ, Ó ÐÏÍÏÝØÀ ÍÏÄÉÆÉËÁÔÏÒÁ ÐÒÏÃÅÄÕÒÙ interrupt. :)

AM> ÷ÈÏÄ É ×ÙÈÏÄ ÉÚ ÎÅÇÏ ÐÒÉÄÅÔÓÑ ×ÅÄØ ÄÅÌÁÔØ ÎÁ ÁÓÓÅÍÂÌÅÒÅ.

ó ËÁËÏÊ ÓÔÁÔÉ? èÏÔÑ ÍÏÖÅÛØ ÓÄÅÌÁÔØ ÏÂÒÁÂÏÔÞÉË ÐÏÌÎÏÓÔØÀ × ×ÉÄÅ ÁÓÓÅÍÂÌÅÒÎÏÇÏ ÍÏÄÕÌÑ.

AM> ðÏÌÕÞÁÅÔÓÑ, ÞÔÏ ÔÏÇÄÁ ÓÏÂÓÔ×ÅÎÎÏ ÏÂÒÁÂÏÔÞÉË ÜÔÏÇÏ ÐÒÅÒÙ×ÁÎÉÑ ÎÁ AM> ðÁÓËÁÌÅ ÎÁÐÉÓÁÔØ ÎÅÌØÚÑ?

íÏÖÎÏ.

AM> ðÒÉÄÅÔÓÑ ÅÇÏ ÐÉÓÁÔØ, ÎÁÐÒÉÍÅÒ, ÎÁ C (ÐÒÉ ÔÏÍ ÞÔÏ, ÄÏÐÕÓÔÉÍ, ×ÅÓØ AM> ÏÓÔÁÌØÎÏÊ ÐÒÏÅËÔ ÎÁ ðÁÓËÁÌÅ)? :) é ÜÔÉ ÌÀÄÉ ÇÏ×ÏÒÑÔ ÍÎÅ Ï AM> ÉÚ×ÒÁÝÅÎÉÑÈ? :)

ôÙ ÂÙ ÓÎÁÞÁÌÁ ÒÁÚÏÂÒÁÌÓÑ × BP/OP ÈÏÔÑ ÂÙ ËÁË Ñ ÒÁÚÂÉÒÁÀÓØ × C. ;)

AM>>> üÔÏ ÞÒÅ×ÁÔÏ ÐÒÏÂÌÅÍÁÍÉ. èÏÒÏÛÏ ÅÓÌÉ ÐÒÏÇÒÁÍÍÁ ÐÒÏÓÔÏ ÎÅ AM>>> ÓÌÉÎËÕÅÔÓÑ, × ÈÕÄÛÅÍ ÖÅ ÓÌÕÞÁÅ ÂÕÄÕÔ ÇÌÀËÉ ÐÒÉ ×ÙÐÏÌÎÅÎÉÉ.

DT>> ó ËÁËÏÊ ÓÔÁÔÉ?

AM> äÏÐÕÓÔÉÍ, × ÐÒÏÇÒÁÍÍÅ ÉÚ ÆÁÊÌÁ A ×ÙÚÙ×ÁÅÔÓÑ ÆÕÎËÃÉÑ, ÒÅÁÌÉÚÏ×ÁÎÎÁÑ AM> × ÆÁÊÌÅ B. ðÒÏÇÒÁÍÍÕ ÓËÏÍÐÉÌÉÒÏ×ÁÌÉ É ÏÎÁ ÒÁÂÏÔÁÅÔ. úÁÔÅÍ × ÜÔÏÊ AM> ÆÕÎËÃÉÉ ÉÚÍÅÎÉÌÉ ÔÉÐ ÁÒÇÕÍÅÎÔÁ, Á × ÆÁÊÌÅ A ÅÅ ×ÙÚÏ× ÉÚÍÅÎÉÔØ ÚÁÂÙÌÉ.

ëÏÍÐÉÌÑÔÏÒ ×ÙÒÕÇÁÅÔÓÑ, ÐÏËÁÖÅÔ ÎÁ ÎÅÐÒÁ×ÉÌØÎÙÊ ×ÙÚÏ× É ÏÔËÁÖÅÔÓÑ ÓÏÂÉÒÁÔØ EXE-ÛÎÉË.

AM> ðÏÓÌÅ ÐÅÒÅËÏÍÐÉÌÑÃÉÉ ÍÏÄÕÌÑ B É ÌÉÎËÏ×ËÉ ÐÒÏÇÒÁÍÍÙ ÐÏÌÕÞÁÅÔÓÑ ÔÁËÁÑ AM> ÓÉÔÕÁÃÉÑ: ÆÕÎËÃÉÑ ÉÎÔÅÒÐÒÅÔÉÒÕÅÔ ÐÅÒÅÄÁÎÎÙÊ ÅÊ ÁÒÇÕÍÅÎÔ ÎÅ ÔÁË, ËÁË AM> ×ÙÚÙ×ÁÀÝÉÊ ÅÅ ËÏÄ.

äÁ-ÄÁ. üÔÏ Õ ÔÅÂÑ ÔÑ֣ÌÏÅ ÎÁÓÌÅÄÉÅ C, ÇÄÅ ÔÙ ×ӣ ÜÔÏ ×ÒÕÞÎÕÀ ÄÅÌÁÅÛØ, É ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÍÏÖÅÛØ ÞÔÏ-ÔÏ ÚÁÂÙÔØ. :)

DT>> HÏ ÄÌÑ ÎÁģÖÎÏÓÔÉ ÅÓÔØ ÏÐÃÉÑ "Rebuild All".

AM> :)

HÕ ×ÏÔ ÄÌÑ ÉÚÍÕÞÅÎÎÙÈ ÎÁÒÚÁÎÏÍ. ;)

Dimmy.

Hello, Alex Mogilnikov! You wrote in conference fido7.ru.embedded to Dimmy Timchenko on Sat, 22 Oct 2005 14:38:58

+0400:

AM>>>>> А если наоборот, паскалевский модуль надо использовать AM>>>>> где-то еще? DT>>>> Hапример, где? :) AM>>> Hапример в ассемблерном.

DT>> Паскалевский модуль привязывать к ассемблерному проекту? :) DT>> Тонкое извращение. Обычно делают наоборот.

AM> А как сделать, например, обработчик прерывания? Вход и

В паскале он на паскале и делается, есть, как собственно и в С, соответствующий модификатор у функции. Тут как раз особых проблем нет.

DT>>>> Во-первых, встроенный make проверяет даты файлов и DT>>>> перекомпилирует только обновлённые.

AM>>> Это чревато проблемами. Хорошо если программа просто не AM>>> слинкуется, в худшем же случае будут глюки при выполнении.

DT>> С какой стати?

AM> Допустим, в программе из файла A вызывается функция, реализованная AM> в файле B. Программу скомпилировали и она работает. Затем в этой AM> функции изменили тип аргумента, а в файле A ее вызов изменить AM> забыли. После перекомпиляции модуля B и линковки программы AM> получается такая ситуация: функция интерпретирует переданный AM> ей аргумент не так, как вызывающий ее код.

Не получается, линкер не даст, причем не даст сильнее, чем в случае стандартного объектника. В TPU прописана вся информация о типах. Впрочем в необязательных полях obj ее тоже можно прописывать, так что более-менее паритет. Проблема tpu в нестандартности, несовместимости между версиями и невозможности его использовать вне турбопаскаля. Мне помнится как-то попался tpu от предыдущей версии паскаля, делавший что-то очень для меня полезное (какой-то менеджер дополнительной досовской памяти, я уж не помню сейчас подробностей). И так мне его захотелось, что я собрал с ним тестовую программу старой версией, дизассемблировал ее и по листингу написал на паскале (!) код, компилирующийся один-в один. Благо, кодогенератор у ТР, как я уже говорил, крайне примитивный и при наличии опыта, обратно в паскаль восстановить его не трудно.

DT>> Hо для надёжности есть опция "Rebuild All".

AM> :)

Эта возможность и в make есть.

dima

formatting link

ðÒÉ×ÅÔ Kirill!

22 Oct 05 01:04, Kirill Frolov ÐÉÓÁÌ Alex Mogilnikov:

AM>> 1. ëÏÎÓÔÁÎÔÙ × ÑÚÙËÅ C ÉÍÅÀÔ ÔÉÐ. ôÁË 0 - ÜÔÏ ÃÅÌÁÑ ×ÏÓØÍÅÒÉÞÎÁÑ AM>> ËÏÎÓÔÁÎÔÁ ÔÉÐÁ int.

KF> á ÐÏÞÅÍÕ ÓÏÂÓÔ×ÅÎÎÏ ×ÏÓØÍÅÒÉÞÎÁÑ? íÏÖÅÔ É ÄÅÓÑÔÉÞÎÁÑ. üÔÏ ÓÍÏÔÒÑ KF> ËÁË ÏÐÒÅÄÅÌÑÅÔÓÑ ×ÏÓØÍÅÒÉÞÎÏÅ ÞÉÓÌÏ: 0[0-7]+ ÉÌÉ 0[0-7]*.

6.4.4.1 Integer constants [...]

Description

[...] [#3] A decimal constant begins with a nonzero digit and consists of a sequence of decimal digits. An octal constant consists of the prefix 0 optionally followed by a sequence of the digits 0 through 7 only. A hexadecimal constant consists of the prefix 0x or 0X followed by a sequence of the decimal digits and the letters a (or A) through f (or F) with values 10 through 15 respectively. ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... åÓÌÉ ÄÏÌÇÏ ÄÕÍÁÔØ ÏÄÎÉ É ÔÅ ÖÅ ÍÙÓÌÉ, ÏÎÉ ÓÔÁÎÏ×ÑÔÓÑ ÇÒÑÚÎÙÍÉ.
ðÒÉ×ÅÔ Nickita!

22 Oct 05 01:12, Nickita A Startcev ÐÉÓÁÌ Dmitry Orlov:

NS> imho ËÏÒÅÎØ ÔÏÒÍÏÚÎÕÔÏÓÔÉ ÎÅ × ÏÐÔÉÍÉÚÁÃÉÉ, Á × ÐÒÅÐÒÏÃÅÓÓÉÎÇÅ: NS> ÐÒÅÐÒÏÃÅÓÓÏÒÕ ÓÉÛÎÏÍÕ ÐÒÉÈÏÄÉÔÓÑ ÐÏÄÓÁÓÙ×ÁÔØ ×ÓÅ ÉÎËÌÀÄÎÉËÉ, ÐÁÒÓÉÔØ NS> ÉÈ, ×ÓÔÁ×ÌÑÔØ ÉÎËÌÀÄÎÉËÉ, ÐÁÒÓÉÔØ... Á × ÐÁÓËÁÌÅ ÉÚ TPU/TPL NS> ÉÚ×ÌÅËÁÀÔÓÑ ÕÖÅ "ÏÔÐÁÒÓÅÎÎÙÅ" ÚÁÇÏÌÏ×ËÉ, Ó ËÏÔÏÒÙÍÉ ÇÏÒÁÚÄÏ ÍÅÎØÛÅ NS> ÄÅÊÓÔ×ÉÊ ÎÁÄÏ ÓÏ×ÅÒÛÁÔØ.

óÏÍÎÅ×ÁÀÓØ. úÁÍÅÒÙ ÐÏËÁÚÁÌÉ, ÞÔÏ ÏÂÒÁÂÏÔËÁ ÐÒÅÐÒÏÃÅÓÓÏÒÏÍ ÚÁÎÉÍÁÅÔ ÏËÏÌÏ 10% ×ÒÅÍÅÎÉ ËÏÍÐÉÌÑÃÉÉ. ðÒÁ×ÄÁ Õ ÍÅÎÑ ÎÅ C, Á C++. ÷ÓÅÇÏ ÎÁÉÌÕÞÛÅÇÏ, [Team PCAD 2000] áÌÅËÓÅÊ í. ... þÅÍ ×ÅÔÅÒÉÎÁÒÙ ËÏÒÍÑÔ Ó×ÏÉÈ ÓÏÂÁË? âÅÌÙÊ ÆÏÓÆÏÒ. ÷ÁÛÁ ÓÏÂÁËÁ Ó×ÅÔÉÔÓÑ!

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 22 Oct 2005 08:10:26

+0400:

NA>>> файлы, сокеты, унихтайм всякий - это у процессора? :)

DO>> Это в библиотеке, а не в rtl.

DT> А RTL - это Run Time Library. :)

Так вот оно не в RTL, а просто в библиотеке.

DO>> RTL - это именно то, что я сказал - поддержка компилятора для DO>> нереализуемых аппаратно типов и некоторых конструкций.

DT> А откуда такая дефиниция?

Не помню, но по смыслу понятно должно быть. Без библиотек можно, а вот без RTL - никак, это необходимая часть компилятора.

dima

formatting link

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Kirill Frolov on Sat, 22 Oct 2005 08:19:52

+0400:

DT> В Паскале тоже. Hо паскалевская строка - не массив, а DT> специальная фича для удобства. И действительно, очень удобно! DT> И более наглядно, чем printf.

Как тип может быть удобней или неудобней функции? Неудодбно в паскале, что такую функцию, если надо, приходится писать крайне горбато и вызывать через задницу (drivers.formatstr). А написать таки пришлось...

DT> Кстати, жаль, что ни в C/C++, ни в Паскале нет, например, DT> агрегатов или именованных параметров. А ведь удобно было бы DT> написать, например:

DT> [x,y] = some_func (a, b);

А какой смысл этого выражения?

DT> Он больше, чем 256 не тянет. Hо больше как-то и не DT> требовалось никогда.

А я как-то писал множество на word а не на byte значений. В смысле функции для работы с ним.

dima

formatting link

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 22 Oct 2005 12:14:26

+0400:

DT>>> Hу, стандартный язык - это, пожалуй, только Ада... ;) DT>>> Впрочем, C - тоже стандарт ad hoc de facto. :)

DO>> Hа Паскаль тоже есть стандарт, другое дело, что Борланд его DO>> не придерживается ни разу.

DT> Стандартный Паскаль - язык для обучения, для практической DT> работы малопригодный.

Строго говоря, ТР - тоже.

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

DT>>> Для PC это не так важно.

DO>> Достаточно важно. Именно от этого в программах на ТР столько DO>> встроенного и невстроенного асма.

DT> Да нет, не потому. А от времён 386/486.

Поясни что ты имеешь в виду? Причем тут 386, тем более, что первый ТР вообще под СР/М был...

DT>>> Тут важнее ООП-щиной не увлекаться.

DO>> А она-то чем тебе не угодила? Сама по себе на х86 она DO>> большого оверхеда не дает.

DT> Деревья виртуальных классов, как я понял, линкуются целиком - DT> потому как ссылки разрешаются во время выполнения.

И что?

DO>>>> Да и язык более простой, чем С.

DT>>> Правильно, более простой, понятный и продуманный.

DO>> Hет, просто более простой и менее выразительный.

DT> Hу и чего на паскале нельзя выразить, что можно на C? :) По

Многое на самом деле. Те же операторы ++, += - они яснее выражают что я хочу сделать, чем паскалевские эквиваленты. Стандартная адресная арифметика, которая на паскале заменяется форменным хакерством, причем реально используется. Та же невозможность описать на паскале функцию с переменным числом параметров, что опять же обходится, но опять же некрасиво и полухакерски.

DT> выразительности они где-то близки: в одном есть, например, DT> операции присваивания и пред/постинкремент, зато в другом - DT> параметры-ссылки, строки, диапазоны, сеты, with, модули. :)

И еще много всякой непонятно зачем притянутьй в язык мути.

DT> А вот зато по читаемости Паскаль далеко превосходит C.

Вопрос исключительно стиля и привычки.

DO>> В продуманный язык не суют ввод-вывод, как языковое средство. DO>> В продуманный язык не суют два механизма работы с DO>> динамической памятью. И многие другие вещи.

DT> Здесь они с C примерно в равных условиях. В продуманный язык DT> не суют такое уродство, как printf.

А его и нет в языке - это библиотека, которой ты можешь пользоваться, а можешь и свою написать, в отличие от жестко привязанного к stdout Write, который ты никак изменить не в силах и если у тебя формат вывода должен задаваться динамически, возможно извне, прийдется ручками писать аналог printf, потому что write - это не процедура, это макрос, раскручиваемый компилятором во время компилирования. Причем управление форматом вывода куда более уродское и менее гибкое, чем в [s]printf.

DT> Да и указатели не суют затычкой во все дырки. :)

А то в ТР не так...

dima

formatting link

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 22 Oct 2005 12:25:40

+0400:

DT>>> Hу применить inline-функцию. Да и непосредственное DT>>> обращение к регистрам можно инкапсулировать.

DO>> Hапример как?

DT> Если не нравится косвенное обращение - то в виде оператора DT> выбора или таблицы функций. Hе такой уж большой оверхед

Не понос, так золотуха... Ты знаешь какой оверхед от косвенного вызова функции на i51 или pic16? И потом, ты одинаковые функции для этой таблицы пять раз полностью руками писать предлагаешь? Так тогда можно было без макросов написать пять одинаковых функций с разными названиями портов внутри. А можно было написать один макрос и предоставить функцию его размножения препроцессору.

DT> получится. А если б речь шла о микросекундах, я бы лучше DT> ассемблерную подпрограмму использовал.

Пять ассемблерных подпрограмм (или сколько там изначально было ?). И что бы ты выиграл?

DT> Хотя, конечно, случаи разные бывают. Возможно, у Руслана была DT> ситуация, требующая именно макроса.

Именно макрос в такой ситуации - самое логичное.

DO>>>> А с какими архитектурами ты работал?

DT>>> С фон-Hеймановской и Гарвардской, как и все мы. :)

DO>> А конкретно?

DT> Тебе полный список? :)

Да, желательно.

DT> Тоже верно. Ассемблерные макросы, заменяющие подпрограмму, я DT> использую редко и со скрежетом зубовным.

Я вообще стараюсь ассемблер не использовать, тем более с макросами.

dima

formatting link

Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 22 Oct 2005 12:30:12

+0400:

DO>> быстрей. Потому что и язык проще соответственно проще DO>> лексический анализатор, и оптимизатора практически нет, DO>> потому и кодогенерация быстрей.

DT> Если "язык проще" относится действительно к языку, то "нет DT> оптимизации" - к конкретному компилятору.

Речь о ТР шла.

dima

formatting link

Hello Dimmy!

21 Oct 05 15:34, Dimmy Timchenko wrote to Sergey Brylew:

MB>>>> õ ÍÅÎÑ ÂÙÌÁ "üÌÅËÔpÏÎÉËÁ óí-1800", ÇpÏÂÉÎÁ ÔÁ Åݣ, ÏÎÁ MB>>>> ×ÓÔpÁÉ×ÁÌÁÓØ × ÓÔÏÌ ÔÉÐÁ ÐÉÓØÍÅÎÎÏÇÏ.

DT>>> õ ÎÁÓ ÐÏÚÖÅ ÔÏÖÅ ÔÁËÁÑ ÂÙÌÁ. á ÓÎÁÞÁÌÁ - ÂÏÌÅÅ ËÏÍÐÁËÔÎÁÑ DT>>> "ë1-30".

õÇÕ. âÙÌÉ É ÔÁËÉÅ - 19" ÔÕÍÂÁ Ó ÂÏÌØÛÏÊ ÓÔÏÌÅÛÎÉÃÅÊ, ËÁË ÏÄÎÏÔÕÍÂÏ×ÙÊ ÐÉÓØÍÅÎÎÙÊ ÓÔÏÌ. á Ñ ÌÉÞÎÏ ÒÁÚÏÂÒÁÌ Ó×ÏÀ 1800 (ÉÌÉ 1804?) - ÔÁË ÏÎÁ ÂÙÌÁ × ÓÔÁÎÄÁÒÔÎÏÊ 19" ÓÔÏÊËÅ.

SB>> HÜ ÎÁÄÁ. ÷ ÎÁÞÁÌÅ ÂÙÌÁ "ë1-10".

DT> K1-10 - ÜÔÏ, ÅÓÌÉ Ñ ÎÅ ÐÕÔÁÀ, ÔÁËÁÑ ÆÉÔÀÌØËÁ Ó HEX-ËÌÁ×ÉÁÔÕÒÏÊ, ÇÄÅ DT> ÐÒÏÇÒÁÍÍÁ ÎÁÂÉ×ÁÌÁÓØ × ËÏÄÁÈ.

õÇÕ. åÝÅ Ë ÎÅÊ ÍÏÖÎÏ ÂÙÌÏ ÐÒÉÃÅÐÉÔØ ÐÅÒÆÏÌÅÎÔÏÞÎÏÅ ÏÂÏÒÕÄÏ×ÁÎÉÅ.

SB>> á ÎÁËÏÐÉÔÅÌØ çíä7012. ëÏÔÏÒÙÊ ÄÉÓËÅÔÙ ÎÅ ÒÁÚÍÅÞÁÌ. á ÞÔÏÂÙ SB>> ÒÁÚÍÅÞÁÌ, ÎÕÖÎÏ ÂÙÌÏ ÓßÅÚÄÉÔØ × ÓÏÌÎÅÞÎÕÀ áÒÍÅÎÉÀ É ÏÔÄÅÌØÎÏ Õ SB>> ÒÁÚÒÁÂÏÔÞÉËÏ× ËÕÐÉÔØ ðúõ Ó ÐÒÏÇÒÁÍÍÏÊ ÒÁÚÍÅÔËÉ.

DT> HÁ "üÌÅËÔÒÏÎÉËÅ-1800" ÕÖÅ ÓÔÏÑÌ ÔÁËÏÊ, ËÏÔÏÒÙÊ ÍÏÇ ÒÁÚÍÅÞÁÔØ.

7012 - ÜÔÏ ÉÚ ËÏÍÐÌÅËÔÁ ü-60, Õ ÎÉÈ, ÐÏÞÅÍÕ-ÔÏ, ÔÒÁÄÉÃÉÏÎÎÏ ÄÉÓËÅÔÙ ÎÅ ÒÁÚÍÅÞÁÌÉÓØ: ×ÓÐÏÍÎÉ ÂÏÌÅÅ ÐÏÚÄÎÀÀ ü-85. á Õ 1800 ÂÙÌ (ÏÔÎÏÓÉÔÅÌØÎÏ) ÓÔÁÎÄÁÒÔÎÙÊ ËÏÎÔÒÏÌÅÒ × ÓÁÍÏÊ ÍÁÛÉÎËÅ É ÄÉÓËÏ×ÏÄÙ ÓÏ ÓÔÁÎÄÁÒÔÎÙÍ ÖÅ ÉÎÔÅÒÆÅÊÓÏÍ, ÐÒÉ ÖÅÌÁÎÉÉ, Ë ÎÅÍÕ ÍÏÖÎÏ ÂÙÌÏ ÚÁÃÅÐÉÔØ É 5-, É ÄÁÖÅ 3-ÄÀÊÍÏ×ÙÅ ÄÉÓËÏ×ÏÄÙ, ÐÏÓÌÅ ÍÉÎÉÍÁÌØÎÏÊ ÄÏÒÁÂÏÔËÉ ÉÎÔÅÒÆÅÊÓÁ.

÷ÓÅÇÏ ÄÏÂÒÏÇÏ!

á. úÁÂÁÊÒÁÃËÉÊ.

Hello Dimmy!

21 Oct 05 15:43, Dimmy Timchenko wrote to Andrey Solomatov:

AS>> ëÏÍÐÉÌÑÔÏÒ ÜÌÅÍÅÎÔÁÒÎÏ ÆÉÇÅÅÔ É ÉÝÅÔ ÂÌÉÖÁÊÛÕÀ "ÂÁÌÁÎÓÎÕÀ" AS>> ÓËÏÂËÕ. þÔÏ ÐÒÉ ÓÒÅÄÎÅÊ ÓÌÏÖÎÏÓÔÉ ËÏÄÁ ÍÏÖÅÔ ÄÁÔØ ËÒÁÊÎÅ AS>> *×ÙÞÕÒÎÙÅ* ÒÅÚÕÌØÔÁÔÙ (×ÐÌÏÔØ ÄÏ "ÈÁ-ÁÁÞÕ ÓËÏÂËÕ" × ÓÁÍÏÍ ËÏÎÃÅ AS>> ÆÁÊÌÁ).

DT> äÁ, Õ ÐÁÓËÁÌÑ ÔÏÖÅ ÔÁËÏÅ ÂÙ×ÁÅÔ. :)

"HÁÓÔÏÑÝÉÅ ÐÒÏÇÒÁÍÍÉÓÔÙ ÎÅ ÉÓÐÏÌØÚÕÀÔ ðÁÓËÁÌØ" (Ó) üÄ ðÏÓÔ.

÷ÓÅÇÏ ÄÏÂÒÏÇÏ! á. úÁÂÁÊÒÁÃËÉÊ.

Hi Andrey !

óÏ×ÓÅÍ ÎÅÄÁ×ÎÏ 21 Oct 05 12:34, Andrey Solomatov ÐÉÓÁÌ Ë Ruslan Mohniuc:

RM>> HÕ ÎÁÐÒÉÍÅÒ ËÏÎËÒÅÔÎÏ ÜÔÏ Õ ÍÅÎÑ - ÞÅÔÙÒÅ ÓÏÆÔÏ×ÙÈ ÍÁÓÔÅÒ-ÐÏÒÔÁ RM>> ÍÏÄÂÁÓÏ×ÙÈ RS485. ïÔÌÉÞÁÀÔÓÑ ÔÏÌØËÏ ÁÄÒÅÓÁÍÉ, ÐÏ ËÏÔÏÒÙÍ ÉÈ RM>> ÓÔÒÕËÔÕÒÙ ÖÉ×ÕÔ, É ÖÅÌÅÚÑÞÎÙÍÉ ÐÒÉ×ÑÚËÁÍÉ (ÔÁÊÍÅÒ, ÎÏÇÉ). åÓÌÉ RM>> ÏÒÇÁÎÉÚÏ×Ù×ÁÀ ËÁË ÆÕÎËÃÉÀ, ÔÏ ÅÓÔØ ÐÅÒÅÄÁÀ × ÎÅÅ ÕËÁÚÁÔÅÌØ ÎÁ RM>> ÓÔÒÕËÔÕÒÕ ÔÅËÕÝÅÇÏ ÐÏÒÔÁ,

AS> åÓÌÉ-ÂÙ ÉÓÐÏÌØÚÏ×ÁÔØ C++ - ÔÏ ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÓÙÌËÉ É ÉÎÌÁÊÎÙ. AS> ôÁÓËÉÎÇ (*×ÒÏÄÅ-ÂÙ*) × ÜÔÏÍ ÓÌÕÞÁÅ ÓÐÏÓÏÂÅÎ ÐÏÎÑÔØ, ÞÔÏ × ÜÔÏÍ ÓÌÕÞÁÅ AS> ÐÏÄÓÔÁ×ÌÑÀÔÓÑ ÐÒÑÍÙÅ ÏÂÒÁÝÅÎÉÑ Ë ÐÏÒÔÁÍ. HÕ Ñ × ÏÂÙÞÎÏÍ ÓÉ ÓÉÖÕ. HÅÔÕ Ó++ (Õ ÍÅÎÑ) ÐÏÄ PIC18.

WBRgrds Ruslan

ðÒÉ×ÅÔ, Alex !

22 Oct 05 , 17:51 Alex Mogilnikov ÐÉÓÁÌ Ë Nickita A Startcev:

NS>> imho ËÏÒÅÎØ ÔÏÒÍÏÚÎÕÔÏÓÔÉ ÎÅ × ÏÐÔÉÍÉÚÁÃÉÉ, Á × ÐÒÅÐÒÏÃÅÓÓÉÎÇÅ: NS>> ÐÒÅÐÒÏÃÅÓÓÏÒÕ ÓÉÛÎÏÍÕ ÐÒÉÈÏÄÉÔÓÑ ÐÏÄÓÁÓÙ×ÁÔØ ×ÓÅ ÉÎËÌÀÄÎÉËÉ, NS>> ÐÁÒÓÉÔØ ÉÈ, ×ÓÔÁ×ÌÑÔØ ÉÎËÌÀÄÎÉËÉ, ÐÁÒÓÉÔØ... Á × ÐÁÓËÁÌÅ ÉÚ NS>> TPU/TPL ÉÚ×ÌÅËÁÀÔÓÑ ÕÖÅ "ÏÔÐÁÒÓÅÎÎÙÅ" ÚÁÇÏÌÏ×ËÉ, Ó ËÏÔÏÒÙÍÉ NS>> ÇÏÒÁÚÄÏ ÍÅÎØÛÅ ÄÅÊÓÔ×ÉÊ ÎÁÄÏ ÓÏ×ÅÒÛÁÔØ.

AM> óÏÍÎÅ×ÁÀÓØ. úÁÍÅÒÙ ÐÏËÁÚÁÌÉ, ÞÔÏ ÏÂÒÁÂÏÔËÁ ÐÒÅÐÒÏÃÅÓÓÏÒÏÍ ÚÁÎÉÍÁÅÔ AM> ÏËÏÌÏ 10% ×ÒÅÍÅÎÉ ËÏÍÐÉÌÑÃÉÉ. ðÒÁ×ÄÁ Õ ÍÅÎÑ ÎÅ C, Á C++.

÷ÒÅÍÑ - ÜÔÏ cpu time ÉÌÉ ×ÒÅÍÑ ÏÔ ÚÁÐÕÓËÁ ÄÏ ÏËÏÎÞÁÎÉÑ? á ÎÁ ËÁËÏÍ ËÏÄÅ ÓÍÏÔÒÅÌ? ó ÍÁÌÅÎØËÉÍÉ ÉÎËÌÀÄÎÉËÁÍÉ É ÂÅÚ ÔÅÍÐÌÅÊÔÏ×?

. ó Õ×ÁÖÅÎÉÅÍ, HÉËÉÔÁ. icq:240059686, lj-user:nicka_startcev ... HÁ ÓÌÅÄÕÀÝÉÊ ÄÅÎØ ÓÏÛÌÉ ÎÁ ÂÅÒÅÇ, ÇÄÅ É ÐÅÒÅÄÒÁÌÉÓØ ÍÅÖ ÓÏÂÏÊ.

ðÒÉ×ÅÔ, Dimmy !

22 Oct 05 , 08:53 Dimmy Timchenko ÐÉÓÁÌ Ë Nickita A Startcev:

DT>>> HÁÐÒÉÍÅÒ, size_t ×ÍÅÓÔÏ int.

NAS>> éÌÉ, ÞÔÏ ÞÁÝÅ, uint32_t, int8_t ÉÔÄ?

DT> óÁÍÁ ÉÄÅÑ ÎÅ ÏÞÅÎØ ÈÏÒÏÛÁÑ - ÚÁ×ÑÚÙ×ÁÔØÓÑ ÎÁ ÒÁÚÒÑÄÎÏÓÔØ,

ðÏÞÅÍÕ? imho × ÂÏÌØÛÉÎÓÔ×Å "ÍÁÔÅÍÁÔÉÞÅÓËÉÈ" ÁÌÇÏÒÉÔÍÏ× ÒÁÚÒÑÄÎÏÓÔØ ×ÁÖÎÁ É ÎÕÖÎÁ. [skip] DT> ÉÌÉ ÒÁÚÎÙÅ ÈÉÔÒÙÅ ÔÉÐÙ Win32 API, ËÏÔÏÒÙÅ ÞÁÝÅ ×ÓÅÇÏ Ó×ÏÄÑÔÓÑ Ë long DT> ÉÌÉ *void. ÎÅ, ÎÕÎÁÆÉÇ ×ÓÅ ÜÔÉ ×ÉÎÄÏ×ÙÅ áëáÛËÉ ÄÌÑ void*. :)

. ó Õ×ÁÖÅÎÉÅÍ, HÉËÉÔÁ. icq:240059686, lj-user:nicka_startcev ... HÁÄÏ ÌÉ ×ÙÂÒÁÔØ ËÁÝÅÎÉÔÁ × ÍÏÄÅÒÁÔÏÒÙ ÍÉÓÔÒÅÓÏ×?

ðÒÉ×ÅÔ, Dimmy !

22 Oct 05 , 09:19 Dimmy Timchenko ÐÉÓÁÌ Ë Kirill Frolov:

KF>> üÔÏ -- ËÏÎÃÅÐÔÕÁÌØÎÙÊ ÍÉÎÉÍÁÌÉÚÍ. HÕÖÎÙ ÄÒÕÇÉÅ ÓÔÒÏËÉ -- ÂÅÒÉ KF>> ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ ÂÉÂÌÉÏÔÅËÕ.

DT> HÕ, × ÏÂÝÅÍ, ÄÁ, × C++ ÜÔÏ ÕÖÅ ÍÏÖÎÏ.

HÏ Ó ÎÅËÏÔÏÒÙÍÉ ÐÒÉËÏÌÁÍÉ. úÁÐÉÓØ "foobar\n" ÂÕÄÅÔ ÐÒÏÉÎÔÅÒÐÒÅÔÉÒÏ×ÁÎÁ ËÏÍÐÉÌÑÔÏÒÏÍ ËÁË "const char*", Á ÎÅ ËÁË ÓÔÒÏËÁ ËÁËÏÇÏ-ÎÉÂÕÄØ ÐÒÁ×ÉÌØÎÏÇÏ ÂÉÂÌÉÏÔÅÞÎÏÇÏ ÔÉÐÁ.

þÔÏ-ÔÏ-ÔÁÍ::string foo; foo= "Foo" + " bar"; ÐÒÁËÔÉÞÅÓËÉ ×ÓÅÇÄÁ ÂÕÄÅÔ ×ÅÓÔÉ ÓÅÂÑ ÎÅ ÔÁË, ËÁË ÈÏÔÅÌÏÓØ ÂÙ ÐÁÓËÁÌÉÓÔÁÍ ÉÌÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍ ÜÔÏÇÏ ÒÁÓÛÉÒÅÎÎÏÇÏ ÓÔÒÏËÏ×ÏÇÏ ÔÉÐÁ.

. ó Õ×ÁÖÅÎÉÅÍ, HÉËÉÔÁ. icq:240059686, lj-user:nicka_startcev ... õ ÍÅÎÑ ÅÓÔØ Ó×ϣ ÍÎÅÎÉÅ ÐÏ ÜÔÏÍÕ ×ÏÐÒÏÓÕ. HÏ Ñ Ó ÎÉÍ ÎÅ ÓÏÇÌÁ...

Hello Dmitry.

Sat Oct 22 2005 18:02, Dmitry Orlov wrote to me:

DT>> ÷ ðÁÓËÁÌÅ ÔÏÖÅ. HÏ ÐÁÓËÁÌÅ×ÓËÁÑ ÓÔÒÏËÁ - ÎÅ ÍÁÓÓÉ×, Á DT>> ÓÐÅÃÉÁÌØÎÁÑ ÆÉÞÁ ÄÌÑ ÕÄÏÂÓÔ×Á. é ÄÅÊÓÔ×ÉÔÅÌØÎÏ, ÏÞÅÎØ ÕÄÏÂÎÏ! DT>> é ÂÏÌÅÅ ÎÁÇÌÑÄÎÏ, ÞÅÍ printf.

DO> ëÁË ÔÉÐ ÍÏÖÅÔ ÂÙÔØ ÕÄÏÂÎÅÊ ÉÌÉ ÎÅÕÄÏÂÎÅÊ ÆÕÎËÃÉÉ?

ðÏÔÏÍÕ ÞÔÏ ËÏÎËÁÔÅÎÁÃÉÑ ÓÔÒÏË ÉÓÐÏÌØÚÕÅÔÓÑ × ÔÏÍ ÞÉÓÌÅ ÄÌÑ ÆÏÒÍÉÒÏ×ÁÎÉÑ ÓÏÏÂÝÅÎÉÊ.

DO> HÅÕÄÏÄÂÎÏ × ÐÁÓËÁÌÅ, ÞÔÏ ÔÁËÕÀ ÆÕÎËÃÉÀ, ÅÓÌÉ ÎÁÄÏ,

á ÚÁÞÅÍ ÏÎÏ ÍÏÖÅÔ ÂÙÔØ ÎÁÄÏ? HÉ ÒÁÚÕ × ÜÔÏ ÎÅ ÕÐÉÒÁÌÓÑ. ïÞÅÎØ ÎÅÂÅÚÏÐÁÓÎÙÊ ÍÅÈÁÎÉÚÍ, ËÓÔÁÔÉ! ëÕÄÁ ÐÒÁ×ÉÌØÎÅÅ ÉÍÅÔØ ÍÁÌÅÎØËÉÅ ÆÕÎËÃÉÉ, ÐÒÅÏÂÒÁÚÕÀÝÉÅ É ÆÏÒÍÁÔÉÒÕÀÝÉÅ, ÎÁÐÒÉÍÅÒ, ÞÉÓÌÏ×ÙÅ ÚÎÁÞÅÎÉÑ × ÓÔÒÏËÉ É "ÓËÌÁÄÙ×ÁÔØ" ÒÅÚÕÌØÔÁÔ ÉÈ ÒÁÂÏÔÙ ÓÏ ÓÔÒÏÞÎÙÍÉ ËÏÎÓÔÁÎÔÁÍÉ.

DT>> [x,y] = some_func (a, b);

DO> á ËÁËÏÊ ÓÍÙÓÌ ÜÔÏÇÏ ×ÙÒÁÖÅÎÉÑ?

lvalue ÓÏÓÔÏÉÔ ÎÅ ÉÚ ÏÄÎÏÊ ÐÅÒÅÍÅÎÎÏÊ, Á ÉÚ ÎÅÓËÏÌØËÉÈ.

DT>> ïÎ ÂÏÌØÛÅ, ÞÅÍ 256 ÎÅ ÔÑÎÅÔ. HÏ ÂÏÌØÛÅ ËÁË-ÔÏ É ÎÅ ÔÒÅÂÏ×ÁÌÏÓØ DT>> ÎÉËÏÇÄÁ.

DO> á Ñ ËÁË-ÔÏ ÐÉÓÁÌ ÍÎÏÖÅÓÔ×Ï ÎÁ word Á ÎÅ ÎÁ byte ÚÎÁÞÅÎÉÊ. ÷ ÓÍÙÓÌÅ DO> ÆÕÎËÃÉÉ ÄÌÑ ÒÁÂÏÔÙ Ó ÎÉÍ.

á ÜÔÏ ÍÎÏÖÅÓÔ×Ï ÞÅÇÏ ÂÙÌÏ? :)

Dimmy.

Hello Dmitry.

Sat Oct 22 2005 18:23, Dmitry Orlov wrote to me:

DT>> óÔÁÎÄÁÒÔÎÙÊ ðÁÓËÁÌØ - ÑÚÙË ÄÌÑ ÏÂÕÞÅÎÉÑ, ÄÌÑ ÐÒÁËÔÉÞÅÓËÏÊ DT>> ÒÁÂÏÔÙ ÍÁÌÏÐÒÉÇÏÄÎÙÊ.

DO> óÔÒÏÇÏ ÇÏ×ÏÒÑ, ôò - ÔÏÖÅ.

üÔÏ ÓÌÉÛËÏÍ ÓÔÒÏÇÏ. :) BP7 - ÎÉÞÅÍ ÎÅ ÈÕÖÅ ÓÉÛÎÙÈ ËÏÍÐÉÌÑÔÏÒÏ× ÔÅÈ ×ÒÅͣÎ. é ÇÏÒÁÚÄÏ ÕÄÏÂÎÅÅ ÓÏ×ÒÅÍÅÎÎÙÈ ÉÍ TurboC.

DO>>> äÏÓÔÁÔÏÞÎÏ ×ÁÖÎÏ. éÍÅÎÎÏ ÏÔ ÜÔÏÇÏ × ÐÒÏÇÒÁÍÍÁÈ ÎÁ ôò ÓÔÏÌØËÏ DO>>> ×ÓÔÒÏÅÎÎÏÇÏ É ÎÅ×ÓÔÒÏÅÎÎÏÇÏ ÁÓÍÁ.

DT>> äÁ ÎÅÔ, ÎÅ ÐÏÔÏÍÕ. á ÏÔ ×ÒÅͣÎ 386/486.

DO> ðÏÑÓÎÉ ÞÔÏ ÔÙ ÉÍÅÅÛØ × ×ÉÄÕ? ðÒÉÞÅÍ ÔÕÔ 386, ÔÅÍ ÂÏÌÅÅ, ÞÔÏ ÐÅÒ×ÙÊ ôò DO> ×ÏÏÂÝÅ ÐÏÄ óò/í ÂÙÌ...

çÎÁÌÉÓØ ÚÁ ÔÕÒÂÏ-ÂÙÓÔÒÏÄÅÊÓÔ×ÉÅÍ. HÁ ÓÁÍÏÍ ÄÅÌÅ × TP/OP ÅÓÔØ ×ÓÅ ÓÒÅÄÓÔ×Á ÄÌÑ ÒÁÂÏÔÙ Ó ÎÉÚËÉÍ ÕÒÏ×ÎÅÍ.

DT>>>> ôÕÔ ×ÁÖÎÅÅ ïïð-ÝÉÎÏÊ ÎÅ Õ×ÌÅËÁÔØÓÑ.

DO>>> á ÏÎÁ-ÔÏ ÞÅÍ ÔÅÂÅ ÎÅ ÕÇÏÄÉÌÁ? óÁÍÁ ÐÏ ÓÅÂÅ ÎÁ È86 ÏÎÁ DO>>> ÂÏÌØÛÏÇÏ Ï×ÅÒÈÅÄÁ ÎÅ ÄÁÅÔ.

DT>> äÅÒÅ×ØÑ ×ÉÒÔÕÁÌØÎÙÈ ËÌÁÓÓÏ×, ËÁË Ñ ÐÏÎÑÌ, ÌÉÎËÕÀÔÓÑ ÃÅÌÉËÏÍ - DT>> ÐÏÔÏÍÕ ËÁË ÓÓÙÌËÉ ÒÁÚÒÅÛÁÀÔÓÑ ×Ï ×ÒÅÍÑ ×ÙÐÏÌÎÅÎÉÑ.

DO> é ÞÔÏ?

äÁ ÎÉÞÅÇÏ. ôÁËÏÊ ÏÂߣÍ ËÏÄÁ ÐÅÒÅËÒÏÅÔ ×ÙÇÏÄÙ ÌÀÂÏÊ ÏÐÔÉÍÉÚÁÃÉÉ. ðÒÅÓÌÏ×ÕÔÁÑ KOL/MCK ÐÏÚ×ÏÌÑÅÔ ÓÏÂÉÒÁÔØ "×ÉÚÕÁÌØÎÙÅ" ÐÒÏÇÒÁÍÍÙ ÎÁ ÄÅÌØÆÉ ÒÁÚÍÅÒÁÍÉ ÄÅÓÑÔËÉ-ÓÏÔÎÉ ËÉÌÏÂÁÊÔ, Á ÎÅ ÍÅÇÁÂÁÊÔÙ. é ×ӣ ÐÏÔÏÍÕ, ÞÔÏ ÉÓÐÏÌØÚÕÅÔÓÑ ÍÅÈÁÎÉÚÍ object ×ÍÅÓÔÏ class É ÞÔÏ-ÔÏ ÔÁÍ ÌÉÎËÕÅÔÓÑ ÓÔÁÔÉÞÅÓËÉ, Á ÎÅ ÄÉÎÁÍÉÞÅÓËÉ. ëÁË ÔÏÞÎÏ ÜÔÏ ÄÅÌÁÅÔÓÑ, Ñ ÎÅ ÒÁÚÂÉÒÁÌÓÑ, ÐÏÔÏÍÕ ËÁË ÎÅ ÌÀÂÉÔÅÌØ ïïð.

DO>>>>> äÁ É ÑÚÙË ÂÏÌÅÅ ÐÒÏÓÔÏÊ, ÞÅÍ ó.

DT>>>> ðÒÁ×ÉÌØÎÏ, ÂÏÌÅÅ ÐÒÏÓÔÏÊ, ÐÏÎÑÔÎÙÊ É ÐÒÏÄÕÍÁÎÎÙÊ.

DO>>> HÅÔ, ÐÒÏÓÔÏ ÂÏÌÅÅ ÐÒÏÓÔÏÊ É ÍÅÎÅÅ ×ÙÒÁÚÉÔÅÌØÎÙÊ.

DT>> HÕ É ÞÅÇÏ ÎÁ ÐÁÓËÁÌÅ ÎÅÌØÚÑ ×ÙÒÁÚÉÔØ, ÞÔÏ ÍÏÖÎÏ ÎÁ C? :) ðÏ

DO> íÎÏÇÏÅ ÎÁ ÓÁÍÏÍ ÄÅÌÅ. ôÅ ÖÅ ÏÐÅÒÁÔÏÒÙ ++, += - ÏÎÉ ÑÓÎÅÅ ×ÙÒÁÖÁÀÔ ÞÔÏ Ñ DO> ÈÏÞÕ ÓÄÅÌÁÔØ, ÞÅÍ ÐÁÓËÁÌÅ×ÓËÉÅ ÜË×É×ÁÌÅÎÔÙ.

Inc, Dec... üÔÏ ×ÏÐÒÏÓ ×ËÕÓÁ. á Ñ ÍÏÇÕ ÓËÁÚÁÔØ, ÞÔÏ ÂÅÚ ÄÉÁÐÁÚÏÎÏ× ÖÉÔØ ÎÅÌØÚÑ, Á ÎÕÍÅÒÁÃÉÑ Ó ÎÕÌÑ - ÉÚ×ÒÁÔ.

DO> óÔÁÎÄÁÒÔÎÁÑ ÁÄÒÅÓÎÁÑ ÁÒÉÆÍÅÔÉËÁ, ËÏÔÏÒÁÑ ÎÁ ÐÁÓËÁÌÅ ÚÁÍÅÎÑÅÔÓÑ DO> ÆÏÒÍÅÎÎÙÍ ÈÁËÅÒÓÔ×ÏÍ,

úÁ ËÁËÉÍ ޣÒÔÏÍ × ÐÒÏÇÒÁÍÍÅ ÎÕÖÎÁ "ÓÔÁÎÄÁÒÔÎÁÑ ÁÄÒÅÓÎÁÑ ÁÒÉÆÍÅÔÉËÁ"? ñ÷õ ×ÅÄØ ËÁË ÒÁÚ É ÏÔÄÅÌÑÅÔ ÐÒÏÇÒÁÍÍÉÓÔÁ ÏÔ ÔÁËÉÈ ÎÉÚËÏÕÒÏ×ÎÅ×ÙÈ ÐÏÄÒÏÂÎÏÓÔÅÊ, ÐÒÅÄÏÓÔÁ×ÌÑÑ ÂÏÌÅÅ "ÐÒÁ×ÉÌØÎÙÅ" ÁÂÓÔÒÁËÃÉÉ.

DO> ÐÒÉÞÅÍ ÒÅÁÌØÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ. ôÁ ÖÅ ÎÅ×ÏÚÍÏÖÎÏÓÔØ ÏÐÉÓÁÔØ ÎÁ ÐÁÓËÁÌÅ DO> ÆÕÎËÃÉÀ Ó ÐÅÒÅÍÅÎÎÙÍ ÞÉÓÌÏÍ ÐÁÒÁÍÅÔÒÏ×

ôÙ ÈÏÞÅÛØ ÓËÁÚÁÔØ, ÞÔÏ ÐÒÅÓÌÏ×ÕÔÙÊ ÜÌÌÉÐÓÉÓ É argc/argv - ÜÔÏ ÎÅ ÕÚÁËÏÎÅÎÎÏÅ ÈÁËÅÒÓÔ×Ï?!

DT>> äÁ É ÕËÁÚÁÔÅÌÉ ÎÅ ÓÕÀÔ ÚÁÔÙÞËÏÊ ×Ï ×ÓÅ ÄÙÒËÉ. :)

DO> á ÔÏ × ôò ÎÅ ÔÁË...

í-ÄÁ... ÓÔÒÁÎÎÙÊ ÔÙ. ñ ÐÉÓÁÌ ÎÁ TP/BP ÄÏ×ÏÌØÎÏ ÍÎÏÇÏ, É ÓÓÙÌËÉ ÉÓÐÏÌØÚÏ×ÁÌ ÔÏÌØËÏ ÄÌÑ ÒÁÂÏÔÙ Ó ÄÉÎÁÍÉÞÅÓËÉÍÉ ÏÂßÅËÔÁÍÉ.

Dimmy.

Hello Dmitry.

Sat Oct 22 2005 15:39, Dmitry Lyokhin wrote to me:

DT>> ëÓÔÁÔÉ, ÖÁÌØ, ÞÔÏ ÎÉ × C/C++, ÎÉ × ðÁÓËÁÌÅ ÎÅÔ, ÎÁÐÒÉÍÅÒ, ÁÇÒÅÇÁÔÏ× DT>> ÉÌÉ ÉÍÅÎÏ×ÁÎÎÙÈ ÐÁÒÁÍÅÔÒÏ×. á ×ÅÄØ ÕÄÏÂÎÏ ÂÙÌÏ ÂÙ ÎÁÐÉÓÁÔØ, ÎÁÐÒÉÍÅÒ:

DT>> [x,y] = some_func (a, b);

DL> þÉÔÁÊ ËÎÉÖËÉ ÐÏ ã++, ÛÁÂÌÏÎÁÍ, STL, boost, loki ÎÁ ËÌÀÞÅ×ÏÅ ÓÌÏ×Ï DL> tuple. éÚ×ÒÁÝÅÎÉÅ ×ÓÅ ÜÔÏ...

íÏÖÅÔ, ËÏÇÄÁ-ÎÉÂÕÄØ ÄÏÂÅÒÕÓØ. ðÏËÁ ÅÓÔØ ÄÒÕÇÉÅ ÐÒÉÏÒÉÔÅÔÙ. :)

DL> äÁ, ÎÁ ×ÓÑËÉÊ ÓÌÕÞÁÊ... ÕÓÔÒÉÃÙ ÔÙ ÐÒÏÂÏ×ÁÌ ? ;)

ðÒÏÂÏ×ÁÔØ - ÎÅ ÚÎÁÞÉÔ ËÁÖÄÙÊ ÄÅÎØ ÓßÅÄÁÔØ ËÉÌÏ ÎÁ ÚÁ×ÔÒÁË. ;)

Dimmy.

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required