Error404, 6502 вообще RISC. У него каждый такт активность на шине. А вот 8080 если и натягивать на RISC, то только очень медленный. Активность шины каждые 3-4 такта.
Error404, 6502 вообще RISC. У него каждый такт активность на шине. А вот 8080 если и натягивать на RISC, то только очень медленный. Активность шины каждые 3-4 такта.
Хотя я ориентируюсь на 6800, где всего 6 методов адресации, а не 13, как в 6502 (т.к вообще не понимаю зачем нужны некоторые извращённые адресации имеющиеся в 6502), но даже мне ясно, что это совсем не одно и то же. Точнее пример неудачный. Это же адресация в пределах ZERO-page 0000...00FF, т.е в массиве всего в 256 байт, причём половина ZERO-page во всех 6502-машинах уже занята на системные ячейки ROM-BIOS (а выше 100H лезть бесполезно, там стек). Есть команда дающая нечто похожее на адресацию через (HL), - абсолютная адресация с индексированием через X или Y. Но она медленная (т.к трехбайтовая) и к тому же только в пределах 256 байт. А на практике часто надо просматривать большие массивы, например в Allocation Table (VTOC) или FAT больших дисков. Адресация через (HL) с последующим INC HL это делает без проблем, а с убогим 6502 нечто подобное (но дико тормозное) можно сделать только используя самомодификацию кода. Лучше бы разработчики 6502 вместо извращённых методов адресации добавили бы адресацию с автоинкрементом, как это сделано в грамотных процессорах.Сообщение от HardWareMan
Впрочем, может быть именно такие "заморочки и извращения" и привлекают любителей 6502. Кроме того, для устранения таких недоработок системы команд 6502 давно написаны стандартные процедуры. Например, как команду 16-ричного сложения (DAD у КР580) заменить подрограммой 6502. При разработке 6502, для ускорения работы, уделяли внимание лишь сокращению числа тактов на команду (хотя это всё-равно не RISK). Поэтому у 6502 было много фанатов и, например, первые мобильные телефоны имели систему команд 65C02.
Господин теоретик, который никогда не писал ни под что, кроме этого вашего Z80! Я вам дал команду с Indirect Indexing Addressing:
Zero Page хранит адрес базы, а не сами данные. Индексный регистр - быстрое смещение в пределах 0...255. Но и базовый адрес легко корректируется через RMW команду с Zero Page. RMW команда с Zero Page на 6502 работает практически так же как и у i8080, если у них одинаковая тактовая частота (например 1,7МГц). Хватит уже лезть туда, где не только не знаете, но и не собираетесь даже учиться/принимать как есть, примеряя все на свой этот Z80. Запомните, есть в этом мире много процессоров кроме Z80.
- - - Добавлено - - -
И еще, оригинальный пост:
Ваша цитата:
Куда делись скобки? И не надо меня лечить за "да ты же изменил пост!!!111". Я изменил вчера в 20:45, вы ответили сегодня в 03:11. Я понимаю, что многие слоупочат, но не на 7 часов же! Вы опять взялись за старое, править цитаты людей под себя?
Последний раз редактировалось HardWareMan; 14.07.2017 в 11:30.
думаю видосик разрешит ваш спор
с 9:20 про адрессацию
Эксперты набижали(:
$0000-$00FF - Zero Page и никакие "косвенные регистры"
$0100-$01FF - занято стеком.
адресация ZeroPage позволит избежать самомодифицирующегося кода, например, LDA ($CB),Y, $CB/$CC- мл./ст. байты адреса
Шынни, именно это я ему и привел в пример, но он такой "ZP и так мала, чтобы хранить там 128 байт массива, когда остальные 128 уже заняты системой".
ZP называем "псевдорегистрами" не только за быстрый (скорее сокращенный) доступ, но и за RMW.
лапаморда.джпег
Система иногда использует нулевую страницу, например OS Atari, Apple, Oric.
уехали не в туда, речь пошла об цпм.
В первых (самых базовых) определениях RISC (что я и подчеркнул особо в своем предыдущем посте) не было требования выполнения инструкций за 1 такт. А было сокращение команд за счет сокращения способов адресации и отказа от сложной математики (целью было упрощение под распараллеливание/конвейеризацию), и отказ от инструкций выражающихся в микроциклы/микрокод процессора (опять же сложная математика или например LDIR у Z80), тоже потому что сложно конвейеризируется.
- - - Добавлено - - -
Поэтому в сравнении с Z80, i8080 вполне себе недо-RISC (отсутствие конвейера этого не отменяет).
- - - Добавлено - - -
Другое дело, что i8080 не имеет преимуществ перед Z80, это - да. Но мы же их просто на попадание в определение меряем, i8080 и 6502 туда укладываются, а Z80-нет.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Error404, достаточно знать аббревиатуру: Reduced Instruction Set Computer и Complex Instrucion Set Computer. И сразу все встанет на свои места. Но потом этого стало не хватать и придумали новое определение:
Сообщение от WIKI
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)