Rokl писал(а):assur153 писал(а):...Регистры на PDP-11-совместимых процессорах шестнадцатиразрядные. Их восемь штук (явно адресуемых). Где Вы нашли "убогость" ?
Вы циклитесь на шестнадцатиразрядности регистров,
и на 8 способах адресации т.к. на этом плюсы этого процессора 1801ВМ1 практически заканчиваются.
Способов адресации у вм80 поменьше (6), однако 8086 не рассматриваем, т.к. у него 24 способа адресации.
Приведите, пожалуйста, весь список из 24 способа адресации процессора 8086.
И пошустрее 1801ВМ1 чем, 8 разрядный ВМ80.
5мгц у 1801ВМ1 и 2,5 Мгц у 580ВМ80А тактовая частота. Однако 1801ВМ1 тутже проигрывает с разгромным счетом ВМ86 с такой же тактовой частотой в 5 Мгц. У ВМ86 быстродействие в 5 раз выше 2,5 Млн оп/сек, против 500 тыс оп/сек у 1801ВМ1
Ещё раз. Напишите тестовую программу на ассемблере хоть 8080, хоть 8086, а мы напишем на ассемблере PDP-11. А потом сравним по скорости для заданных тактовых частот. И кстати, кроме К1801ВМ1, есть ещё и ВМ2, и ВМ3 -- про это тоже забывать не следует.
теперь минусы, о которых вы скромно умолчали:
1. система команд. У процессора 1801ВМ1 мы имеем 65 базовых команд. У того же ВМ80 -78 базовых команд,...ВМ86 не рассматриваем.
Рассматривайте и 8086. А заодно посмотрите, каких команд нет и попробуйте ответить, почему. Могу даже подсказать: в PDP-11 нет команд PUSH, POP, MOVS, SCAS, LODS и т.д. Только они там не нужны -- как раз благодаря развитой системе адресации. Вместо PUSH, POP, MOVS благополучно используется обычная MOV, например.
2. Отсутствие портов у процессора 1801ВМ1..и как следствие, отсутствие команд чтения и записи в порт одной командой. (здесь я вижу убогость)
Если Вы видите здесь убогость, значит, Вы не видите куда более очевидных вещей. В PDP-11 к регистрам внешних устройств можно обратиться любой арифметико-логической командой. Например, можно одной операцией установить нужный бит регистра, не затрагивая все остальные. В 8080/8086 для той же цели потребуется использовать три команды и один регистр (аккумулятор).
3. Адресное пространство портов и памяти у 1801ВМ1 НЕ разделено.
Из-за этого устройства ввода вывода у процессора занимают половину адресного пространства(БК-0010) и на саму память остается всего 32 К. Зарезервировано в стандартном варианте 8к под внешние устройства. (главная убогость)

Явный проигрыш с любым интеловским процессором и конкретно с тем же 580ВМ80 у которого отдельно адресуется 256 портов.
О преимуществах отсутствия разделения смотрите выше. Далее, выделение 32 Кбайт -- это особенность БКшки, а отнюдь не процессора. В обычных PDP-11 под ввод-вывод отводится 8 Кбайт, а не 32. Наконец, может быть, Вы не в курсе, но все современные устройства ввода-вывода, подключаемые к шинам PCI/PCI Express, умеют отображать свои регистры не только на пространство ввода-вывода, но и на пространство памяти, ну а некоторые специализированные контроллеры, например, улучшенный контроллер прерываний APIC, всегда занимает определённую часть адресного пространства памяти. Похоже, что разработчики ПК, в т.ч. и Intel, в конце концов пришли к выводу, что работать с устройствами как с памятью удобнее.
Т.Е. практически у 1801ВМ1 не имеем чистого адресного пространства 64к для памяти. у ВМ80 без проблем все 64К отдаются под память.
Только не забудьте, что и у 8080 это не "чисто память": есть обычное ОЗУ, есть ПЗУ, есть видеопамять. Если уж нужна "чистота памяти", то это -- к мэйнфреймам IBM. Вот там действительно всё адресное пространство памяти занято только обычным ОЗУ.
Оконный режим, в следствие убогости пункта 3, у 1801ВМ1 8К слов, у ВМ80 64К без проблем.
Бред. Переключение всех 64 Кбайт сразу вызывает, мягко говоря, проблемы при программировании, поэтому всегда используются страницы меньшего размера. Не говоря о том, что размер страниц к процессору вообще никакого отношения не имеет.
4.Мультиплексированная шина, съедает быстродействие в 2 раза у 1801ВМ1.
Похоже, единственный пункт, в котором есть доля истины. Да только вот проблема в том, что главным тормозом мультиплексированная шина никогда не была. И у PDP-11 она, кстати, не мультиплексированная, её сделали таковой для компактных машин, у которых не было особых требований к производительности.
5. Число линий на прерывание всего 4. У того же ВМ80 есть возможность наращивать количество прерываний от 8 до 256 с помощю контроллера прерываний. (у 1821ВМ85А даже на кристалл выведено 6 линий прерываний)
Вообще-то к каждой линии прерывания может быть подключено (и подключается) достаточно произвольное число устройств, причём каждое из этих устройств имеет свой собственный вектор прерывания. А номер линии определяет лишь приоритет устройства, и ничего более.
Пункты 2 и 3 показывают ущербность архитектуры процессора 1801ВМ1
Вообще-то это архитектура PDP-11. Интересно, почему эти машины уже почти 40 лет эксплуатируются? Вероятно, как раз от убогости.
А если добавить сюда промышленные контроллеры периферийных устройств на микропрограммном уровне, не совместимые более ни с чем...это полное отсутствие гибкости системы на базе процессора 1801ВМ1.(убогость породила убогость). Потому и не было клонов БК0010-11. Только промышленные образцы.
Позволю себе напомнить кучу вариантов схем того же "Синклера" на Z80, куча устройств на 580ВМ80, которые клепают до сих пор....
Только этих промышленных образцов в 1970-80-х годах выпущены десятки, если не сотни миллионов. И некоторая часть их работает до сих пор.
Надеюсь я ответил на вопрос об убогости.
Ничего Вы не ответили. Вы кучу чуши написали, начиная с 24 видов адресации у 8086 и кончая сравнением простеньких игровых компьютеров, коими "Синклеры" и являются, с контроллерами и машинами, работающими в управлении технологическими процессами, применявшимися для научно-технических расчётов, САПР и т.д. и т.п.
Вот потому и рассматриваю я 1801ВМ1 в нише с 8 разрядными процессорами, т.к. 16 разрядным процессарам от Интел он проигрывает с разгромным счетом по всем параметрам... быстродействие, способы адресации, количество команд, гибкость системы, количество прерываний, разрядность шины адреса, набор периферийных контроллеров и т.д. и т.п...
Глупость несусветная. Даже К1801ВМ1 -- самый медленный из процессоров архитектуры PDP-11 -- выигрывает по гибкости у 8086, а ведь сравнить можно и более быстрые процессоры. Только Вы от сравнения уклоняетесь, заменяя это голословными утверждениями. Ещё раз: напишите программу на ассемблере 8086 и посчитайте скорость её работы, а затем сравним с аналогом этой программы и на К1801ВМ1, и ВМ2, и ВМ3, и с разными моделями PDP-11.