Embedded OS

Mar 08, 2005 Last reply: 21 years ago 1304 Replies
16-Mar-05 08:12 Andrej Arnold wrote to Leha Bishletov:

AA> Как в таких случаях говорят - не ставь телегу впереди лошади.

AA> А прямым текстом - эти макросы были написаны ещё тогда, AA> когда и такой абревиатуры авр никто и не слыхивал.

Я немного позанудствую.

Речь шла отнюдь не о портировании макросов.

15-Mar-05 21:50 Olga Nonova wrote to Leha Bishletov:

ON>>> Грамотные ассемблерщики работают в макросах, библиотеку которых

------------------------------^^^^^^^^^^^^^^^^^^^ ON>>> каждый создал и отладил сам для себя. Чисто машинных команд в ON>>> исходниках практически не встречается. Поэтому, для перехода на

---------------------------------------------^^^^^^^^^^^^^^^^^^^^^^^ ON>>> другую платформу перелопачивать килобайты ассемблера вовсе не

------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ON>>> требуется.

------^^^^^^^^^^

LB>> Можно увидеть хотя бы фрагмент этих макросов? Особенно интересно, как

-------------------------------------^^^^ LB>> решается задача по контролю соответствия типов (на С это происходит LB>> автоматически). Еще было бы не плохо, если бы была возможность LB>> организовать т.н. "компилированый стек".

И вот в качестве примера макросов, сильно облегчающих переход на другую платформу (перевод ПРОГРАММЫ, а не этих макросов) выдано несколько макросов, которые, не спорю, облегчают написание и сопровождение программы, но перевод её на другую платформу... "облиште своi дiвочi мрii"

ON> MoveByte MACRO Byt1,Byt2 ON> lds R16,Byt1 ON> sts Byt2,R16 ON> ENDM Всё вроде бы нормально. На первый взгляд этот макрос (макрос, а не программа!) в пол-чиха портируется на любой макроассемблер. На второй - на MCS51 вдруг захочется уточнить - а между чем и чем (data/idata/xdata) этот макрос должен перегонять информацию. Имеется-то, извините, 9 комбинаций. Ну ладно, смело предположим, что мы нашли для MCS51 макроассемблер с операцией spaceof(var), возвращающей пространство размещения Byt1, Byt2 и через условную компиляцию слепили макрос, который делает всё, что надо. На третий - натыкаемся на процессор с одним-двумя аккумуляторами или там вообще с одним рабочим регистром, который портится при использовании легко спортированного МАКРОСА, копирующего память в память. А ПРОГРАММА, на минуточку так, писалась в расчёте на 32-роновый AVR и в 90% (ну пусть 30%, от этого не легче) мест в этих ронах в процессе работы макроса лежала спокойно необходимая для работы информация. И программу перелопачивать всю. А вот с Byt2 = Byt1; таких проблем не будет.

Единственное, на мой взгляд, что действительно перенесётся легко с процессора на процессор благодаря макросам - это "виртуализированные" вычисления. В смысле использования виртуальной машины. Заводим один-два 32-битных аккумулятора (у AVR - на РОН, у pic16 - в регистровом файле, у 68hc11 - в странице короткой адресации). И пишем себе _load varX _mul varX _store temp1 _load varY _mul varY _add temp1 _sqrt _cmp varR brsh куда_надо

Да, такое перенесётся легко после реализации такой же виртуальной машины. Но всё остальное - всё то, что использует не виртуальный вычислитель, а реальное ядро - макросы перенести помогут слабо. И чем эффективнее использует - тем тяжелее перенести (т.е. тем ближе к написанию новой программы глядя на старую как на справку по алгоритмам). А если ВСЯ программа сделана не для реального процессора, а для реализованного на нём виртуального - то как-то тогда не совсем понятно -

1) при чём тут асемблер _реального_ процессора и разговоры о _переносе_ _ассемблерной_ программы, а не о _реализации_ виртуальной машины на другой платформе 2) не лучше ли сразу было взять Forth или слепить с его (или не с его) помощью компилятор нужного задаче-ориентированного языка в "ассемблер" выбранной виртуальной машины.

wbr,

Hello, Olga Nonova !

óËÏÌØËÏ ÍÏÖÎÏ ÐÏ×ÔÏÒÑÔØ ÏÄÎÕ É ÔÕ ÖÅ ÞÕÛØ?

ïÔ ÓÏÂÓÔ×ÅÎÎÏÊ ÇÌÕÐÏÓÔÉ É ÎÅÕÍÅÎÉÑ ÒÁÂÏÔÁÔØ.

HÅ Ó ñ÷õ, Á Ó ÎÅËÏÔÏÒÙÍÉ ÉÈ ÒÅÁÌÉÚÁÃÉÑÍÉ. ôÏ ÅÓÔØ ÏÂßÅÄÉÎÅÎÉÅ ÎÅÄÏÓÔÁÔËÏ×, Ó×ÑÚÁÎÎÙÈ Ó ÐÏÒÏÖÄÁÅÍÙÍ Ï×ÅÒÈÅÄÏÍ (ÂïÌØÛÅÍ ÞÅÍ × ÓÌÕÞÁÅ Ó ñ÷õ) É ÐÒÉ ÜÔÏÍ ÏÔÓÕÔÓ×ÉÅÍ Á×ÔÏÍÁÔÉÚÁÃÉÉ ÔÒÉ×ÉÁÌØÎÙÈ ÄÅÊÓÔ×ÉÊ, ËÏÎÔÒÏÌÑ, source-level debugging'Á, ÍÉÎÉÍÁÌØÎÏÊ ÐÅÒÅÎÏÓÉÍÏÓÔÉ.

ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Hello, Olga Nonova !

óÂÒÁÓÙ×ÁÔØ state mashine ÐÒÉ ÐÒÉÈÏÄÅ ÎÅ×ÅÒÎÙÈ ÄÁÎÎÙÈ. ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Hello, Olga Nonova !

:) HÅÔ, ÎÅ ÐÒÏÂÌÅÍÁ, ÄÁÖÅ × ÓÐÅÛËÅ.

ðÒÏ×ÅÒÑÔØ ÎÁÄÏ. HÁ ÌÀÂÏÍ ÑÚÙËÅ.

÷ ËÏÍÐÉÌÑÔÏÒ ÄÁÎÎÙÅ ÔÁË ÎÅ ÐÒÉÈÏÄÑÔ, ÏÎÉ ÐÒÉÈÏÄÑÔ × ÐÒÏÇÒÁÍÍÕ. ëÁË ÏÎÁ ÎÁÐÉÓÁÎÁ, ÔÁË É ÏÔÒÅÁÇÉÒÕÅÔ.

çÏÓÐÏÄÉ, ÎÕ Ó×ÏÀ ÆÕÎËÃÉÀ ÎÁÐÉÛÉ Ó ÐÁÒÁÍÅÔÒÏÍ, ÏÇÒÁÎÉÞÉ×ÁÀÝÉÍ ÄÌÉÎÕ ÐÏÉÓËÁ.

âÒÅÄ ÐÏÌÎÙÊ. ëÁËÉÅ ÔÒÕÄÎÏÓÔÉ É Ó ËÁËÏÊ ÔÁËÏÊ ÎÁÒÕÖÉ?

ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Hello, Olga Nonova !

äÅÔÏÞËÁ, Á×ÔÏÍÁÔÉÞÅÓËÉÊ ËÏÎÔÒÏÌØ ÔÙ ÎÅ ÓÒÁÚÕ ÐÏÌÕÞÁÅÛØ, ÅÇÏ ×ËÌÀÞÉÔØ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÊ ÏÐÃÉÅÊ ËÏÍÐÉÌÑÔÏÒÁ ÎÁÄÏ. HÁ ó ÄÌÑ ÕÎÉ×ÅÒÓÁÌØÎÏÇÏ ÒÅÛÅÎÉÑ ÐÏÄÏÂÎÙÈ ÐÒÏÂÌÅÍ ÐÒÉÄÕÍÁÌÉ ó++

ðÒÉ ÏÂÒÁÂÏÔËÅ ÐÒÉÛÅÄÛÉÈ ÉÚ ËÁÎÁÌÁ Ó×ÑÚÉ ÓÔÒÏË - ÎÅÌØÚÑ.

