Пн мар 09, 2020 08:12:10
Пн мар 09, 2020 08:59:01
Пн мар 09, 2020 09:23:32
out SPDR,color_front_H
SPI_WAIT
out SPDR,color_front_L
SPI_WAIT
Пн мар 09, 2020 09:23:59
Пн мар 09, 2020 10:41:06
Разница существенная.shonty писал(а):Не понял разницы, ждать до или после
Пн мар 09, 2020 11:18:27
Пн мар 09, 2020 11:31:46
Пн мар 09, 2020 11:50:18
WiseLord писал(а):Я не знаю, как у Вас вывод шрифтов сделан, но у меня подход такой:
Шрифт, по сути - картинка некоторого размера W*H. ILI9341 (да и все подобные) поддерживает вывод в режиме окна. То есть, задаются координаты (x, y, w, h) этого окна, а дальше можно посылать байты сплошным потоком. В зависимости от настроек, это окно будет заполняться в определённом порядке. У меня выбран такой: сверху вниз первый столбец, затем переход к столбцу правее, и так далее.
Пн мар 09, 2020 18:19:17
Основной смысл – не изобретать велосипед, а использовать готовую функцию.
Думаю, встроенную функцию вызвать проще, соответственно, удобней.
Это какую такую траву надо курить, чтобы придумать метод набора двоичного числа в группу смежных бит одного регистра путем сдвигов нулей или единиц на обозначенное символически число бит? Я имею в виду конструкцию, вроде 0<<CS02 | 1<<CS01 | 1<<CS00 для прескалера таймера 0 вместо простого и понятного (допустим) T0prs64, которое в подключаемом по .Include файле было бы определено, как 0x03.
В СИ приходится делать вставки из ассемблера - это вроде как костыли. А костыли свидетельствуют об инвалидности программы, здоровому костыли не нужны.
Пн мар 09, 2020 18:44:55
Пн мар 09, 2020 19:00:39
Пн мар 09, 2020 22:27:34
Вт мар 10, 2020 02:22:41
Вт мар 10, 2020 04:35:19
Вт мар 10, 2020 08:42:48
я имел ввиду атомарность на уровне синтаксиса языка. в том смысле, что это неделимая языковая конструкция. поскольку ассемблер оперирует только с регистрами, понятие переменная ему чуждо именно по причине неатомарности работы с нею (в общем случае).КРАМ писал(а):Ее атомарность сильно зависит от архитектуры МК
мне показалось, что это не в число плюсов, а в число минусов следует дописать. как в Си указатели - попытки наделить Си строгой проверкой типов указателей привела к появлению С++, но никак не улучшила Си. так и основное достоинство ассемблера заключается именно в вольнице работы с доступными ячейками памяти (и регистрами), и если эту вольницу ограничить, получится уже зародыш ЯВУ... я не уверен, что это достоинство АССЕМБЛЕРА. хотя привыкнуть можно ко всему, как и решать задачи можно всемКРАМ писал(а):И при попытке "прибить гвоздями" пересекающиеся адреса переменных при явном определении расположения данных, в дело тут же вступит линкер, обматерив страдальца...
я ел много ассемблеров, но вот до микрочиповских руки не дошли сомневаюсь, что там что-то сверхоригинальное на вкус тем более что с возрастом чувствительность вкусовых рецепторов притупляется...КРАМ писал(а):Спорить о вкусе устриц нужно с теми, кто их ел...
Вт мар 10, 2020 11:05:24
Вт мар 10, 2020 11:29:05
не совсем так - это, скажем, "исконный" смысл переменной. но в современном программировании это уже абстракция куда более высокого уровня, единственный корректный смысл которой - хранение данных. большинство ЯВУ в той или иной мере приближается к этому уровню... но не ассемблер - тут, естественно, вы абсолютно правы: для ассемблера переменная - это область памяти. но при этом ассемблер не оперирует этими областями, как чем-то атомарным, т.е. целым, как это делают ЯВУ. о чем я и говорил.КРАМ писал(а):Переменная как сущность это ИМЕНОВАННАЯ область оперативной памяти.
ну да, когда-то давно мне попадалась в руки книжка "ООП на ассемблере" - выкинул, почти не читая наделение ассемблера всеми этими "высокоуровневыми" наворотами, имхо (подчеркиваю - это моё личное мнение), ничего хорошего не делает: уровень абстракции ассемблера все равно остается слишком низким, чтобы облегчать программирование так, как это делают ЯВУ, но при этом заметно усложняют синтаксис, делая его отнюдь не таким простым, как изначально предполагалось (мнемоническая замена бинарных опкодов).КРАМ писал(а):что и другие ассемблеры запилили не хуже...
Вт мар 10, 2020 11:32:16
Вт мар 10, 2020 11:39:00
Вт мар 10, 2020 11:42:37