PDP-11

Поделись знанием:
Перейти к: навигация, поиск
PDP-11
Разработчик

Digital Equipment Corporation

Разрядность

16-бит

Архитектура

CISC

Тип

Память-Память

Кодирование СК

1..3 16-ти битных слова

Переходы

Флаги условий

Порядок байтов

Little-endian

Размер страницы

8 KiB

Расширения

EIS, FIS, FPP, CIS

Регистры
Общего назначения

6

PDP-11 — серия 16-разрядных мини-ЭВМ компании DEC, серийно производившихся и продававшихся в 197080-х годах. Развитие серии PDP-8 из общей линейки компьютеров PDP. В PDP-11 появилось несколько уникальных технологических инноваций, эта серия была проще в программировании, чем её предшественники. Но, несмотря на её всеобщее признание со стороны программистов, PDP-11 со временем была вытеснена персональными компьютерами, включая IBM PC и Apple II.





Особенности PDP-11

Система команд

Программисты полюбили PDP-11 за её «ортогональную» систему команд: можно было отдельно запоминать команды, и отдельно — методы доступа к операндам. Можно было считать, что любой метод доступа (режим адресации) будет работать с любой операцией; не нужно было запоминать список исключений и особых случаев, в которых операция имеет ограниченный набор режимов адресации, все регистры (R0R7) могли использоваться с любой командой. Регистры R0R4 были универсальными, а регистры R5 (FP, указатель кадра, англ. frame pointer), R6 (SP, указатель стека, англ. stack pointer) и R7 (PC, счётчик команд, англ. program counter) — были специальными, для нескольких команд были исключения, но все эти регистры могли использоваться как операнды в арифметико-логических операциях или использоваться при формировании адресов операндов.

В некотором смысле, набор режимов адресации образовывал «базис», а набор операций — другой базис. Каждая двухоперандная инструкция состояла из двух 6-битных идентификаторов операндов (каждый из них содержал три бита на номер регистра и три бита на режим адресации), а также из 4-битного кода операции; однооперандная инструкция содержала один 6-битный идентификатор операнда и 10-битный код операции.

Отсутствие отдельной шины ввода-вывода

В отличие от многих других компьютеров своего времени, первые модели PDP-11 не имели отдельной шины ввода-вывода — только шину памяти Unibus. Все регистры устройств ввода-вывода имели свои адреса, аналогичные адресам памяти, поэтому отдельные инструкции ввода-вывода были не нужны. Система прерываний была сделана максимально простой, но достаточно гибкой. Каждое устройство имело свой вектор прерывания, которое при необходимости сообщало процессору, поэтому не было жёсткого ограничения на количество векторов, доступных для использования устройствами.

Высокопроизводительные машины семейства, начиная с PDP-11/45, уже имели отдельную шину памяти, Unibus же продолжала использоваться только для ввода-вывода. В PDP-11/70 был сделан ещё один шаг вперёд: добавился отдельный интерфейс для магнитных дисков и лент — Massbus. Тем не менее, управляющие регистры устройств ввода-вывода по-прежнему проецировались на память, и отдельных инструкций ввода-вывода не требовалось.

Разработана для массового производства

И наконец, компьютеры PDP-11 были разработаны для производства на заводах с низкоквалифицированной рабочей силой. Размеры всех конструктивных частей были относительно некритичными. При сборке печатные платы подключались к общей плате, на которой применялся монтаж навивкой. Соединительные блоки были очень похожи на те, которые уже давно применялись в телефонии.

Пример программы

Пример программы «Hello, World!» на макроассемблере MACRO-11, для запуска под RT-11:

         .TITLE  HELLO WORLD
         .MCALL  .TTYOUT,.EXIT
 HELLO:: MOV     #MSG,R1  ;НАЧАЛЬНЫЙ АДРЕС СТРОКИ
 1$:     MOVB    (R1)+,R0 ;ПОЛУЧАЕМ СЛЕДУЮЩИЙ СИМВОЛ
         BEQ     DONE     ;ЕСЛИ НОЛЬ, ВЫХОДИМ ИЗ ЦИКЛА
         .TTYOUT          ;ИНАЧЕ ПЕЧАТАЕМ СИМВОЛ
         BR      1$       ;ПОВТОР ЦИКЛА
 DONE:   .EXIT

 MSG:    .ASCIZ /Hello, world!/
         .END    HELLO

