Re: расталкуйте как пользоваться мк
Добавлено: Чт июн 30, 2011 23:52:09
Вики -- весьма недостоверный источник информации хотя бы потому, что пишут её все, кому не лень, ну а уровень подготовки большинства "пейсателей" оставляет желать... В данном случае, как я говорил, не только для отнесения 6502 к РИСКам, но даже для приближения к ним вообще никаких оснований нет, поскольку в нём не реализована хотя бы частично ни одна из идей, положенных в основу концепции РИСК-процессоров.
Принципы архитектуры РИСК стали активно продвигаться действительно в конце 1980-х, но именно тогда они и соблюдались в наибольшей степени. Но достаточно вспомнить, что 6502 появился в середине 1970-х, чтобы понять: РИСКом он не мог быть хотя бы потому, что сам этот подход к архитектуре возник намного позже.
Кстати говоря, по сравнению с другими 8-разрядными процессорами система команд 6502 отнюдь не была упрощённой, а по разнообразию и гибкости видов адресации превосходила если не все, то большинство (в частности, безоговорочно превосходит 8080), поэтому этот вариант также отпадает. Хотя главное всё-таки в том, что РИСК -- это не просто сокращённый набор команд, а сокращённый вполне определённым способом (полный отказ от операций регистр-память и память-память, а также от любых команд со сложным алгоритмом исполнения, в частности от деления и -- на том этапе -- умножения) и с определённой целью: обеспечить максимальную производительность за счёт упрощения выборки, декодирования и исполнения отдельно взятых команд с применением конвейера (для него, собственно, и потребовалась фиксированная длина кода команды, иначе резко усложняется процесс выборки и декодирования команды). По сравнению с 16-разрядными 8086/8088 она, конечно, была более скромной, но сравнение процессоров принципиально разного класса попросту некорректно (в сравнении с 32-разрядным VAX-11 можно назвать сокращённой систему команд почти любого процессора, включая и тоже 32-разрядный, но появившийся лет на 10 позже 80386, и тоже 32-разрядные, но появившиеся намного раньше мэйнфреймы ИБМ, и 60-разрядные мэйнфреймы CDC -- весьма оригинальные машинки, весьма популярные в конце 1960-х -- начале 1970-х...; ну а если откинуть всякие SSE и тому подобные векторные расширения системы команд современных процессоров, то по богатству системы команд с VAXом вообще, пожалуй, никто не сравнится).
). Второй машиной у меня были СМ ЭВМ (советские аналоги PDP-11) -- вероятно, наиболее удачные по системе команд 16-разрядные машины всех времён и народов. Потом уже были 8080, ЕС ЭВМ (аналоги ИБМовских мэйнфреймов), персоналки... В общем, после знакомства, причём весьма глубокого (с 15 лет де-факто системщиком работал на СМках, хотя юридически, конечно, был всего лишь сначала оператором ЭВМ, а потом -- техником-программистом, ведь без ВО в СССР занять инженерную должность невозможно было в принципе) с другими архитектурами 8080 произвёл на меня крайне неблагоприятное впечатление, ну а как я плевался, когда столкнулся с 8088, передать невозможно вообще никакими словами... Писать же на ассемблере 8080 пришлось на Роботроне-1715. Там вообще-то стоял Z80, но программы писались для одноплатных промышленных контроллеров на 8080, так что, можно считать, что работал именно на нём.
Принципы архитектуры РИСК стали активно продвигаться действительно в конце 1980-х, но именно тогда они и соблюдались в наибольшей степени. Но достаточно вспомнить, что 6502 появился в середине 1970-х, чтобы понять: РИСКом он не мог быть хотя бы потому, что сам этот подход к архитектуре возник намного позже.
Кстати говоря, по сравнению с другими 8-разрядными процессорами система команд 6502 отнюдь не была упрощённой, а по разнообразию и гибкости видов адресации превосходила если не все, то большинство (в частности, безоговорочно превосходит 8080), поэтому этот вариант также отпадает. Хотя главное всё-таки в том, что РИСК -- это не просто сокращённый набор команд, а сокращённый вполне определённым способом (полный отказ от операций регистр-память и память-память, а также от любых команд со сложным алгоритмом исполнения, в частности от деления и -- на том этапе -- умножения) и с определённой целью: обеспечить максимальную производительность за счёт упрощения выборки, декодирования и исполнения отдельно взятых команд с применением конвейера (для него, собственно, и потребовалась фиксированная длина кода команды, иначе резко усложняется процесс выборки и декодирования команды). По сравнению с 16-разрядными 8086/8088 она, конечно, была более скромной, но сравнение процессоров принципиально разного класса попросту некорректно (в сравнении с 32-разрядным VAX-11 можно назвать сокращённой систему команд почти любого процессора, включая и тоже 32-разрядный, но появившийся лет на 10 позже 80386, и тоже 32-разрядные, но появившиеся намного раньше мэйнфреймы ИБМ, и 60-разрядные мэйнфреймы CDC -- весьма оригинальные машинки, весьма популярные в конце 1960-х -- начале 1970-х...; ну а если откинуть всякие SSE и тому подобные векторные расширения системы команд современных процессоров, то по богатству системы команд с VAXом вообще, пожалуй, никто не сравнится).
Я несколько раньше столкнулся с 6502: в 1985 или 86-м, и активно имел с ним дело до 1989-го включительно, а потом эпизодически занимался "агатами" (главным образом чинилВ те годы доступные для сборки компьютеры были на основе 8080. Получается, что я пересел на 8080 по вине обстоятельств.