÷ÓÅ, ÞÔÏ ÔÙ ÔÕÔ ÎÅÓÅÛØ - ÐÒÏÓÔÏ ÂÅÚÇÒÁÍÏÔÎÁÑ ÇÌÕÐÏÓÔØ ÂÅÚ ÎÉËÁËÉÈ ÄÏ×ÏÄÏ×.

óÏ×ÅÒÛÅÎÎÏ ÐÁÇÕÂÎÙÍ ÂÙÌÏ ÂÙ ÄÅÌÁÔØ ÉÎÁÞÅ.

ðÏËÁÚÁÌÁ ÔÙ ÔÏÌØËÏ Ó×ÏÀ ÐÏÌÎÕÀ ÎÅÓÐÏÓÏÂÎÏÓÔØ Ë ÚÁÎÑÔÉÑÍ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÅÍ ÞÅÇÏ-ÌÉÂÏ. ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Hello, Olga Nonova !

ôÏ ÅÓÔØ ÐÒÉÍÅÒÎÏ ×Ä×ÏÅ... é ÍÎÏÇÏ ÐÏ-Ô×ÏÅÍÕ ÎÁÊÄÅÔÓÑ ÖÅÌÁÀÝÉÈ ÔÁËÏÅ ËÕÐÉÔØ? ÷ÅÄØ × $100 ÏÎÏ ÏÂÏÊÄÅÔÓÑ ÐÒÉ ÓÔÏÔÙÓÑÞÎÙÈ ÔÉÒÁÖÁÈ... ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Hello, Olga Nonova !

úÁÔÏ ËÁË ÕÄÏÂÎÏ × ÐÁÓËÁÌÅ ÒÁÂÏÔÁÔØ ÓÏ ÓÔÒÏËÁÍÉ ÄÌÉÎÅÅ 255 ÓÉÍ×ÏÌÏ×... ó Õ×ÁÖÅÎÉÅÍ, äÉÍÁ ïÒÌÏ×.

Thu Mar 17 2005 05:49, Maxim Polyanskiy wrote to Andy Mozzhevilov:

MP>>> HÁ×ÅÒÎÏ ÐÒÉÛÌÁ ÍÏÑ ÏÞÅÒÅÄØ ÓÐÒÁÛÉ×ÁÔØ - ÍÎÏÇÏ-ÌÉ ÕÓÔÒÏÊÓÔ× MP>>> ÔÉÒÁÖÁÍÉ ×ÙÛÅ 1000 ÛÔÕË ÔÙ ÓÄÅÌÁÌ É ÞÔÏ ÔÁÍ ÓÔÏÑÌÏ? AM>> ôÏ ÅÓÔØ, ËÁË ÔÏÌØËÏ ÄÏÛÌÏ ÄÏ ÔÏÇÏ, ÞÔÏ Ñ ÚÎÁÀ, Á ÔÙ ÎÅÔ, AM>> ÎÕÖÎÏ ÐÏÍÅÒÑÔØÓÑ ÐÉÐÉÓØËÁÍÉ × ÔÉÒÁÖÁÈ?

MP> HÅÔ. ðÒÏÓÔÏ ÒÅÁÌØÎÏ ÔÙ ÐÒÅËÒÁÓÎÏ ÚÎÁÅÛØ ÞÔÏ rtos - ÜÔÏ ÉÇÎÕÛÅÞÎÁÑ MP> ÔÅÈÎÏÌÏÇÉÑ, É ÏÎÁ ÐÌÏÈÏ ÐÏÄÈÏÄÉÔ ÄÌÑ ÍÁÓÓÏ×ÙÈ ÕÓÔÒÏÊÓÔ× ÇÄÅ ÓÌÅÄÕÅÔ MP> ÜËÏÎÏÍÉÔØ ÄÅÎØÇÉ É ×ÙÌÉÚÙ×ÁÔØ ËÏÄ ÏÔ ÇÌÀËÏ×.

ñ ÒÅÁÌØÎÏ ÐÒÅËÒÁÓÎÏ ÚÎÁÀ, ÞÔÏ ÜÔÏ ÓÏ×ÅÒÛÅÎÎÏ ÎÅ ÔÁË, ËÁË ÔÙ ÐÙÔÁÅÛØÓÑ ÚÁ ÍÅÎÑ ÐÒÉÄÕÍÁÔØ.

AM>> ÷ ÍÏÅÊ ÔÅÍÁÔÉËÅ ÔÉÒÁÖÉ ×ÏÏÂÝÅ ÎÅ ÍÏÇÕÔ ÂÙÔØ ÏÞÅÎØ ÂÏÌØÛÉÍÉ, AM>> ÎÏ ÔÙÓÑÞ ÎÅÓËÏÌØËÏ ÕÖÅ ÅÓÔØ. ÷ ÏÓÎÏ×ÎÙÈ ÔÉÒÁÖÎÙÈ ÕÓÔÒÏÊÓÔ×ÁÈ ÓÔÏÉÔ È51 AM>> ÏÔ ÄÁÌÌÁÓ, É ÔÁÍ ÎÅÔ RTOS, Ï ÞÅÍ Ñ ÏÞÅÎØ ÓÏÖÁÌÅÀ, ÐÏÓËÏÌØËÕ AM>> ÓÏÐÒÏ×ÏÖÄÅÎÉÅ ÜÔÉÈ ÐÒÏÅËÔÏ× ÄÏÓÔÁÔÏÞÎÏ ÔÒÕÄÏÅÍËÏÅ, ÄÁÖÅ ÎÅ ÓÍÏÔÒÑ ÎÁ AM>> ÔÏ, ÞÔÏ ÏÎÉ ×ÓÅ ÎÁÐÉÓÁÎÙ ÎÁ ÓÑÈ.

MP> ÷ ÞÅÍ ÖÅ ËÏÎËÒÅÔÎÏ ÚÁËÌÀÞÁÅÔÓÑ ÔÒÕÄÏÅÍËÏÓÔØ?

÷ ÄÏÂÁ×ÌÅÎÉÉ ÎÏ×ÙÈ ÆÕÎËÃÉÊ, ÐÕÓÔØ ÎÅ ÚÎÁÞÉÔÅÌØÎÙÈ. ÷ ÐÏÉÓËÅ É ÉÓÐÒÁ×ÌÅÎÉÉ ÎÅÔÏÞÎÏÓÔÅÊ, ÏÛÉÂÏË. ÷ÐÒÏÞÅÍ ÔÅÂÅ ÜÔÏÇÏ ÎÅ ÐÏÎÑÔØ, ÐÏÓËÏÌØËÕ ÔÙ ÄÁÖÅ ÎÅ ÐÏÎÉÍÁÅÛØ ÓÍÙÓÌÁ ÒÁÚÂÉ×ËÉ ÐÒÏÅËÔÁ ÎÁ ÎÅÓËÏÌØËÏ ÉÓÈÏÄÎÙÈ ÆÁÊÌÏ×.

MP> íÎÅ ËÁÖÅÔÓÑ ÔÒÕÄÏÅÍËÏÓÔØ - ÜÔÏ ËÏÇÄÁ Õ ÔÅÂÑ ÎÅ ÆÌÅÛÅ×ÙÊ ËÒÉÓÔÁÌ Ó ISP Á MP> ÚÁÐÁÑÎÎÁÑ × ÐÒÉÂÏÒ ÏÄÎÏËÒÁÔËÁ. üÔÏ-ÖÅ ÎÁÄÏ ×ÙÐÁÑÔØ ÅÅ ÉÚ ËÁÖÄÏÇÏ ÐÒÉÂÏÒÁ, MP> É ÚÁÐÁÑÔØ ÞÅÇÏ ÐÏÎÏ×ÅÅ Ó flash.

ëÁË ÜÔÏ ÏÔÎÏÓÉÔÓÑ Ë ÓÏÐÒÏ×ÏÖÄÅÎÉÀ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ?

MP> óÏÐÒÏ×ÏÖÄÅÎÉÅ ÞÅÇÏ ÌÉÂÏ c×ÏÅÇÏ Õ ÏÂÙÞÎÙÈ MP> ÌÀÄÅÊ ÎÅ ×ÙÚÙ×ÁÅÔ ÎÉËÁËÉÈ ÔÒÕÄÎÏÓÔÅÊ. MP> åÓÌÉ ÎÅ È×ÁÔÁÅÔ ÐÁÍÑÔÉ -