Для компиляции и запуска этой программы в системе RT-11 выполняется последовательность команд:

. MACRO HELLO
ERRORS DETECTED:  0
. LINK HELLO

. RUN HELLO
Hello, world!

Операционные системы

PDP-11 в странах СЭВ

В СССР и других социалистических странах было разработано и выпускалось несколько машин, совместимых по системе команд и частично по архитектуре с серией PDP-11:[1]

Электроника 100-16 Электроника 100-25 Электроника-79
Ширина шины адресов, бит 16 18 22
Набор команд 73 (базовый без MARK) 89 (B+, EIS, FIS, менеджер памяти) 137 (B+, EIS, FIS, FP11, менеджер памяти)
Быстродействие, оп/с 250 000 800 000 3 000 000
Число регистров 8 8 16
Режимы привилегий 1 2 3
Уровней прерываний 5 5 8

См. также

  • MSP430 — Контроллер с архитектурой, достаточно близкой к идеям PDP-11.
  • MCP-1600 — Многокристальный микропроцессор производства компании Western Digital с архитектурой и системой команд PDP-11.
  • General Instrument CP1600 — Однокристальный микропроцессор производства компаний General Instrument и Honeywell с архитектурой PDP-11.

Напишите отзыв о статье "PDP-11"

Примечания

  1. [www.village.org/pdp-11/faq.pages/Soviet11s.html The PDP-11 FAQ — PDP-11s behind the Iron Curtain]
  2. [winntmag.ru/os/2006/07/3290774/_p2.html Леонид Черняк. Высокопроизводительные встроенные компьютеры] — статья в журнале «Открытые системы»

Литература

  • Экхауз Р., Моррис Л., Мини-ЭВМ: организация и программирование / Р. Экхауз, Л. Моррис; Пер. с англ. А. Ф. Кондратюка, Л. С. Черняка. — М. : Финансы и статистика, 1983. — 359 с.
  • Сингер М. Мини-ЭВМ PDP-11: Программирование на языке ассемблера и организация машины: Пер. с англ = PDP-11. Assembler Language Programming and Machine Organization / Michael Singer. — М.: Мир, 1984. — 272 с.

Ссылки

  • [pdp-11.org.ru/ Проект PDP-11.ORG.RU]
  • [simh.trailing-edge.com/ SIMH] — эмулятор PDP
  • [bitsavers.informatik.uni-stuttgart.de/pdf/dec/pdp11/ Документация на PDP-11] на сайте bitsavers.org  (англ.)
  • [forum.maxiol.com/index.php?showforum=68 Документация на PDP-11 / VAX / Alpha]
  • [pdp-11.ru/ Проект PDP-11.RU]
  • [mirrors.pdp-11.ru/ Архив ПО для PDP-11/ VAX / Alpha]

Отрывок, характеризующий PDP-11

– Это не он самый. Это отец того, который написал прокламацию, – сказал адъютант. – Тот молодой, сидит в яме, и ему, кажется, плохо будет.
Один старичок, в звезде, и другой – чиновник немец, с крестом на шее, подошли к разговаривающим.
– Видите ли, – рассказывал адъютант, – это запутанная история. Явилась тогда, месяца два тому назад, эта прокламация. Графу донесли. Он приказал расследовать. Вот Гаврило Иваныч разыскивал, прокламация эта побывала ровно в шестидесяти трех руках. Приедет к одному: вы от кого имеете? – От того то. Он едет к тому: вы от кого? и т. д. добрались до Верещагина… недоученный купчик, знаете, купчик голубчик, – улыбаясь, сказал адъютант. – Спрашивают у него: ты от кого имеешь? И главное, что мы знаем, от кого он имеет. Ему больше не от кого иметь, как от почт директора. Но уж, видно, там между ними стачка была. Говорит: ни от кого, я сам сочинил. И грозили и просили, стал на том: сам сочинил. Так и доложили графу. Граф велел призвать его. «От кого у тебя прокламация?» – «Сам сочинил». Ну, вы знаете графа! – с гордой и веселой улыбкой сказал адъютант. – Он ужасно вспылил, да и подумайте: этакая наглость, ложь и упорство!..
– А! Графу нужно было, чтобы он указал на Ключарева, понимаю! – сказал Пьер.
– Совсем не нужно», – испуганно сказал адъютант. – За Ключаревым и без этого были грешки, за что он и сослан. Но дело в том, что граф очень был возмущен. «Как же ты мог сочинить? – говорит граф. Взял со стола эту „Гамбургскую газету“. – Вот она. Ты не сочинил, а перевел, и перевел то скверно, потому что ты и по французски, дурак, не знаешь». Что же вы думаете? «Нет, говорит, я никаких газет не читал, я сочинил». – «А коли так, то ты изменник, и я тебя предам суду, и тебя повесят. Говори, от кого получил?» – «Я никаких газет не видал, а сочинил». Так и осталось. Граф и отца призывал: стоит на своем. И отдали под суд, и приговорили, кажется, к каторжной работе. Теперь отец пришел просить за него. Но дрянной мальчишка! Знаете, эдакой купеческий сынишка, франтик, соблазнитель, слушал где то лекции и уж думает, что ему черт не брат. Ведь это какой молодчик! У отца его трактир тут у Каменного моста, так в трактире, знаете, большой образ бога вседержителя и представлен в одной руке скипетр, в другой держава; так он взял этот образ домой на несколько дней и что же сделал! Нашел мерзавца живописца…


