Оптимизаторы оптимизируют... не очень хорошо, скажем так. Например, что GCC, что мелкомягкая студия благополучно забывают содержимое регистров и постоянно их перезагружают, делают ненужные пересылки и т.д. и т.п. Можно согласиться, что хороший компилятор сделает код лучше, чем посредственный программист-ассемблерщик, но не более того. Хороший специалист сможет написать лучше -- другое дело, что это не всегда оправдано.
Я как-то смотрел, как оптимизирует IAR-овский компилятор, кстати, как раз AVR. Был впечатлён (правда, за давностью не помню деталей). Хотя сам пользуюсь сейчас GCC.
В общем, человек правильно решил изучить ассемблер.
Наверно, да. Просто не надо на нём зацикливаться.
_________________ ВНИМАНИЕ! Я часто редактирую свои сообщения, поэтому перед ответом мне советую обновить страницу. За перенос модераторами в МЯВУ тем с моими сообщениями я ответственности не несу.
Demiurg думаю Вы не правы. С живым человеком всё же учиться легче и быстрей. Если чего не понял он тебе на пальцах объяснит (три раза подряд) а потом подзатыльником закрепит знание! Я помню ,лет 25 назад , в армии устав учил в упоре лёжа., так информация в голову загружалась терабайтами!!! При чём чем дольше стоишь на кулачках , а перед носом на полу лежит устав, тем быстрее становилась скорость загрузки текста в голову. И всё! Вуаля!! К утру устав отлетал от зубов. А если не отлетал от зубов устав , то отлетали зубы или голова вместе с зубами!! А Вы говорите ,, учись по книгам,,
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
migvu, всё так. И в армии действительно так и было, в разных вариантах. "Не доходит через голову - дойдёт через ноги". И слушали препода с открытыми ртами, боясь что либо не запомнить. Иначе, из за одного будут бежать все!) Только здесь другая обстановка. Да и жирновато держать наставника рядом, КМК. Ну а то что опытный даже если направит в нужную сторону - уже +. Не нужно искать, сомневаться и додумывать. На мой взгляд, нужно работать самостоятельно, получая указания и выдавая результат с разбором полётов. И тут должна быть не только теория. Ибо теория без практики немногого стоит, да и забывается быстро. Но люди разные.) А вообще, я бы попробовал самостоятельно, хоть какую то базу бы набрал. А то может ещё системы счисления нужно прививать.)
Ну не знаю... Я когда лет 20 тому встретил тему по контроллерам просто заболел ими. Информации практически ноль.По крупицам собирал. Кое-что было про PIC. про AVR даже не слышал. Книг не нашел. Хоть плачь. Ну и только ассемблер. Подсказать некому.Все сам.Освоил худо-бедно.
Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Так я ж говорю, люди разные. Разный уровень, разный характер, разная дисциплина, условия...) А я начинал с машинных кодов на бумажечке и пульта, с которого вводил в память процессора. При том, что это всё ещё нужно было всё спаять и собрать. Без программатора даже. С нуля.) "Пить, курить, говорить начал одновременно. И никто меня этому не учил!")
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Я не стаю на месте. Упорно ползу верной дорогой ,к победе коммунизма ! Ну а если серьёзно , то учусь по тихоньку. Спаял тренировочную платку на меге8 и срисовал программку помигать светодиодом ( вместо светодиода поставил 7 сигментный идикатор) Помигал ,потом устроил бегаюжий огонёк, потом перебор цифр и всё чего смог придумать , в разных вариантах! Короче как вызвать подпрограмму ( команда rcall для меги8) усвоил. Общие принципы написания программы тоже понял. Закреплю кирпичём знания в голове и буду переползать на прерывания глядишь скоро буду шпарить на клаве всеми десятью пальцами , при этом поплёвывая в потолок !!
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Неее! Я в армии много чему научился. Печатать мне там не довелось , а вот разного опыта ( включая опыт разбираться в людях) много всякого приобрёл. Раньше был лозунг ,,Чем больше в армии дубов- тем крепче наша оборона!!,,
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Позволю себе дать совет. Найдите листинги чужих программ, хорошо комментированных, и читайте их. Просто читайте. Что поймёте, то отложится.
_________________ ВНИМАНИЕ! Я часто редактирую свои сообщения, поэтому перед ответом мне советую обновить страницу. За перенос модераторами в МЯВУ тем с моими сообщениями я ответственности не несу.
Спасибо за совет! Обязательно так буду делать , только ещё пока багаж знаний команд маленький. Думаю что в боле менее серьёзных исходниках пока я ни чего не пойму.Учу команды , на мелких примерах смотрю где и как и для чего их можно применить.
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Спасибо за совет! Обязательно так буду делать , только ещё пока багаж знаний команд маленький. Думаю что в боле менее серьёзных исходниках пока я ни чего не пойму.Учу команды , на мелких примерах смотрю где и как и для чего их можно применить.
Команды, кстати говоря, -- дело десятое. Главное в программировании -- алгоритмистка (т.е. способность сформулировать алгоритм решения задачи -- пускай и на русском, а не на компутерном). После неё -- понимание основных принципов программирования. А команды всегда в справочнике посмотреть можно, если на то пошло.
Кстати говоря, с первым асмом действительно могут быть сложности, но с последующими всё будет в тыщу раз проще. Хотя когда их слишком много, без справочника начинаешь путаться Я вот до сих пор могу писать "по памяти" на асмах PDP-11 и System/360 (наши СМки/ЕСки), с которых, считай, начинал, а вот для той же AVRки или ARMов приходится подглядывать мануал время от времени.
В общем, не волнуйтесь о числе запомненных команд, разбирайтесь в первую очередь с принципами.
Вы не первый, не десятый, и даже не сотый начинающий. Единственный верный способ. Книга. Как съесть слона? Кусочками. Читать нужно понемногу, по разделам. Чувствуешь, что мозги вскипели, отступил. Потом снова. Если требуется, перечитал, или читаем следующую главу. Почувствовал, в мозгу что-то забрезжило, устанавливаешь AVR-Studio и пробуешь. Пошло? Зашибись. Нет, смотрим, где проебланил. По книге вы получите базовую информацию. И многие простые, элементарные вопросы отпадают сами собой. В ином случае, если не по книге, ты задрочишься сам, задрочишь участников форумов. И хоть лом об твою голову сломай, никакой учитель тебе не поможет, если нет желания учиться. Прости за некоторую грубость, на брудешафт, конечно мы с тобой не пили. Но думаю, на таком языке я понятно и доступно объяснил. Повторяю: как негру объяснить, что такое снег. Как слепому объяснить, что такое радуга? В случае с МК та же ситуация. Книги и еще раз книги.
Да нет там ничего в языке ассемблера кроме стандартной строки. Для того чтобы писать на этом языке нужно углубленно знать архитектуру ядра и здесь уж не так важно процессор это или микроконтроллер. И если освоить хотя бы одну архитектуру даже самую простую то можно легко переходить просто прочитав обычный pdf. Обычно начинают с простых ,например I51 или z80 , можно AVR. Эти архитектуры довольно просты в понимании, и уж совсем ничего не поймете в PIC, ARM ,x86.
_________________ Еси хочешь чтоб комп был быстрым - ставь Пингвин,- он будет чистым
Demiurg Без книг конечно не обойтись ( в моём случаи точно). Нашёл толковую книгу Белов А.В. Микроконтроллеры AVR. От азов программирования до создания практических устройств (2016) . Автор толково ,я бы сказал даже очень толково , подаёт предмет . Советую всем начинающим.
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Знания ничуть не мешают вере в Бога а если веришь то должен понимать что знания дает Бог с другой стороны человек в силу своей греховности знания эти по разному применяет - можно ДУ для ворот гаража сделать а можно с помощью того же ДУ взорвать что- то или кого то ! Вот у меня идей много и идеи эти смотрю что через год два их реализуют но программировать тоже не умею и поэтому идеи реализует другой человек Так что тоже хочу поучится программированию (Омская область) но Си тоже надо
Скачай книгу о которой я писал постом выше. Там Автор паралейно приводит примеры на СИ. Вообще толковая книга. Я уже простинькую сигнаху для дачи себе сворганил и программку подогнал под свои нужды. Изучаю сейчас работу встроиных таймеров. Учиться не когда не поздно. Жалко только что проектов в сети на Ассемблере мало. Более менее сложные проекты на языках высокого уровня народ ваяет. Оно и понятно так быстрей и проще. Но всё равно думаю что надо наченать с азов , хоть трудно но интересно.
Возможно у тебя быстрее обучение пойдёт. У меня базовых знаний в физике ноль и две копейки! Поэтому опираюсь на опыт которого достаточно.
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения