roboforum.ru

Технический форум по робототехнике.
Текущее время: 06 апр 2025, 16:12

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 181 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 13  След.
Автор Сообщение
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
СообщениеДобавлено: 03 дек 2009, 11:01 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Читабельность в разы. Как измерили то ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
СообщениеДобавлено: 03 дек 2009, 11:04 
Не в сети
Аватара пользователя

Зарегистрирован: 30 янв 2009, 01:24
Сообщения: 784
Откуда: Запорожье
прог. языки: Си, AvrASM, STL, САС, учу Си++
ФИО: Павел
А мне трехэтажные комманды в объектно-ориентированных языках ну никак не нравятся :no:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
СообщениеДобавлено: 03 дек 2009, 11:07 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Интересно было бы посмотреть для чего C++ применяется.

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
СообщениеДобавлено: 03 дек 2009, 11:43 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2005, 08:30
Сообщения: 440
Откуда: деревня - Тюмения
прог. языки: с++
Просто я привык писать на С++. У меня уже алгоритмы паттерны наработаны.
Раньше писал на асме для авр - казалась что вот оно - контроль над регистрами. Не доверял компилятору. Потом, плавно перешел на С, не знаю почему. Устал видимо держать все в голове.

А тут, год назад начал для своей квартиры собирать "приточку" (система автоматического подачи свежего воздуха в квартиру) пробурил дырки в стене (15см в диаметре) сделал воздуховоды, вентилятор, глушитель, калорифер - адская установка получилось!
Но вот чтобы ей управлять - нужен некий "контроллер" который стоит 15тыщь рублей.
Подумал подумал, нафиг нам такой контроллер.
Стал собирать свой.
На борту атмега 128.
Заслонки двигаем сервами мощными.
ЖКИ мониторчег.
Датчики температуры. (улица, болкон, калорифер, квартира)
датчик давления. (отслеживание загрезнения фильтра)
релюхи для включения калорифера и вентилятора
---

Нужно было сделать систему, которя в определенный момент по расписанию включала и выключала вентилятор, шевилила заслонками, в зависемости от температуры включала калорифер. Все это выводить на ЖКИ. ну и нормальный интерфес чтобы был.
Вродебы все просто, задача ясна.
писать стал на "С".
Пошло быстро и легко. Сделал расписание включения устройств. вывод на ЖКИ информации. плавно программа переросла в монстра
--
дальше, когда мне потребовалось зафигачить меню для тонкой настройки приточки... мой мозг поплыл, ибо я не привык процедурно программировать.
--
взяв в пивка, и мое сознание выдало. а не попробывать бы нам С++ залить.
Сказано сделлано. настроен компилятор использую WinAVR среда CodeBlocks
В итоге.
Программа стала читабельней, полностью отделены мухи от коклет. Тоесть железячки в одном месте. логика программы в другом. Никак они между собой не пересекаются. Связь только через интерфес.

Выглядит что то вроде этого:
Код:
int main(void)
{
    cHardware hardware;
    hardware.create();
    hardware.run();//запуск основоного процесса
    return 0;
}


тобишь есть класс железячки в нем классы серв, лсд, клава, индикаторы итд. все они унаследуются от общего класса "прерывания".

Вот код оброботчка гланого цыкла жилизячег
Код:
void cHardware :: run (void)
{
   /* основной цикл программы
   */
   while (1)   
   {
      /* сначало передаем управление железу
      */
      servo.      process();//движение серв
      led.      process();//динамическая индикация светодиодов
      LCD.      process();//фоновая отрисовка дисплея
      keyBoard.   process();      
      /* отработка логики программы
      */
      application.process();
      }
}


Все обстрагировался до основания. Наверно всем покажется это дикостью. Но мне нравится!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
СообщениеДобавлено: 03 дек 2009, 12:00 
Не в сети
Аватара пользователя

Зарегистрирован: 21 мар 2009, 20:06
Сообщения: 395
Откуда: Город на Неве
прог. языки: GNU C++ with Qt / C# via .NET
ФИО: Александр
ИМХО, для некритичных ко времени систем с кучей памяти - самое оно :good:
Тоже крупные проекты на Си мозг взрывают... Их без "спец. инвентаря" и не разберешь :-)
А вот Си++ (до n00000 строк кода) разбирается вполне ничего :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 06:27 
Не в сети

Зарегистрирован: 19 мар 2010, 20:11
Сообщения: 468
раньше была такая шняга- МК-65, програмилась в машинных кодах, я на ней несколько курсовиков написал.
По поводу AVR- это риск процессор, один байт, одна комманда, один такт, система команд там настолько легкая, что любой желающий на своем языке программирования любимом сможет написать для него транслятор с языка любимого, а потом хоть в ворде писать. Ну а я лучьше на Ада попишу, только не поддерживается она ничем.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 08:14 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
cjA писал(а):
По поводу AVR - система команд там настолько легкая, что любой желающий на своем языке программирования любимом сможет написать для него транслятор с языка любимого, а потом хоть в ворде писать. Ну а я лучьше на Ада попишу, только не поддерживается она ничем.

Напиши транслятор с Ада в машинные коды AVR ;) 8)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 08:58 
Не в сети

Зарегистрирован: 19 мар 2010, 20:11
Сообщения: 468
не возьмусь, bascom уже есть, для программирования четырех портов больше и не надо.
но есть же трансляторы написаные на джава, которые джаву в понимаемый ARMами код переводят? ARMы кстати тоже риск процессоры.

Добавлено спустя 3 минуты 19 секунд:
Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
По стандарту языка Ада, он уже должен понимать машинный код процессора, только для AVR пока еще не реализовал это никто. ;(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 09:01 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Ну вот и будешь первым ;)

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 09:12 
Не в сети

Зарегистрирован: 19 мар 2010, 20:11
Сообщения: 468
http://www.aonix.com
понимает моторолу и интел, правда размер кода ограничен в бесплатной версии
2 galex1981 - может быть, чего от скуки не сделаешь


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 09:43 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
cjA писал(а):
может быть, чего от скуки не сделаешь

Ничего наверно не сделаешь. Тем более если не удосужился поискать что уже сделано

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 10:03 
Не в сети

Зарегистрирован: 19 мар 2010, 20:11
Сообщения: 468
наверное, да. но не поэтому. когда-то учил человечков по экрану ходить- даже какой то скриптовый язык написал.
ну и когда-то мк-65 в машинных кодах прогил.
Я читал даташит для тини45, там всего около сотни команд, его реально прогить в машкодах в каком нибудь хексредакторе.

В любом случае я считаю что если хочешь прогить что-нибудь, то с машкомандами и архитектурой нужно ознакомится.

Добавлено спустя 7 минут 28 секунд:
Re: C vs ASM -прочитай и никогда не поднимай эту тему на форуме!
ты не поверишь, когда то давно компьютеры собирали люди, а не роботы, и не на заводах, а в гаражах. Почитай откуда у Гейтца 40 миллиардов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 10:35 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
cjA писал(а):
Почитай откуда у Гейтца 40 миллиардов.

Откуда по вашему? :oops:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 10:47 
Не в сети

Зарегистрирован: 19 мар 2010, 20:11
Сообщения: 468
он написал интепретатор бэйсика для интел8086
ну а потом мс-дос для первой айбиэм-писи, ну и понеслось. Те 8086 были не намного сложнее чем атмега.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C vs ASM -прочитай и никогда не поднимай эту тему на фор
СообщениеДобавлено: 17 июл 2010, 12:08 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
напиши тоже интерпретатор бэйсика, мс-дос (это вообще сейчас уровень курсовой),... :D может тоже озолотишся


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 181 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 13  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO