Ксения (07.12.2015 15:32, просмотров: 258) ответил SciFi на Вы когда-нибудь слышали про двухпортовую память?
Слышала конечно, но и на ней за 1 такт содержимое ячейки не изменить. А уж тем более, если пишется результат операции, в которой прошлое содержимое этой же ячейки служит операндом. Это только для графической памяти неважно, старое значение ячейки прочтется или или новое, да и то в случаях обращения обоих портов к одной и той же ячейке операцию одного из каналов тормозил арбитраж (обычно канала записи, т.е. ход луча в кинескопе тормознуть было нельзя).
Да вы сами посчитайте, во сколько тактов вылилась бы операция
ADD R1, R2
эквивалентная сишной записи
R1 += R2
или
R1 = R1 + R2
будь регистры хранящимися хоть в друхпортовой памяти.
Вы осознаете, что операцию чтения и записи в R1 невозможно совместить во времени, будь память хоть многопортовой?