В середине этого нового рассказа Пьера позвали к главнокомандующему.
Пьер вошел в кабинет графа Растопчина. Растопчин, сморщившись, потирал лоб и глаза рукой, в то время как вошел Пьер. Невысокий человек говорил что то и, как только вошел Пьер, замолчал и вышел.
– А! здравствуйте, воин великий, – сказал Растопчин, как только вышел этот человек. – Слышали про ваши prouesses [достославные подвиги]! Но не в том дело. Mon cher, entre nous, [Между нами, мой милый,] вы масон? – сказал граф Растопчин строгим тоном, как будто было что то дурное в этом, но что он намерен был простить. Пьер молчал. – Mon cher, je suis bien informe, [Мне, любезнейший, все хорошо известно,] но я знаю, что есть масоны и масоны, и надеюсь, что вы не принадлежите к тем, которые под видом спасенья рода человеческого хотят погубить Россию.
– Да, я масон, – отвечал Пьер.
– Ну вот видите ли, мой милый. Вам, я думаю, не безызвестно, что господа Сперанский и Магницкий отправлены куда следует; то же сделано с господином Ключаревым, то же и с другими, которые под видом сооружения храма Соломона старались разрушить храм своего отечества. Вы можете понимать, что на это есть причины и что я не мог бы сослать здешнего почт директора, ежели бы он не был вредный человек. Теперь мне известно, что вы послали ему свой. экипаж для подъема из города и даже что вы приняли от него бумаги для хранения. Я вас люблю и не желаю вам зла, и как вы в два раза моложе меня, то я, как отец, советую вам прекратить всякое сношение с такого рода людьми и самому уезжать отсюда как можно скорее.
– Но в чем же, граф, вина Ключарева? – спросил Пьер.
– Это мое дело знать и не ваше меня спрашивать, – вскрикнул Растопчин.
– Ежели его обвиняют в том, что он распространял прокламации Наполеона, то ведь это не доказано, – сказал Пьер (не глядя на Растопчина), – и Верещагина…
– Nous y voila, [Так и есть,] – вдруг нахмурившись, перебивая Пьера, еще громче прежнего вскрикнул Растопчин. – Верещагин изменник и предатель, который получит заслуженную казнь, – сказал Растопчин с тем жаром злобы, с которым говорят люди при воспоминании об оскорблении. – Но я не призвал вас для того, чтобы обсуждать мои дела, а для того, чтобы дать вам совет или приказание, ежели вы этого хотите. Прошу вас прекратить сношения с такими господами, как Ключарев, и ехать отсюда. А я дурь выбью, в ком бы она ни была. – И, вероятно, спохватившись, что он как будто кричал на Безухова, который еще ни в чем не был виноват, он прибавил, дружески взяв за руку Пьера: – Nous sommes a la veille d'un desastre publique, et je n'ai pas le temps de dire des gentillesses a tous ceux qui ont affaire a moi. Голова иногда кругом идет! Eh! bien, mon cher, qu'est ce que vous faites, vous personnellement? [Мы накануне общего бедствия, и мне некогда быть любезным со всеми, с кем у меня есть дело. Итак, любезнейший, что вы предпринимаете, вы лично?]
– Mais rien, [Да ничего,] – отвечал Пьер, все не поднимая глаз и не изменяя выражения задумчивого лица.
Граф нахмурился.
– Un conseil d'ami, mon cher. Decampez et au plutot, c'est tout ce que je vous dis. A bon entendeur salut! Прощайте, мой милый. Ах, да, – прокричал он ему из двери, – правда ли, что графиня попалась в лапки des saints peres de la Societe de Jesus? [Дружеский совет. Выбирайтесь скорее, вот что я вам скажу. Блажен, кто умеет слушаться!.. святых отцов Общества Иисусова?]
Пьер ничего не ответил и, нахмуренный и сердитый, каким его никогда не видали, вышел от Растопчина.

