| Автор |
Съобщение |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Грешно твърдение.
Аз срещнах - avr-gcc.  Преди това ползвах IAR, който, обаче правеше глупости с по-сложните адресни операции. Докато gcc-то е без грешка - до сега не съм имал никакви проблеми с него.
|
| Пон Ное 15, 2004 11:52 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Хммм то gcc хубаво ама на ... колегата го е ползвал за х51 ядро и кава че кейла е по добър,gcc-то правело глупости от време на време, не съмсеинтересувал точно какви, засега х51 архитектурата не ме влече ....
|
| Пон Ное 15, 2004 11:57 am |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
Реконструкторе проблема ти идва от компютърния начин на мислене. IAR прави камари оптимизации да спести един байт и някой и друг цикъл, та ако не му знаеш номерата - лошо. GCC - ANSI C компилатор. И като всеки такъв е бавен и тромав, ама стандартен. За това и не виждаш глупости в кода му (дето хич не са глупости). Друг е въпроса, че генерира с 20-30% повече код и на бързодействие (не времето за компилация коментираме) не го търси. Ама това е или ANSI (правен от софтуеристи) или компилатор правен от хардуеристи - ти си избираш. То ако се не лъжа GCC-то е едно ядро и само го разширяват та да го портнат към даден процесор. Ама разликата от 32 битов x86, 16 битов MSP, и 8 битов AVR си е от небето до земята. Просто 8 битовите контролери по дефиниция не са правени за 32 битовото ANSI С. Това е като да караш трабант с масло за 100 кинта.
|
| Пон Ное 15, 2004 12:42 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Точно така, gcc има портове за сигурно 100 процесора и още толкова ОС.  По отношение на кода нямаше голяма разлика с ИАР. Когато минавах от едното на другото специално го проверих - разликата беше около 3%. Бързодействието на кода нямах желание да го тествам, тъй като не е особено просто.
Тук има една стара сравнителна статия за компилаторите.
|
| Пон Ное 15, 2004 1:06 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
1 (един) милион реда? от един човек?
стига бе пич!
то даже и 1 млн. байта е много, дори да са unicode!
ето ти тема за размисъл:
FreeBSD 5.2.1
/usr/src/sys/* - около 3 млн. реда в 12107 файла, включително alpha, amd64, i386, powerpc и sparc64fd
./kern - 112 Креда
./netinet - 41 Креда
./netinet6 46 Креда
аз лично съм писал BIOS за х86 процесор, който се справя с повечето прекъсвания, да да бута OS (флопита, дискове, видео, памет, порти, PCI, таймери и т.н.). това е около 12 креда на асемблер и ми отне 2 месеца. няма менюта и разни там юсерски сетвания - просто си записваш каквото ти трябва във флеша и толкоз.
или нещо не си разбрал, или оня се изхвърля... или PIC-а е нещо непоносимо сложно, извън естествения интелект, та ти трябва изкуствен такъв?
|
| Вто Ное 23, 2004 4:15 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
Дедо Боре, аз не съм програмист. Никога не съм се занимавал с VC++. По-скоро мога да напиша не големи интерфейсни програмки на VB6.
Тези 1 млн. реда не си ги измислям. Ето прочети коментарите на Maverick и Les:
http://www.picbasic.org/forum/showthread.php?t=3192
Наскоро открих, че и румъмците имат хубав компилатор за AVR: http://www.hpinfotech.ro/
Щом те могат защо ние в България да не можем? Ясно е, че е нужен програмист, който да разбира много добре електрониката. А не обратното - инженер не може да напише компилатор 
_________________ Adios
Mozfet
|
| Сря Ное 24, 2004 1:49 pm |
|
 |
|
amon_ra
Ранг: Минаващ
Регистриран на: Вто Дек 28, 2004 5:46 pm Мнения: 5
|
 Не точно нов компилатор...
Писането на компилатор не е лека задача. Ако на някой му се занимава, може да започне с готов код, вместо да преоткрива колелото:
http://sdcc.sourceforge.net/
|
| Вто Дек 28, 2004 11:41 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
 Навремето, като писах за HC11 правих и компилатор...
защото програмата стана много дълга и не се компилираше от безплатните компилатори (кои имаше огранчение по редове, кои по брой променливи и/или етикети и т.н.)
Беше под дос, но и досега една противопожарна централа работи с софтуер, компилиран от моиа компилатор (ТоНи може да си спомни
Дори идеята беше асемблера да се формализира, за да може със смяна на описателни файлове да компилира и за други процесори, но това не го завърших. За HC11 работи безупречно, но за 8051(552) не го завърших.
|
| Чет Яну 06, 2005 11:35 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Да ... даже може и да го имам при мен ... ако си ни го дал тогава .... и работи  .... не знаех че ти си писал компилатора.
|
| Чет Яну 06, 2005 12:02 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
и колко милиона реда беше?
що не го осъвремениш малко и да го пуснеш пак в обръщение? аз го зарязах HC11, щото gcc-то не е много читаво за него, на metrowerks компилатора също не е образец на съвършенство, а и струва купчина пари. ти твоя на какво си го писал?
|
| Вто Яну 11, 2005 1:54 pm |
|
|