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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Привдите пример хорошо написанного встроенного софта
Rst7
сообщение Apr 1 2009, 10:55
Сообщение #31


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

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



Цитата
Не смешно.


Шутка того-же уровня, что и "программа для Кейла". Так что без обид smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 1 2009, 12:23
Сообщение #32


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(777777 @ Apr 1 2009, 13:05) *
Вероятно это программа для Кейла, а он кодирует постинкремент очень неэффективно.

Ээээ, простите, какая версия Keil'а и для какого процессора генерирует неэффективный код постинкремента?
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Apr 1 2009, 21:56
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Хоть звучит самонадеянно и совсем не убедительно, но, по-моему, самый хорошо написанный софт это тот что вы только что написали.
biggrin.gif

Доказательства просты.
1) Какой бы сторонний софт не брал, всё равно его под себя лопатишь. smile.gif
Если уж совсем мало времени, то немного подправляешь. Ну а если больше - то полностью. smile.gif

2) В своём софте намного проще разобраться чем в чужом. smile.gif
Go to the top of the page
 
+Quote Post
777777
сообщение Apr 2 2009, 06:21
Сообщение #34


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

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(defunct @ Apr 1 2009, 16:23) *
Ээээ, простите, какая версия Keil'а и для какого процессора генерирует неэффективный код постинкремента?

uVision3 V3.00
C51.exe V7.20
1.
Код
603   1              while(*pstr != 0)
604   1                      {
605   2                      if(!PrintChar(*pstr++))
606   2                              return 0;
607   2                      }

Код
0008         ?C0115:
                                          ; SOURCE LINE # 603
0008 8D82              MOV     DPL,R5
000A 8C83              MOV     DPH,R4
000C E4                CLR     A
000D 93                MOVC    A,@A+DPTR
000E 6011              JZ      ?C0116
                                          ; SOURCE LINE # 604
                                          ; SOURCE LINE # 605
0010 0D                INC     R5
0011 ED                MOV     A,R5
0012 7001              JNZ     ?C0137
0014 0C                INC     R4
0015         ?C0137:
0015 14                DEC     A
0016 F582              MOV     DPL,A
0018 E4                CLR     A
0019 93                MOVC    A,@A+DPTR
001A FF                MOV     R7,A
001B 120000      R     LCALL   _PrintChar
001E 40E8              JC      ?C0115
                                          ; SOURCE LINE # 606
0020 22                RET    
                                          ; SOURCE LINE # 607
0021         ?C0116:

2.
Код
603   1              while(*pstr != 0)
604   1                      {
605   2                      if(!PrintChar(*pstr))
606   2                              return 0;
607   2                      ++pstr;
608   2                      }

Код
0008         ?C0115:
                                          ; SOURCE LINE # 603
0008 8D82              MOV     DPL,R5
000A 8C83              MOV     DPH,R4
000C E4                CLR     A
000D 93                MOVC    A,@A+DPTR
000E FF                MOV     R7,A
000F 600D              JZ      ?C0116
                                          ; SOURCE LINE # 604
                                          ; SOURCE LINE # 605
0011 120000      R     LCALL   _PrintChar
0014 4001              JC      ?C0117
                                          ; SOURCE LINE # 606
0016 22                RET    
0017         ?C0117:
                                          ; SOURCE LINE # 607
0017 0D                INC     R5
0018 BD0001            CJNE    R5,#00H,?C0137
001B 0C                INC     R4
001C         ?C0137:
                                          ; SOURCE LINE # 608
001C 80EA              SJMP    ?C0115
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 Текстовая версия Сейчас: 28th August 2025 - 08:43
Рейтинг@Mail.ru


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