Когда он приехал домой, уже смеркалось. Человек восемь разных людей побывало у него в этот вечер. Секретарь комитета, полковник его батальона, управляющий, дворецкий и разные просители. У всех были дела до Пьера, которые он должен был разрешить. Пьер ничего не понимал, не интересовался этими делами и давал на все вопросы только такие ответы, которые бы освободили его от этих людей. Наконец, оставшись один, он распечатал и прочел письмо жены.
«Они – солдаты на батарее, князь Андрей убит… старик… Простота есть покорность богу. Страдать надо… значение всего… сопрягать надо… жена идет замуж… Забыть и понять надо…» И он, подойдя к постели, не раздеваясь повалился на нее и тотчас же заснул.
Когда он проснулся на другой день утром, дворецкий пришел доложить, что от графа Растопчина пришел нарочно посланный полицейский чиновник – узнать, уехал ли или уезжает ли граф Безухов.
Человек десять разных людей, имеющих дело до Пьера, ждали его в гостиной. Пьер поспешно оделся, и, вместо того чтобы идти к тем, которые ожидали его, он пошел на заднее крыльцо и оттуда вышел в ворота.
С тех пор и до конца московского разорения никто из домашних Безуховых, несмотря на все поиски, не видал больше Пьера и не знал, где он находился.


Ростовы до 1 го сентября, то есть до кануна вступления неприятеля в Москву, оставались в городе.
После поступления Пети в полк казаков Оболенского и отъезда его в Белую Церковь, где формировался этот полк, на графиню нашел страх. Мысль о том, что оба ее сына находятся на войне, что оба они ушли из под ее крыла, что нынче или завтра каждый из них, а может быть, и оба вместе, как три сына одной ее знакомой, могут быть убиты, в первый раз теперь, в это лето, с жестокой ясностью пришла ей в голову. Она пыталась вытребовать к себе Николая, хотела сама ехать к Пете, определить его куда нибудь в Петербурге, но и то и другое оказывалось невозможным. Петя не мог быть возвращен иначе, как вместе с полком или посредством перевода в другой действующий полк. Николай находился где то в армии и после своего последнего письма, в котором подробно описывал свою встречу с княжной Марьей, не давал о себе слуха. Графиня не спала ночей и, когда засыпала, видела во сне убитых сыновей. После многих советов и переговоров граф придумал наконец средство для успокоения графини. Он перевел Петю из полка Оболенского в полк Безухова, который формировался под Москвою. Хотя Петя и оставался в военной службе, но при этом переводе графиня имела утешенье видеть хотя одного сына у себя под крылышком и надеялась устроить своего Петю так, чтобы больше не выпускать его и записывать всегда в такие места службы, где бы он никак не мог попасть в сражение. Пока один Nicolas был в опасности, графине казалось (и она даже каялась в этом), что она любит старшего больше всех остальных детей; но когда меньшой, шалун, дурно учившийся, все ломавший в доме и всем надоевший Петя, этот курносый Петя, с своими веселыми черными глазами, свежим румянцем и чуть пробивающимся пушком на щеках, попал туда, к этим большим, страшным, жестоким мужчинам, которые там что то сражаются и что то в этом находят радостного, – тогда матери показалось, что его то она любила больше, гораздо больше всех своих детей. Чем ближе подходило то время, когда должен был вернуться в Москву ожидаемый Петя, тем более увеличивалось беспокойство графини. Она думала уже, что никогда не дождется этого счастия. Присутствие не только Сони, но и любимой Наташи, даже мужа, раздражало графиню. «Что мне за дело до них, мне никого не нужно, кроме Пети!» – думала она.