Pull to refresh

Как понять ассемблер. Часть 2. Микроконтроллер

Reading time 2 min
Views 36K
Ну чтож, пора копнуть чуть глубже. Понимание самого ассемблера по мне так не мыслимо без понимания того, как работает микроконтроллер. Оставим наших персонажей в комнате и вновь воспользуемся нашим воображением.
Итак сейчас нужно будет просто представлять то, о чём я напишу.
***
Представь, что ты сидишь внутри микроконтроллера. Скажем внутри ATmega 8. Только микроконтроллер это такая большая прямоугольная белая комната, а ты сидишь в удобном кресле в самом её центре. Эта комната — твой личный центр управления — ты из неё управляешь тем, что снаружи. Пока неважно ЧЕМ — пока важно КАК.

Итак давай пройдёмся по твоей «лаборатории» будем называть эту комнату так.

Справа от тебя стоит Генератор Эдемских Кущ Компактный Тактовой Частоты. Это только кажется что это такая страшная штука со страшным названием. На самом деле это большой звонок, как в школе был на стене. И задачи у него похожие.
Cлева от тебя идёт конвейер — обычный конвейер как на заводе.
Так вот ты скажем сидишь на кресле, никого не трогаешь — и тут звонит звонок… Что это значит? Это значит что тебе самое время проверить — есть ли что-нибудь на конвейере. Ты смотришь — а там конверт, на конверте номер напечатан «0001» — ты его открываешь — а там написано «Нужно сделать такую то вещь» — ты потягиваешься, кладёшь конверт обратно на конвейер, встаёшь из-за стола и идёшь делать эту самую вещь. Сделал, и идёшь обратно, садишься за стол и сидишь себе, куришь CAMEL. Проходит какое то время — опять звонит звонок — ты смотришь — а на конвейере уже лежит ещё один конверт под номером «0002» — ты его открываешь, читаешь что нужно сделать, кладёшь обратно на конвейер и идёшь делаешь. Потом приходишь и садишься пить чай. Потом через какое то время опять звонок — опять конверт — открываешь а там пусто… Ну пусто и пусто. Обратно его положил и сидишь себе дальше ждёшь следующего звонка.
Так вот что тут важно знать:
1. В конвертах содержатся инструкции для тебя.
2. Ты любую из этих инструкций способен выполнить.
3. Ты всегда успеваешь выполнить то, что написано в конверте до того, как прозвенит следующий звонок.
Ну и ещё следует знать про характеристики своего звонка. Основная характеристика звонка — это тактовая частота — то есть сколько раз в секунду звонок может «звякать» На ATmega8 может быть частота 8 или 16 мегагерц. То есть если наш звонок работает на 8 мегагерцах — то он за 1 секунду может «звякнуть» 8 миллионов раз. То есть получается что то, что выше выделено жирным шрифтом и подчёркнуто ты успеваешь сделать за одну восьмимилионную часть секунды. Ты очень быстрый, дружище!
Tags:
Hubs:
+3
Comments 20
Comments Comments 20

Articles