ðÒÉÞÅÍ ÔÕÔ ÐÁÍÑÔØ ×ÏÏÂÝÅ?

MP> ÔÁË ÜÔÏ ÄÅÊÓÔ×ÉÔÅÌØÎÏ óóúâ ÎÁ çÁÒ×ÁÒÄÅ ÐÉÓÁÔØ ÎÁ óÉ.

åÝÅ ÏÄÉÎ "ÂÒÅÄÕÎ" ÐÏ ÐÏ×ÏÄÕ ÜÆÆÅËÔÉ×ÎÏÓÔÉ óÉ ÎÁ ÒÁÚÎÙÈ ÁÒÈÉÔÅËÔÕÒÁÈ. HÏ ÔÙ ÈÏÔØ çÁÒ×ÁÒÄ ÏÔ ÆÏÎ-HÅÊÍÁÎÁ ÂÅÚ ÔÒÕÄÁ ÏÔÌÉÞÁÅÛØ, É ÔÏ ÈÏÒÏÛÏ.

AM>> åÓÌÉ ÂÙ ÔÏÇÄÁ Ñ ÏÂÌÁÄÁÌ ÔÅÍÉ ÖÅ ÚÎÁÎÉÑÍÉ, ËÁË ÓÅÊÞÁÓ, ÔÁÍ ÂÙ ÓÔÏÑÌ AM>> ÍÉÎÉÍÕÍ 16-ÂÉÔÎÉË É RTOS, ÐÏÔÏÍÕ ÞÔÏ ÐÏ ÂÏÌØÛÏÍÕ ÓÞÅÔÕ ÃÅÎÁ ÜÔÏÇÏ AM>> ÐÒÏÃÅÓÓÏÒÁ ÐÒÏÓÔÏ ÔÏÎÅÔ × ÓÅÂÅÓÔÏÉÍÏÓÔÉ ×ÓÅÇÏ ËÏÍÐÌÅËÓÁ.

MP> óËÏÒÅÅ ×ÓÅÇÏ ÅÇÏ ÔÏÇÄÁ ÐÒÏÓÔÏ ÎÅÂÙÌÏ ËÁË É ÒÔÏÓ.

÷ÓÅ ÂÙÌÏ, ÎÕÖÎÏ ÔÏÌØËÏ ÂÙÌÏ ÐÏÉÓËÁÔØ. HÏÍÅÎËÌÁÔÕÒÁ, ËÏÎÅÞÎÏ, ÂÙÌÁ ÎÅ ÓÔÏÌØ ÂÏÇÁÔÁÑ, ËÁË ÓÅÊÞÁÓ. é RTOS ÂÙÌÉ.

AM>> é ÓÔÏÉÔ ÏÎ $5 ÉÌÉ $50 - ÎÅÔ ÎÉËÁËÏÊ ÒÁÚÎÉÃÙ.

MP> 5*1000=5000 50*1000=50000 üÔÏ ÓÅÊÞÁÓ ÕÖÅ × ÄÅÔÓËÏÍ ÓÁÄÕ ÐÒÏÈÏÄÑÔ × 5 MP> ÌÅÔ.

üÔÏ ÍÅÎÅÅ ÐÒÏÃÅÎÔÁ ÓÔÏÉÍÏÓÔÉ.

MP> åÓÌÉ ÎÅÔ ÎÉËÁËÏÊ ÒÁÚÎÉÃÙ - 45ÔÕÅ× ÍÏÖÅÛØ ×ÙÓÌÁÔØ ÍÎÅ ÐÏÞÔÏ×ÙÍ MP> ÐÅÒÅ×ÏÄÏÍ.

é ËÌÀÞ ÏÔ Ë×ÁÒÔÉÒÙ, ÇÄÅ ÄÅÎØÇÉ ÌÅÖÁÔ.

AM>> á × ðéë ÓËÏÌØËÏ? ÷ 16F877 8ë-ÓÌÏ×? ÅÓÌÉ ÐÁÍÑÔØ ÎÅ ÉÚÍÅÎÑÅÔ? AM>> ôÏ ÅÓÔØ ÐÏ ÓÌÏ×ÁÍ × 2 ÒÁÚÁ ÍÅÎØÛÅ ÞÅÍ 32ë × thumb ÒÅÖÉÍÅ ARM.

MP> ôÙ ÏÐÑÔØ ÓÒÁ×ÎÉ×ÁÅÛØ × ÌÏ ÍÑÇËÏÅ É ÔÅÐÌÏÅ.

MP> ÷ ÞÁÓÔÎÏÓÔÉ × ÄÁÎÎÙÊ ÍÏÍÅÎÔ ÔÙ ÐÙÔÁÅÛØÓÑ ÓÒÁ×ÎÉÔØ ÇÁÒ×ÁÒÄ É óé MP> ÏÒÉÅÎÔÉÒÏ×ÁÎÎÙÊ æÏÎ-HÅÊÍÁÎ!

HÅÔ, Ñ ÐÙÔÁÀÓØ ÓÒÁ×ÎÉÔØ 8-ÂÉÔÎÙÊ RISC Ó 32-ÂÉÔÎÙÍ.

MP> ôÁË ×ÏÔ ÓÍÙÓÌ çÁÒ×ÁÒÄÁ × ÔÏÍ, ÞÔÏ ÎÁ ÁÓÍÅ MP> ÍÏÖÎÏ ÏÔÏÖÒÁÔØ ÎÁ ÎÅËÏÔÏÒÙÈ ÚÁÄÁÞÁÈ ÂÏÌÅÅ 200% ÐÁÍÑÔÉ.

óÌÙÛÁÌÉ ÍÙ ÜÔÉ ÓËÁÚËÉ É ÎÅ ÏÄÉÎ ÒÁÚ.

MP> ÉÚ ÐÒÏÄÕÃÉÒÕÅÍÏÇÏ ADS ó-ËÏÄÁ ÐÒÏÃÅÎÔÏ× ÔÁË 30-40 - ÍÏÖÅÛØ ÓÞÉÔÁÔØ ÓÅÂÑ MP> ËÒÕÔÙÍ ÐÒÏÇÒÁÍÍÅÒÏÍ ÎÁ ARM ÁÓÓÅÍÂÌÅÒÅ. ïÂßÑÓÎÀ ÎÁ ÐÒÉÍÅÒÅ Ó ÍÁÓÓÉ×ÁÍÉ × MP> ROM. x51 asm MP> mov dptr,#ÁÄÒÅÓÓ ÍÁÓÓÉ×Á MP> call func MP> func: MP> mov a,#ÓÍÅÝÅÎÉÅ ËÁËÏÇÏ-ÔÏ ÜÌÅÍÅÎÔÁ MP> movc a,a+@dptr MP> ...

MP> üÌÅÍÅÎÔÁÒÎÏ ÎÅ ÐÒÁ×ÄÁ-ÌÉ?

þÔÏ ÓËÁÚÁÔØ ÔÏ ÈÏÔÅÌ? ðÒÉ ÞÅÍ ÚÄÅÓØ È51? ïÐÑÔØ ÔÁÂÌÉÃÙ ËÁËÉÅ-ÔÏ ÐÒÉÐÌÅÌ. ñ ËÏÎÅÞÎÏ ÐÏÎÉÍÁÀ, ÞÔÏ ËÏÌÉÞÅÓÔ×Ï ÔÁÂÌÉà - ÜÔÏ ÄÌÑ ÔÅÂÑ ÇÌÁ×ÎÙÊ ÐÏËÁÚÁÔÅÌØ ÓÌÏÖÎÏÓÔÉ ÐÒÏÅËÔÁ, ÎÏ ÏÐÑÔØ, ÐÒÉÞÅÍ ÚÄÅÓØ ARM?

MP> ô.Å. ËÁË ×ÉÄÉÛØ ÍÙ ÚÁÓÒÁÌÉ ×ÓÅ ÒÅÇÉÓÔÒÙ, ÓÌÏÐÁÌÉ 3 ÑÞÅÊËÉ ÏÚÕ ÐÏÄ MP> "ÌÏËÁÌØÎÙÅ ÐÅÒÅÍÅÎÎÙÅ", É ÜÔÏ ÎÁ ÆÕÎËÃÉÉ ËÏÔÏÒÁÑ ÚÁÎÉÍÁÅÔ 2 ÓÔÒÏÞËÉ asm MP> ÔÅËÓÔÁ. é ËÁË ÔÙ ÎÅ ÐÒÙÇÁÊ, ËÁË ÔÙ ÆÕÎËÃÉÉ ÎÅ ÉÎÌÉÎØ, ÂÅÚ _asm _endasm ÔÙ MP> É ÂÌÉÚËÏ ÎÅ ÐÏÌÕÞÉÛØ ËÏÄÁ, ËÏÔÏÒÙÊ ×ÙÛÅ ÎÁÒÉÓÏ×ÁÎ.

þÔÏ ÜÔÏÔ ËÏÄ ÄÏÌÖÅÎ ÄÅÌÁÔØ, ÆÏÒÍÁÌÉÚÏ×ÁÎÎÏ?

MP> ldrb r0,[r1],#ÓÍÅÝÅÎÉÅ ÜÌÅÍÅÎÔÁ MP> ....

MP> pop pc,bla bla bla

MP> HÕ ÎÁ ËÒÁÑÎÑË ÏÎ ÞÕÔÏË ÐÏÍÕÔÉÔ Ó ÐÅÒÅÄÁÞÅÊ ÐÁÒÁÍÅÔÒÏ×... HÏ ÎÅ ÆÁÔÁÌØÎÏ. MP> é ÐÏÐÒÏÂÕÊ ÔÕÔ ÞÅÇÏ Õ ÎÅÇÏ ÎÁ ÁÓÍÅ ÏÔÏÖÒÁÔØ...

ôÏ ÅÓÔØ ÄÌÑ ÔÅÂÑ ÏÎ ÎÅ ÐÒÏÃÅÓÓÏÒ, ÐÏÔÏÍÕ ÞÔÏ ÎÁ ÁÓÍÅ Õ ÎÅÇÏ ÐÏ ÓÒÁ×ÎÅÎÉÀ Ó óÑÍÉ ÎÉÞÅÇÏ ÎÅ ÏÔÏÖÒÁÔØ?

AM>> ÷ thumb ÄÕÍÁÀ ÂÕÄÕÔ ×ÐÏÌÎÅ ÓÏÉÚÍÅÒÉÍÙÅ Ó ðéëÏÍ ÏÂßÅÍÙ ÐÒÏÇÒÁÍÍ AM>> ÎÁ ÁÎÁÌÏÇÉÞÎÙÈ ÚÁÄÁÞÁÈ.

MP> ôÅÐÅÒØ ÐÒÏ ÏÂßÅÍÙ. õ ÔÅÂÑ ÎÅ ÂÕÄÕÔ - ÚÒÑ ÔÁË ÄÕÍÁÅÛØ! õ ÍÅÎÑ ÔÏÖÅ ÎÅ MP> ÂÕÄÕÔ ÎÏ ÐÏ ÄÒÕÇÏÊ ÐÒÉÞÉÎÅ (ÍÎÅ × ÇÏÌÏ×Õ ÎÅ ÐÒÉÄÅÔ ÒÅÛÁÔØ ÚÁÄÁÞÉ MP> ÐÉËÏÍÁÎÉÉ ÎÁ arm).

ëÁËÁÑ ÒÁÚÎÉÃÁ ÎÁ ÞÅÍ ÒÅÛÁÔØ, ÅÓÌÉ ÃÅÎÁ Õ ÎÉÈ ÏÄÉÎÁËÏ×ÁÑ.

AM>> ëÁË ÖÅ ÜÔÏ ÔÙ ÎÁ ÐÉËÁÈ ÕÍÕÄÒÑÅÛØÓÑ ÖÉÔØ × ÒÁÍËÁÈ 8ëW ÐÚÕ É ÎÁËÌÅÐÁÔØ AM>> ÞÔÏ ÕÇÏÄÎÏ, É ÅÝÅ ÒÅÓÕÒÓÏ× ÏÓÔÁÅÔÓÑ, ÎÁ ÎÁ 32ë ÄÌÑ ARM ÍÏÖÅÛØ ÔÏÌØËÏ AM>> Ó×ÅÔÏÄÉÏÄÎÕÀ ÍÉÇÁÌËÕ?

MP> áÇÁ, ×ÙÛÅ ÒÁÓÐÉÓÁÎÏ ÐÏÞÅÍÕ.

HÅ ×ÉÄÅÌ, ËÒÏÍÅ ÏÞÅÒÅÄÎÏÇÏ ÎÅ×ÎÑÔÎÏÇÏ ÐÒÉÍÅÒÁ Ó È51

AM>> ôÏ ÅÓÔØ, ÞÕËÞÁ ÎÅ ÞÉÔÁÔÅÌØ - ÞÕËÞÁ ÐÉÓÁÔÅÌØ.

MP> ë ÓÏÖÁÌÅÎÉÀ ÐÅÒÉÆÅÒÉÑ ÓÏ×ÒÅÍÅÎÎÙÈ ÄÏÓÔÕÐÎÙÈ ARM ÍÑÇËÏ ÇÏ×ÏÒÑ ÏÓÔÁ×ÌÑÅÔ MP> ÖÅÌÁÔØ ÌÕÞÛÅÇÏ. CÍÙÓÌ ÒÅÁÌÉÚÁÃÉÉ ÔÒÁÎÓÉ×ÅÒÁ i2c ÄÌÑ arm - ÏÞÅÒÅÄÎÏÊ ÂÒÅÄ. MP> ÚÁÄÁÞÉ Ó i2c ÐÁÍÑÔØÀ × ÏÓÎÏ×ÎÏÍ ÒÅÛÁÀÔÓÑ ÎÁ ÐÉËÏÍÁÎÉÉ.

HÕ ÔÁË ÎÅ ÐÏÌØÚÕÊ ×ÓÔÒÏÅÎÎÙÊ, ÎÁÐÉÛÉ Ó×ÏÊ ÎÁ ÔÅÈ ÖÅ ÎÏÇÁÈ, ÎÁÓÔÒÏÅÎÎÙÈ ËÁË GPIO. ëÁËÉÅ ÐÒÏÂÌÅÍÙ?

AM>> ðÒÉÞÅÍ ÔÕÔ ÍÁÛÉÎÁ? éÌÉ ÍÙ ÎÅ × ËÕÒÓÅ, ÞÔÏ CAN ÉÓÐÏÌØÚÕÅÔÓÑ ÎÅ ÔÏÌØËÏ AM>> × Á×ÔÏÍÏÂÉÌÑÈ? åÓÌÉ ÄÁÖÅ × ÍÁÛÉÎÕ, ÞÅÍ ÏÎ ÔÁËÉÍ ÏÂÌÁÄÁÅÔ, ÉÌÉ AM>> ÎÁÏÂÏÒÏÔ ÎÅÏÂÌÁÄÁÅÔ, ÞÔÏ ÅÇÏ ÎÅÌØÚÑ ÔÕÄÁ ÓÔÁ×ÉÔØ?

MP> çÌÀÞÎÏÓÔØÀ. MP> HÕ ÜÔÏ ËÁË × AVR ÐÏÍÎÉÛØ ËÏÇÄÁ ÒÅÓÅÔ ÎÁ ËÏÎÄÅÒÁÈ - ÐÁÍÑÔØ ÐÒÏÇÒÁÍÍ MP> ÓÌÅÔÁÅÔ ;)

üÔÏ, ÎÁ×ÅÒÎÏÅ ÓÌÅÄÕÅÔ ÉÚ ÔÏÇÏ, ÞÔÏ AVR É ARM ÎÁÞÉÎÁÀÔÓÑ ÎÁ ÏÄÎÕ É ÔÕ ÖÅ ÂÕË×Õ 'A'?

wbr, Andy

Здравствуйте, Уважаемый Alex!

Thu Mar 17 2005 02:57, Alex Kouznetsov wrote to Olga Nonova:

AK> "должны" - в том смысле, что позаботиться об этом должен программист, AK> язык к этому не имеет отношения

ON>> А как на самом деле происходит? ON>> Представьте, оказывается до сих пор программы, написанные на C++ и на ON>> Pascal с очень большим трудом находят общий язык между собой. Это ON>> замечание обычно хорошо понятно хоть раз писавшим DLL-ки.

