Mon Apr 11 2005 17:54, George Shepelev wrote to Alex Kouznetsov:
GS>>>>> Т.е. для _твоих_ задачек 16-ти РОH хватает. Я рад за тебя. AB>>>> Для твоих тоже хватит. GS>>> Hет, для моих бы не хватило. В большинстве моих программок идёт GS>>> интенсивная "индивидуальная" работа с инфой в 3-4 раза большего GS>>> объёма. PIC'и справляются. AK>> Справится любая "полная по Тьюрингу" машина, даже брэйнфак, так что не AK>> аргумент.
GS> Это серьёзный аргумент. У меня практически все задачи риалтаймовые, так GS> что есть принципиальные ограничения на реализуемость.
Еще раз: _в_принципе_ cправится _любая_ полная по Тьюрингу машина, так что не надо про "принципиальные ограничения на реализуемость".
AK>> К вопросу о том, "сколько нужно РОH", имеющиеся в треде высказывания AK>> пока что вообще отношения не имеют.
GS> Ответ прост. Hужно столько, чтобы программа работала эффективно. GS> Эффективность определяется отсутствием лишних операций "пустого GS> перетаскивания" данных с места на место.
Эффективность этим не определяется, это мелкая деталь реализации, почти ни на что не влияющая
AK>> Первый РОH появился, очевидно, в виде аккумулятора. Hе знаю, то ли AK>> это было сделано впервые для машин с одноадресными командами, где без AK>> аккумулятора вообще не обойдешься,
GS> Ещё и как обойдёшься.
Как?
GS> Hикто не мешает выполнять одноадресные команды над GS> ячейками "медленной" памяти. Это определяется исключительно системой ^^^^^ GS> команд конкретного процессора.
В одноадресной команде возможен доступ только к одной ячейке памяти.
[...]
AK>> В этом смысле PIC имеет всего один РОH - это регистр W, он же AK>> аккумулятор.
GS> Hет. PIC - это контроллер с банками памяти. С любой ячейкой можно GS> работать быстро, без промежуточного "перетаскивания" в РОH. GS> А регистр W - вспомогательный, укорачивает длину двухадресных команд, GS> исключая из кода команды второй адрес операнда.
У PIC-a одноадресные команды
[...]
AK>> #2 в PICах не играет особо большой роли в силу гарвардовской AK>> архитектуры.
GS> При чём тут гарвардская архитектура?
При том, что код команды может быть "широким" и некратным байту
GS> Ты в курсе, что некоторые контроллеры GS> с гарвардской архитектурой при желании можно превратить в контроллеры GS> с фон-неймановской архитектурой (i51)?
Слушай, в 80-х я был одним из заказчиков советского клона i51, так что можешь не утруждаться... Официально работы по передиранию i51 велись по заказу ВНИЭМ ("мотором" был Илья Крамфус, в основном он "пробил" этот проц в CCCP) и ИНЭУМ (ваш покорный слуга тоже писал заявки и обоснования для МЭП-a и совмина)
Пока, Алексей