ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
28 апреля
1350584 Топик полностью
Adept (13.09.2023 12:47, просмотров: 218) ответил Costic на Памяти мало, даже очень мало и она сегментирована. Основная память (idata) и её адреса (256 байт, 0x00-0xFF) очень плотно всем забиты. Для стека места мало. Поэтому (вложенные) вызовы функций и передача аргументов делается компилятором с выкрутасами. В этом же куске памяти находятся 4 банка для прерываний, но обычно только 1 банк используется. Доступ быстрый, если у вас байты, а если int16_t или int32_t, то становится печально и приходится байты считать. Или размещать это всё
ещё насколько помню, вся арифметика - через аккумулятор, что кромке тормознутости, ещё накладывает ограничение на использование регистровых переменных. 

Я не люблю 51-е :( в 90е пытался вникнуть и работать с ними (были халтурки по ковырянию прошивок кассовых аппаратов :)) и промавтоматики, - вспоминаю, как "ужас, ужас, ужас" :(( не зашло.

...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)