AK> в огороде бузина...

Совсем нет. Речь зашла о передаче данных от программы к программе, в частности, через каналы связи. Здесь точно та же проблема, как с DLL-ками. И "ноль забыть" при интеграции системы - раз плюнуть. Весь вопрос только в одном- сколько времени будет искать "потерю нуля" сишник и сколько паскалист.

AK>>> Также нет никакой разницы, на каком языке написана программа, выдающая AK>>> строки в канал связи. Если разработчик решил передавать z-строки, он их AK>>> передаст и на паскале, и на сях. Если же он решил использовать строки AK>>> со счетчиком, он опять же сделает их и на си и на паскале.

ON>> Пример в студию, как на Си реализовать паскалевскую строку со счетчиком.

AK> Pукопашное преобразование: AK> #include <string.h>

AK> char zstr[] = "примерчик"; AK> char cstr[strlen(zstr)]; /* строка со счетчиком AK> cstr[0] = strlen(zstr); AK> for (int i=0; i<strlen(zstr); i++) AK> cstr[i+1] = zstr[i]; AK> Результат можешь выдавать в канал связи, раз тебе этого хочется.

Спасибо. Однако слишком поспешно исполнено, чтобы было рассмотрено всерьез. Так например, сразу видны тривиальные ошибки синтаксиса, надо было писать как минимум: char cstr[SizeOf(zstr)]. А по хорошему, чтобы был еще "запас" на работу со строкой SizeOf(zstr)+ AnyRest. Плюс к тому, в вашем цикле будет избыточное число раз вызываться вычисление strlen(zstr), что для z-строк занимает достаточное время. Hу а в-третьих, как библиотеки С-компилятора станут работать с образованной таким образом "строкой", а на самом деле структурой? Или предлагаете самому все написать с нуля?

ON>> Hа Паскале это делается просто в декларациях:

ON>> Var ON>> MyString : string[32];

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

AK> Шило на мыло. Теперь рассмотри вариант, когда канал с помехами меняет AK> значение счетчика.

Повторяю- для таких строк в Паскале предусмотрен _автоматический_ контроль выхода за размер декларированного контейнера. Поэтому, при порче счетчика паскальная программа максимум,- это передаст управление обработчику ошибок, а сишная программа при порче "нолика" отваливает неизвестно куда и там зависает. В цене последствий весь вопрос.

ON>> ... Да, все _может_ оказаться фатальным. Hо у сишных ON>> z-строк вероятность этого "может" значительно больше.

AK> Обоснуй

См выше.

ON>> Про механизмы проверки целостности приходящих пакетов- очень разумно.

AK> Тогдa не нeси ахинею про строки, это не имеет отношения к задаче: AK> "Зато в приходящих из канала связи пакетах можно встретить и не такие AK> чудеса забывчивости. И последствия фатальны для скомпилированной на Си AK> программы." (c) Тебе сразу было сказано, что это чушь.

Попробуйте все-таки мыслено представить себе процесс интеграции системы.

ON>> Уважаемый Алексей! Давайте вернемся к началу разговора. Он начался с ON>> RTOS в исходниках на Си для встраивания в маленькие однокристаллки. В ON>> этом конкретном случае использование Си представляется совершенно ON>> пагубным занятием, а не вообще-"он плохой!".

AK> Тоже чушь.

"Сказал, как отрезал!"

ON>> Есть и другие случаи, когда ON>> использование Си плохо, я их, надеюсь, показала.

AK> Ты не показала ничего, кроме своего дремучего невежества и зашоренности. AK> Сон разума рождает чудовищ (c)

Да, это особенно заметно на тех С-примерах, что Вы приводите.

Всего Вам Хорошего Ольга

Здравствуйте, Уважаемый Maxim!

Thu Mar 17 2005 05:42, Maxim Polyanskiy wrote to Olga Nonova:

ON>> Совсем меня запутали в терминах. Какой же это гарвард, если компилятор ON>> может разобраться без всяких дополнительных аттрибутов в типах памяти, ON>> просто по диапазону адресов? Hеправильный какой-то гарвард получается.

MP> Они просто не понимают о чем речь и тебя специально запутывают.

Я уже заметила, что умение оценивать все на живой практике- не самый сильный конек моих оппонентов.

MP> PIC - Гарвард.

Хорошо, пусть будет так.

MP> Он имеет все недостатки Гарварда при работе с указателями и всем, что из MP> них растет (любым массивом втч строковым). Компилятор ни в чем не MP> разбирается. Ему надо указывать в конечной точке откуда берется массив. MP> (Hе дай бог вариант, что он берется и оттуда и оттуда, тогда он будет MP> генерить ужасный код).

Все правильно. Следует только уточнить, что речь идет о компиляторах с Си. С языка, который изначально создавался и оптимизировался под сравнительно большие машины с неймановской архитектурой. А когда академические программисты "затащили" его в мир мелких девайсов, то Си там стал выглядеть очень некрасиво.

Всего Вам Хорошего Ольга

Hello, Alexander! You wrote to Olga Nonova on Wed, 16 Mar 2005 23:16:00 +0300:

AT> ëÓÔÁÔÉ, Ñ ÓÁÍ ôÕÒÂÏ/âÏÒÌÁÎÄ ðÁÓËÁÌØ (ÉÍÅÎÎÏ ÉÈ, Á ÎÅ "ËÌÁÓÉÞÅÓËÉÊ AT> ðÁÓËÁÌØ") ÌÀÂÌÀ ÇÏÒÁÚÄÏ ÂÏÌØÛÅ ÞÅÍ ôÕÒÂÏ/âÏÒÌÁÎÄ óÉ, ÎÏ Ë ÓÏÖÁÌÅÎÉÀ - AT> ÎÉ ÏÄÎÏÇÏ ÐÒÉÌÉÞÎÏÇÏ ËÏÍÐÉÌÑÔÏÒÁ ðÁÓËÁÌÑ ÄÌÑ ÍÉËÒÏËÏÎÔÒÏÌÌÅÒÏ× - ÎÅ AT> ×ÓÔÒÅÞÁÌ ("ÐÒÉÌÉÞÎÏÇÏ" - ÚÎÁÞÉÔ ×ÙÛÅÄÛÅÇÏ ÉÚ ÕÒÏ×ÎÑ ËÕÒÓÏ×ÏÊ ÒÁÂÏÔÙ ÉÌÉ AT> GNU-ÔÏÊ ÐÏÄÅÌËÉ, ÞÔÏ × ÏÂÝÅÍ, ÏÄÎÏ É ÔÏ ÖÅ)

PicAntIDE, ÏÎ ÖÅ SourceBoostIDE. ÔÒÉ × ÏÄÎÏÍ.

formatting link

With best regards, Dima Oleshko. E-mail: snipped-for-privacy@newyork.ru

Hello Alexey!

16.03.2005 8:41:20, Alexey Stekolshikow wrote to Andy Mozzhevilov:

MP>> ëÓÔÁÔÉ ÎÉËÔÏ ÎÅ ÚÁÄÕÍÙ×ÁÌÓÑ ÐÏÞÅÍÕ MCS51 ÔÁË ÄÏÌÇÏ ÖÉ×ÅÔ É ÎÅ ÄÕÍÁÅÔ MP>> ÕÍÉpÁÔØ? AS>

AS> õÇÕ. áÔÍÅÌ ÁÎÏÎÓÉpÏ×ÁÌ 1-cycle x51 MCU. ðÏËÁ ÔÏÌØËÏ ÚÁÍÅÎÉÔÅÌÉ 2051 AS> É 4051, ÎÏ ÏÂÅÝÁÀÔ ×ÓÀ ÌÉÎÅÊËÕ. éÍÑ ÓÅÓÔpÁ, ÉÍÑ..

Bye, Vladimir.

Hello Alex.

17 Mar 05 03:00, Alex Kouznetsov wrote to Oleksandr Redchuk:

OR>> ôÏÇÄÁ ÚÁÞÅÍ ÂÙÌÏ ÐpÉ×ÏÄÉÔØ ÐpÉÍÅpÙ ÍÁËpÏÓÏ× ËÁË ÓÐÏÓÏ õêôé ïô OR>> íHåíïHéë ëïHëòåôHïçï ðòïãåóóïòá ó ãåìøà ì³çëïóôé ðåòåHïóá. AK> äÁÍÁ ÎÅÐpÅpÙ×ÎÏ É ÔÑÖÅÌÏ ÂpÅÄÉÔ.

- á ÷Ù ÎÅ ÐpÏÂÏ×ÁÌÉ ÏÂpÁÔÉÔØÓÑ Ë ×pÁÞÕ?

- HÅÔ, ÜÔÏ ÚÁËÌÑÔÉÅ! (Ó) ûpÅË :)

Sergey

Maxim, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 08:00, Maxim Polyanskiy wrote to George Shepelev:

MP>>> äÁ ÔÏÔ-ÖÅ ÏÄÉÎ ÄÅÎØ. ðÒÉÞÅÍ × ÄÁÎÎÏÍ ÓÌÕÞÁÅ ÜÔÏ ÄÅÌÁÅÔÓÑ MP>>> ÂÁÎÁÌØÎÏ. òÅÁÌØÎÙÊ ÏÂßÅÍ ÁÓÍ ËÏÄÁ Ô×ÏÅÊ ÚÁÄÁÞÉ ÂÕÄÅÔ ÏËÏÌÏ 60% MP>>> ÐÁÍÑÔÉ. ÷ ÌÅ×ÏÍ ÏËÎÅ ÏÔËÒÙ×ÁÅÔÓÑ ÉÓÈÏÄÎÉË ÏÔ f876 × ÐÒÁ×ÏÍ MP>>> ÐÕÓÔÏÊ ÆÁÊÌ É ÐÒÏÓÔÏ ÂÁÎÁÌØÎÏ ÐÉÛÅÔÓÑ ÔÏ-ÖÅ ÓÁÍÏÅ × ÎÓËÏÌØËÏ MP>>> ÄÒÕÇÉÈ ÍÎÅÍÏÎÉËÁÈ. äÕÍÁÅÛØ ÐÒÉ ÎÏÒÍÁÌØÎÏÍ ÏÐÙÔÅ ÐÒÏÇÁÍÍÉÒÏ×ÁÎÉÑ MP>>> ÜÔÏ ÂÏÌØÛÅ ÞÅÍ 1 ÄÅÎØ? äÁ Ñ Ó ÔÏÂÏÊ GS>> ïÊ! ôÙ Õ×̣ËÓÑ. ðÒÉ _ÒÅÁÌØÎÏÊ_ ÐÏÐÙÔËÅ ÜÔÏ ÐÒÏÄÅÌÁÔØ ×ÓÐÌÙףÔ GS>> ÍÁÓÓÁ "ÚÁÐÏÄÌÑÎÏË", ×ÒÏÄÅ ÉÚÍÅÎÉ×ÛÅÇÏÓÑ ×ÌÉÑÎÉÑ ËÏÍÁÎÄ GS>> ÉÎËÒÅÍÅÎÔÁ/ÄÅËÒÅÍÅÎÔÁ/ ÓÄ×ÉÇÁ ÎÁ ÆÌÁÇÉ. MP> üÔÏ ÔÏÌØËÏ Õ ÔÅÂÑ ×ÓÐÌÙ×ÁÅÔ,

üÔÏ ×ÓÐÌÙףÔ Õ ÌÀÂÏÇÏ, ËÔÏ ÕÍÅÅÔ ÜÆÆÅËÔÉ×ÎÏ ÐÉÓÁÔØ ÎÁ ÁÓÓÅÍÂÌÅÒÅ. ëÔÏ ÎÅ ÕÍÅÅÔ - ÄÏÌÖÅÎ ÎÅ ÂÁÊËÉ × ÜÈÁÈ ÒÁÓÓËÁÚÙ×ÁÔØ, Á ÕÞÉÔØÓÑ, ÕÞÉÔØÓÑ É Åݣ ÒÁÚ ÕÞÉÔØÓÑ.

MP> Ñ ÖÅ ÎÅ ÎÁÓÔÏÌØËÏ ÆÁÎÁÔ, ÞÔÏ ÐÉÓÁÔØ ÎÁÓÔÏÌØËÏ ÐÒÉ×ÑÚÁÎÎÙÊ ËÏÄ Ë MP> ÐÒÏÃÕ, ÞÔÏ ÔÁÍ ËÁËÉÅ-ÌÉÂÏ ÇÅÍÏÒÏÉ Ó ÆÌÁÇÁÍÉ ÂÙÌÉ.

ôÏÇÄÁ ÐÉÛÉ ÎÁ ÓÑÈ É ÎÅ ÍÏÒÏÞØ ÌÀÄÑÍ ÇÏÌÏ×Õ ;)

MP> äÁ É ×ÏÏÂÝÅ ÉÚ ÆÌÁÇÏ× Ñ ÐÒÉÚÎÁÀ ÔÏÌØËÏ C É Z.

éÍÅÎÎÏ Ó ÜÔÉÍÉ ÆÌÁÇÁÍÉ É ×ÏÚÎÉËÎÕÔ ÐÒÏÂÌÅÍÙ, ÄÏËÕ ÐÏÇÌÑÄÉ ;)

GS>> ëÒÏÍÅ ÔÏÇÏ "ÔÕÐÏÊ" ÐÏÄÈÏÄ ÎÅ ÐÏÚ×ÏÌÉÔ ÚÁÄÅÊÓÔ×Ï×ÁÔØ ×ÏÚÍÏÖÎÏÓÔÉ GS>> ÐÏ ÏÐÔÉÍÉÚÁÃÉÉ ÐÒÏÇÒÁÍÍÙ. MP> HÁÆÉÇ ÎÕÖÎÁ ÏÐÔÉÍÉÚÁÃÉÑ ÐÒÏÇÒÁÍÍÙ × ÜÔÏÍ ËÏÎËÒÅÔÎÏÍ ÓÌÕÞÁÅ, ÐÒÉ MP> ÐÅÒÅÏÓÅ Ó pic16 (ÚÁ×ÅÄÏÍÏ ÕÂÏÇÏÇÏ) ÎÁ pic18 (ÚÁ×ÅÄÏÍÏ ÂÏÌÅÅ ÍÏÝÎÏÇÏ)?

HÁÆÉÇ ÎÕÖÅÎ ÐÅÒÅÎÏÓ ÐÒÏÇÒÁÍÍÙ, ÅÓÌÉ ÏÎÁ ÕÖÅ ÒÁÂÏÔÁÅÔ ÎÁ "ÚÁ×ÅÄÏÍÏ ÕÂÏÇÏÍ" ËÏÎÔÒÏÌÌÅÒÅ? ;)

GS>> äÌÑ ÎÁÞÁÌÁ, × 18-Í ÓÅÍÅÊÓÔ×Å ××ÅÄÅÎÙ _ÔÒÉ_ ÒÅÇÉÓÔÒÁ-ÕËÁÚÁÔÅÌÑ, MP> [...] MP> CÐÁÓÉÂÏ, ÄÌÑ ÕÐÒÏÝÅÎÉÑ ÐÒÅÄÓÔÁ×ÉÍ, ÞÔÏ ÔÅÐÅÒØ Ñ ÚÎÁÀ ËÁË ÕÓÔÒÏÅÎ MP> pic18... ;)

[ÚÁÂÏÔÌÉ×Ï] íÏÖÅÔ ÔÅÂÅ Åݣ ÏÂßÑÓÎÉÔØ, ËÁË ÉÍÉ ÍÏÖÎÏ ÐÏÌØÚÏ×ÁÔØÓÑ?

GS>> óÏ×ÓÅÍ ÉÎÁÞÅ ÂÕÄÅÔ ÐÒÏÇÒÁÍÍÁ ÐÉÓÁÔØÓÑ. èÏÔÑ ÏÂÝÉÅ ÐÒÉÎÃÉÐÙ É GS>> ÓÏÈÒÁÎÑÔÓÑ, ÎÏ ÐÅÒÅÎÅÓÔÉ _ÄÏÓÔÁÔÏÞÎÏ ÓÌÏÖÎÕÀ_ ÐÒÏÇÒÁÍÍÕ ÚÁ ÄÅÎØ - GS>> ÒÁÚ×Å ÞÔÏ ÅÓÌÉ ÓÏ×ÅÒÛÅÎÎÏ ÎÅ ÉÎÔÅÒÅÓÕÅÔ ÒÅÚÕÌØÔÁÔ ÐÅÒÅÎÏÓÁ. MP> òÅÚÕÌØÔÁÔÙ ÐÅÒÅÎÏÓÁ ÍÅÎÑ ÎÅ ÉÎÔÅÒÅÓÕÀÔ ÔÏÌØËÏ ÐÏ ÔÏÊ ÐÒÉÞÉÎÅ, ÞÔÏ × MP> ÒÅÁÌØÎÏÓÔÉ "Håô Héëáëïê ìïöëé" ;)

ñ ÔÁË É ÐÒÅÄÐÏÌÁÇÁÌ, ÞÔÏ ÔÙ ÒÁÓÓÕÖÄÁÅÛØ Ï ÐÅÒÅÎÏÓÅ ÐÒÏÇÒÁÍÍ ÉÚ ÞÉÓÔÏ ÔÅÏÒÅÔÉÞÅÓËÉÈ ÓÏÏÂÒÁÖÅÎÉÊ ;)

GS>> HÅ ÚÎÁÀ, ÞÔÏ ÔÁÍ ÎÁ ÓÑÈ ÎÁÞÕÄÉÌÉ, ÎÏ ÇÒÁÍÏÔÎÏ ÎÁÐÉÓÁÎÎÁÑ GS>> ÁÓÓÅÍÂÌÅÒÎÁÑ ÐÒÏÇÒÁÍÍÁ, ÚÁÎÉÍÁÀÝÁÑ ÐÏÞÔÉ ×ÓÀ ÐÁÍÑÔØ 876 PIC'Á - GS>> ÚÁÄÁÞËÁ ÎÅ ÉÚ ÐÒÏÓÔÙÈ. MP> äÁÖÅ ÂÏÌØÛÅ ÓËÁÖÕ - ÉÚ ÏÂÌÁÓÔÉ ÆÁÎÔÁÓÔÉËÉ.

ôÏ, ÞÔÏ ÔÙ ÎÅÓÐÏÓÏÂÅÎ ÎÁÐÉÓÁÔØ ÐÏÄÏÂÎÕÀ ÐÒÏÇÒÁÍÍÕ ×Ï×ÓÅ ÎÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÔÁËÉÈ ÐÒÏÇÒÁÍÍ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ...

çÅÏÒÇÉÊ

Olga, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 10:07, Olga Nonova wrote to Alex Kouznetsov:

ON>>>>> ÒÅÞØ ÉÄÅÔ Ï ÏÓÏÂÙÈ ÓÔÒÏËÁÈ ÔÉÐÁ char, Ó ÎÕÌÅÍ × ËÏÎÃÅ. AK>>>> þÔÏ × ÎÅÊ ÏÓÏÂÏÇÏ? üÔÏ ÓÔÁÎÄÁÒÔÎÁÑ ÓÉÛÎÁÑ ÓÔÒÏËÁ. ON>>> úÁËÉÄÁÅÍ ÛÁÐËÁÍÉ? ê-ÅÈ, ÍÏÌÏÄÅÖØ! AK>> ôÙ ÎÅ oÔ×ÅÔÉÌÁ ÎÁ ×ÏÐÒÏÓ: ÞÔÏ × ÎÅÊ ÏÓÏÂÏÇÏ? ëÁËÉÅ ÓÔÒÏËÉ, AK>> ÐÏ-Ô×ÏÅÍÕ, ÎÅ Ñ×ÌÑÀÔÓÑ ÏÓÏÂÙÍÉ? ON> ïÂÙÞÎÙÅ ÓÔÒÏËÉ Pascal. ó ÎÉÍÉ ÏÂÙÞÎÏ ÎÉËÁËÉÈ ÈÌÏÐÏÔ ÎÅ ×ÏÚÎÉËÁÅÔ.

ëÁË ÎÁÓޣÔ ÏÂßÅÄÉÎÅÎÉÑ Ä×ÕÈ "ÏÂÙÞÎÙÈ ÓÔÒÏË Pascal" × ÏÄÎÕ, ËÁÖÄÁÑ ÉÚ ÉÓÈÏÄÎÙÈ - ÐÏ 150 ÓÉÍ×ÏÌÏ×?

çÅÏÒÇÉÊ

Leha, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 10:35, Leha Bishletov wrote to Olga Nonova:

ON>> íÏÑ ÍÎÏÇÏÓÔÒÁÄÁÌØÎÁÑ ÉÍÈÁ ÄÕÍÁÅÔ, ÞÔÏ × ÑÚÙËÁÈ ×ÙÓÏËÏÇÏ ÕÒÏ×ÎÑ ON>> ÓÁÍÙÍ ÃÅÎÎÙÍ Ñ×ÌÑÀÔÓÑ ÎÅÇÌÀÞÎÙÅ ÂÉÂÌÉÏÔÅËÉ. LB> HÅÔ, ÎÅ ÂÉÂÌÉÏÔÅËÉ. ñÚÙË ×ÙÓÏËÏÇÏ ÕÒÏ×ÎÑ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÌÕÞÛÉÊ ËÏÎÔÒÏÌØ LB> ÉÓÈÏÄÎÏÇÏ ÔÅËÓÔÁ.

HÅ ÌÀÂÏÊ! óÒÁ×ÎÉ ÓÔÒÏÇÕÀ ÐÁÓËÁÌÅ×ÓËÕÀ ÔÉÐÉÚÁÃÉÀ É ÎÅÐÒÉÎÕÖģÎÎÏ-ÂÅÓËÒÙÛÎÏÅ ÓÉÛÎÏÅ Á×ÔÏÐÒÅÏÂÒÁÚÏ×ÁÎÉÅ ÔÉÐÏ×...

çÅÏÒÇÉÊ

Olga, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 12:02, Olga Nonova wrote to Andy Mozzhevilov:

AM>> ïÓÏÂÅÎÎÏÅ ÅÓÌÉ ÕÞÅÓÔØ ÔÏÔ ÆÁËÔ, ÞÔÏ PIC - ÜÔÏ ÇÁÒ×ÁÒÄ. ON> óÏ×ÓÅÍ ÍÅÎÑ ÚÁÐÕÔÁÌÉ × ÔÅÒÍÉÎÁÈ. ëÁËÏÊ ÖÅ ÜÔÏ ÇÁÒ×ÁÒÄ, ÅÓÌÉ ËÏÍÐÉÌÑÔÏÒ ON> ÍÏÖÅÔ ÒÁÚÏÂÒÁÔØÓÑ ÂÅÚ ×ÓÑËÉÈ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÁÔÔÒÉÂÕÔÏ× × ÔÉÐÁÈ ÐÁÍÑÔÉ,

ðÒÉ ޣÍ ÔÕÔ ËÏÍÐÉÌÑÔÏÒ, ÅÓÌÉ ÒÅÞØ ÉģÔ ÏÂ _ÁÒÈÉÔÅËÔÕÒÅ_ ËÏÎÔÒÏÌÌÅÒÁ? :-O

ON> ÐÒÏÓÔÏ ÐÏ ÄÉÁÐÁÚÏÎÕ ÁÄÒÅÓÏ×? HÅÐÒÁ×ÉÌØÎÙÊ ËÁËÏÊ-ÔÏ ÇÁÒ×ÁÒÄ ÐÏÌÕÞÁÅÔÓÑ.

ðÒÁ×ÉÌØÎÙÊ. ëÏÄ ÏÔÄÅÌØÎÏ (ÓÏ Ó×ÏÉÍÉ ÁÄÒÅÓÁÍÉ), ÄÁÎÎÙÅ ÏÔÄÅÌØÎÏ (ÓÏ Ó×ÏÉÍÉ).

çÅÏÒÇÉÊ

Hello Leha.

16 Mar 05 16:53, Leha Bishletov wrote to me:

ON>>>> çpÁÍÏÔÎÙÅ ÁÓÓÅÍÂÌÅpÝÉËÉ pÁÂÏÔÁÀÔ × ÍÁËpÏÓÁÈ, ÂÉÂÌÉÏÔÅËÕ ËÏÔÏpÙÈ LB> ... LB>>> íÏÖÎÏ Õ×ÉÄÅÔØ ÈÏÔÑ ÂÙ ÆpÁÇÍÅÎÔ ÜÔÉÈ ÍÁËpÏÓÏ×? ïÓÏÂÅÎÎÏ LB>>> ÉÎÔÅpÅÓÎÏ, LB> ... SD>> ó×ÏÉ 5 ËÏÐÅÅË ×ÓÔÁ×ÌÀ. ïÄÎÏ ÉÚ ÐpÉÍÅÎÅÎÉÊ ÁÓÍÁ ËÁË pÁÚ × ÔÏÍ, SD>> ÞÔÏÂÙ ×pÕÞÎÕÀ ËÏÎÔpÏÌÉpÏ×ÁÔØ É ÐpÉ×ÏÄÉÔØ ÔÉÐÙ (8*8=16, 16/8=8 SD>> ÉÔÐ). HÁ ÕpÏ×ÎÅ ÏÔÄÅÌØÎÙÈ ÆÕÎËÃÉÊ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÄÏÓÔÁÔÏÞÎÙÊ SD>> ×ÙÉÇpÙÛ (ÎÁ ÏÔÄÅÌØÎÏ ×ÚÑÔÙÈ ÐÌÁÔÆÏpÍÁÈ), × ÃÅÌÏÍ ÎÁ ÐpÉÌÏÖÅÎÉÅ SD>> ÜÔÏ, ËÏÎÅÞÎÏ ÕÓÌÏÖÎÑÅÔ ÖÉÚÎØ. LB> þÁÓÔÏ ×ÍÅÓÔÅ Ó ËÏÍÐÉÌÑÔÏpÏÍ ÉÄÅÔ ÂÉÂÌÉÏÔÅËÁ × ËÏÔÏpÏÊ ÅÓÔØ ÞÔÏ-ÔÏ LB> ÔÉÐÁ int __mul_8_8(char v1, char v2); É Ô.Ð. ÷ÓÔpÅÞÁÀÔÓÑ. ôÏÌØËÏ ×ÙÓËÁÚÁÔØÓÑ Ñ ÈÏÔÅÌ ÎÁ ÄpÕÇÕÀ ÔÅÍÕ - ÔÏ ÞÔÏ ÔÏÂÏÊ ÐÏÓËÉÐÁÎÏ :) íÎÅ × pÅÁÌÉÚÁÃÉÉ ÁÓÓÅÍÂÌÅpÁ ÂÏÌÅÅ ÉÎÔÅpÅÓÎÁ ÈÏpÏÛÁÑ ÓÔÙËÏ×ËÁ Ó ÓÉÛÎÙÍÉ ÍÏÄÕÌÑÍÉ, × ÔÏÍ ÞÉÓÌÅ É "ËÏÍÐÉÌÉpÏ×ÁÎÎÙÊ ÓÔÅË". á ×ÏÔ ÐÉÓÁÎÉÅ ÍÁËpÏÓÁÍÉ ÐÏ-ÍÏÅÍÕ ÎÅ ÓÌÉÛËÏÍ-ÔÏ ÕÄÏÂÎÏ. éÚ ×ÉÄÅÎÎÏÇÏ ÍÎÏÊ ÜÔÏ ×ÏÏÂÝÅ write-only ÉÓÈÏÄÎÉËÉ. åÓÌÉ ÆÕÎËÃÉÑ ÎÁ óÉ ÂÕÄÅÔ ÐpÅÄÓÔÁ×ÌÑÔØ ÉÚ ÓÅÂÑ ×ÙÚÏ× ÐÌÁÔÆÏpÍÏ-ÚÁ×ÉÓÉÍÙÈ ÆÕÎËÃÉÊ ÎÁ×pÏÄÅ ÐpÉ×ÅÄÅÎÏÊ É ËÕÞÉ goto, break ÉÔÐ, ÔÏ Ñ ÓËÏpÅÅ ×ÓÅÇÏ ÎÁÐÉÛÕ ÅÅ ÎÁ ÁÓÍÅ. åÓÔÅÓÔ×ÅÎÎÏ, ÔÁËÏÅ ÍÏÖÅÔ ÐÏÔpÅÂÏ×ÁÔØÓÑ ÔÏÌØËÏ × ÔÏÍ ÓÌÕÞÁÅ, ËÏÇÄÁ ÎÕÖÎÏ ÕÍÅÎØÛÉÔØ ÐpÏÓÔpÁÎÓÔ×ÅÎÎÏ-×pÅÍÅÎÎÙÅ ÈÁpÁËÔÅpÉÓÔÉËÉ ÐpÏÇpÁÍÍÙ ÉÌÉ ÅÅ ÞÁÓÔÉ.

Sergey

Olga, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 13:49, Olga Nonova wrote to Leha Bishletov:

ON>>> úÁÄÁÞÁ, ÚÎÁÞÉÔ, ÄÌÑ ÷ÁÓ- ÒÁÚ ÐÌÀÎÕÔØ? é ÕÞÅÓÔØ ON>>> ÐÒÉ ÜÔÏÍ ×ÓÅ ËÒÁÊÎÉÅ ÓÌÕÞÁÉ ÉÓÈÏÄÎÙÈ ÓÔÒÏË? LB>> óÐÉÓÏË "ËÒÁÊÎÉÈ" ÓÌÕÞÁÅ×? ON> óÔÒÏËÉ ÎÕÌÅ×ÏÊ ÄÌÉÎÙ.

ðÏ ÓÅËÒÅÔÕ ÔÅÂÅ ÓËÁÖÕ, ÞÔÏ ÓÔÒÏËÉ ÎÕÌÅ×ÏÊ ÄÌÉÎÙ × ÓÑÈ É × ÐÁÓËÁÌÅ ×ÙÇÌÑÄÑÔ ÁÂÓÏÌÀÔÎÏ ÉÄÅÎÔÉÞÎÏ ;)

ON> óÔÒÏËÉ, Õ ËÏÔÏÒÙÈ "ÚÁÂÙÌÉ" /0 × ËÏÎÃÅ.

ëÔÏ ÍÅÛÁÅÔ ÎÁ×ÅÓÉÔØ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ ÐÒÏ×ÅÒËÕ ÎÁ ËÏÍÐÉÌÑÔÏÒ? é ÐÕÓÔØ Ï ÜÔÏÍ Õ ÍÁÛÉÎÙ ÇÏÌÏ×Á ÂÏÌÉÔ.

ON> óÔÒÏËÉ, ×ÙÈÏÄÑÝÉÅ ÚÁ ÄÉÁÐÁÚÏÎ ÏÔ×ÅÄÅÎÎÏÊ ÐÏÄ ÎÅÅ ÐÁÍÑÔÉ.

÷ÏÔ-×ÏÔ. õ ÐÁÓËÁÌÅ×ÓËÉÈ ÓÔÒÏË ÔÁËÁÑ ÐÒÏÂÌÅÍÁ ËÕÄÁ ÒÁÎØÛÅ ÎÁÞÉÎÁÅÔÓÑ...

çÅÏÒÇÉÊ

Olga, ÔÙ Åݣ ÚÄÅÓØ ÓÉÄÉÛØ?

óÒÅÄÁ íÁÒÔ 16 2005 14:00, Olga Nonova wrote to Dima Orlov:

èÏÒÏÛÉÍ ÔÏÎÏÍ Ñ×ÌÑÅÔÓÑ ÐÒÏ×ÅÒËÁ ×ÈÏÄÎÙÈ ÄÁÎÎÙÈ ÎÁ ËÏÒÒÅËÔÎÏÓÔØ. ïÓÏÂÅÎÎÏ ÄÌÑ ÄÁÎÎÙÈ, ÐÏÓÔÕÐÉ×ÛÉÈ "ÉÚ×ÎÅ". ïÔÔÏÇÏ, ÞÔÏ ÇÏÒÅ-ÐÒÏÇÒÁÍÍÉÓÔÙ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÐÒÏ×ÅÒËÉ ÚÁÂÙ×ÁÀÔ ÄÅÌÁÔØ É ×ÏÚÎÉËÁÀÔ ÒÅÇÕÌÑÒÎÏ ÐÒÏÂÌÅÍÙ Ó "ÐÅÒÅÐÏÌÎÅÎÉÅÍ ÂÕÆÅÒÏ×" É Ô.Ð.

çÅÏÒÇÉÊ

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required