WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте
Электроника Д3-28

Электроника Д3-28 — специализированное управляющее вычислительное устройство, занимающее промежуточное положение между персональными компьютерами и программируемыми калькуляторами.

Создана основе машины 15ВСМ5, которая в свою очередь сделана на базе программируемого калькулятора Wang 700[1].Имеет встроенную клавиатуру (цифровые и функциональные клавиши), двухстрочный дисплей на семисегментных индикаторах (12 цифр мантиссы, две цифры степени и два индикатора знака в каждой строке) и накопитель на стандартных аудиокассетах. Также оснащается интерфейсами ИРПР и ИРПС (в виде согласующего устройства ПЭЛ2.240.001), к которым обычно подключался принтер и алфавитно-цифровой терминал (как правило, 15ИЭ-00-013).

Варианты исполнения

Первые выпуски Д3-28 имели микропрограммное обеспечение, находящееся в ПЗУ на магнитных сердечниках (прошивалось вручную тонким многожильным проводом на матрице из ферритовых колец). Впоследствии ПЗУ выполнялось на интегральных микросхемах. В некоторых тестовых экземплярах ПЗУ с микропрограммами устанавливались в панельки; существовали специальные прошивки для использования машин в составе специализированных вычислительных комплексов.

В процессе производства Д3-28 внутренняя архитектура и программное обеспечение совершенствовалось с добавлением новых команд. Поколения Д3-28 (в соответствии с инструкцией по эксплуатации) делятся на «выпущенные до октября 1979 года», после этой даты и «после 1983 года».

Д3-28 16К (15ВМ16)

16 килобайт ОЗУ (микросхемы в первых выпусках — К565РУ1, в последующих — К565РУ3 и К565РУ6) Внешне отличалась также красным цветом индикаторов и закрывающего их оргстекла (последующие модели — оранжевые цифры под зелёным стеклом).

Д3-28 32К (15ВМ32)

Наиболее массовое исполнение[источник не указан 803 дня]. 32 килобайта ОЗУ (микросхемы 565РУ6)

Д3-28 128К (15ВМ128)

128 килобайт ОЗУ (микросхемы 565РУ5)

В зависимости от исполнения (цифры после 15ВМ128-xxx) Д3-28 имел возможность подключения к фотосчитывающим устройствам (СП-3 и FS-1501), ленточным перфораторам (ПЛ-150М), печатающим машинкам (Consul 256, Consul 260), специальные блоки для подключения терминалов типа 15ИЭ-00-013, а также возможность подключения удаленных устройств дистанционного управления Д3-28. Подключение машинок Consul и терминала превращала Д3-28 в персональный компьютер. Возможность загрузки и автоматического запуска программы через интерфейс при включении машины.

Архитектура и система команд

Система команд У Электроники Д3-28 с объёмом ОЗУ 32К Команды машинно-ориентированного языка Д3-28 кодируются двумя или четырьмя шестнадцатеричными цифрами: на основе КОИ-7 (набор2) c командами на русском языке:

На основе КОИ-7 Н2 в виде русскоязычных команд и машинного 4-значного шестнадцатеричного кода для электроники ЭВМ ДЗ-28

.0.1 .2.3 .4.5 .6.7 .8.9 .A.B .C.D .E.F
 
0.
 
ПУС
00 00
НЗ
00 01
НТ
00 02
КТ
00 03
КП
00 04
КТМ
00 05
ДА
00 06
ЗВ
00 07
ВШ
00 08
ГТ
00 09
ПС
00 10
ВТ
00 11
ПФ
00 12
ВК
00 13
ВЫХ
00 14
ВХ
00 15
 
1.
 
АР1
01 00
(СУ1)
01 01
(СУ2)
01 02
(СУ3)
01 03
СТП
01 04
НЕТ
01 05
СИН
01 06
КБ
01 07
АН
01 08
КН
01 09
ЗМ
01 10
АР2
01 11
РФ
01 12
РГ
01 13
РЗ
01 14
РЭ
01 15
 
2.
 
ПРОБЕЛ
02 00
!
02 01

02 02
#
02 03
¤
02 04
%
02 05
&
02 06

02 07
(
02 08
)
02 09
*
02 10
+
02 11

02 12
-
02 13
.
02 14
/
02 15
 
3.
 
0
03 00
1
03 01
2
03 02
3
03 03
4
03 04
5
03 05
6
03 06
7
03 07
8
03 08
9
03 09
:
03 10
;
03 11
<
03 12
{{{2}}}
03 13
>
03 14
?
03 15
 
4.
 
@
04 00
A
04 01
B
04 02
C
04 03
D
04 04
E
04 05
F
04 06
G
04 07
H
04 08
I
04 09
J
04 10
K
04 11
L
04 12
M
04 13
N
04 14
O
04 15
 
5.
 
P
05 00
Q
05 01
R
05 02
S
05 03
T
05 04
U
05 05
V
05 06
W
05 07
X
05 08
Y
05 09
Z
05 10
[
05 11
\
05 12
]
05 13
¬
05 14
_
05 15
 
6.
 
Ю
06 00
А
06 01
Б
06 02
Ц
06 03
Д
06 04
Е
06 05
Ф
06 06
Г
06 07
Х
06 08
И
06 09
Й
06 10
К
06 11
Л
06 12
М
06 13
Н
06 14
О
06 15
 
7.
 
П
07 00
Я
07 01
Р
07 02
С
07 03
Т
07 04
У
07 05
Ж
07 06
В
07 07
Ь
07 08
Ы
07 09
З
07 10
Ш
07 11
Э
07 12
Щ
07 13
Ч
07 14
ЗБ
07 15
  • ПУС (NUL) — пусто, НЗ (SON) — начало заголовка, НТ (STX) — начало текста, КТ (ETX) — конец текста, КП (EOT) — конец передачи, КТМ (ENQ) — кто там?, НЕТ (NAK) —отрицание
  • отрицательный ответ, СИН (SIN) — синхронизация, КБ (ETB) — конец блока блока данных, ЗБ (DEL) — забой, АН (CAN) — аннулирование, КН (EM) — конец носителя, ЗМ (SUB)- замена, позволяет заменить символ, ВХ, (S1) — вход, работа с одной половиной таблицы, ВЫХ (S0) — выход, работа с символами

Для облегчения восприятия команд используется мнемокод в ассемблированном виде

  • ABGE — прибавление единицы и ветвление, если больше или равно
  • ADD — сложение
  • AND — логическое умножение
  • ANS — анализ
  • GO — пуск
  • LOAD — загрузка
  • LOADP — считывание с МЛ
  • DIV — деление
  • SUB — вычитание
  • RTSI — псевдовозврат из подпрограммы
  • INP — ввод
  • SOB — вычитание единицы и ветвление
  • MARK — метка
  • MUL — умножение
  • BBIS — ветвление, если бит установлен (=1)
  • WAIT — ожидание
  • SWA — обмен
  • CLR — очистка (обнуление)
  • NEG — отрицание
  • INT — целое
  • VER — контроль
  • DIG — цифра (десятичная)
  • SQR — квадратный корень
  • INV — обратная величина
  • JMM — передача управления метки
  • XOR — исключающее “или”
  • BMER — ветвление, если машинная ошибка
  • BEV — ветвление, если чётно
  • BBIC — ветвление, если бит очищен (= 0)
  • BEQ — ветвление, если равно
  • E — экспонента, (показатель степени)
  • BLT — ветвление, если меньше чем
  • OR — логическое сложение
  • BKEY-ветвление, если клавиша
  • BGE-ветвление, если больше или равно
  • BHIS-ветвление, если больше или тождественно
  • MOV — пересылка
  • CAP — декартовы в полярные
  • PRINT — вывод на печать
  • POC — полярные в декартовы (преобразование координат)
  • SAVE — запись
  • OUT — вывод
  • ATOI — преобразование в целочисленное
  • POINT — точка
  • CMD — команда
  • DEG — градус
  • COM — инвертирование
  • BR — ветвление безусловное
  • RTII — псевдовозврат из прерывания
  • BSA — ветвление или тождество
  • RTS — возврат из подпрограммы
  • RES — остаток
  • QRT — квадрат
  • BPER — ветвление, если программная ошибка
  • BNE — ветвление, если не равно
  • BPL — ветвление, если плюс
  • BMI — ветвление, если минус
  • END — конец

Работа с клавиатуры Д3-28

  • Возможна работа в одном из 4-х режимов*Р*, *В*, *ПВ*, *П*, задаётся нажатием клавиши и горит рядом с ней индикатор.
  • Р* является основным, производится выполнение всех программ и команд записанных в ОЗУ вводимых с клавиатуры Д3-28, с НМЛ.
  • В* Ввод программ в ОЗУ проверка и изменение текстов программ, команда не выполняется, а только записывается в ОЗУ в шестнадцатеричном виде по адресу, индицируемому в регистре Y.
  • ПВ* Печать и ввод
Символ на клавишеНазвание командыМнемокодКод команды
ММеткаMARK04 08
СЛСчитывание с МЛLOADP05 13
SПускGO05 14
ВПВызов из памятиMOV C,X04 05
ЗПЗапись в памятьMOV X,C04 04

Организация памяти

  • В Д3-28 ОЗУ условно разделено на две зоны: рабочая и служебная. Ячейки служебной зоны именуются регистрами.
  • Рабочая зона 32-килобайтных машин занимает адреса с 0.00.00.00 (00000 дес.) по 7.14.15.15 (в 16-ричном виде 0x7EFF или 32511 дес.) в этой зоне размещаются данные и программы пользователя.
  • Служебная зона занимает последние 256 байтов ОЗУ с 7.15.00.00 (32512 дес.) по 7.15.15.15 (32767 дес). В некоторых регистрах хранится информация для нормальной работы Д3-28, часть свободных может быть использована для команд.
  • Структура служебной зоны ОЗУ: с адреса 7.15.00.00 по 7.15.01.15 расположены шестнадцать двухбайтовых регистров R00,RO1…R15, каждый R-регистр состоит из двух байтов ОЗУ с соседними адресами, байт с меньшим адресом является старшим. Регистры R08…R15 состоят из шестнадцати однобайтных регистров S00…S15.
  • Четыре регистра R04,R05,R06,R07 образуют восьмибайтный регистр RR, который используется в командах 12 06 (MOV X,RR) и 12 07 (MOV RR,X).

Вся память адресуется независимо двумя основными способами:

  • Для команд работы с числами с плавающей запятой память представляет из себя набор последовательно расположенных 16-байтовых чисел (12 байт — десятичная мантисса, 2 бита — знак числа и знак порядка, три тетрады — три десятичных цифры степени). Адресом ячейки служит условный номер такого числа от 0 до (размер памяти / 16).
  • Плавающие числа хранятся в двух разных форматах. В одном, когда адресом был номер ячейки, число занимает или старшие, или младшие полубайты в 16 байтах, расположенных подряд и выровненных на адрес, кратный 16. В другом число занимает целиком 8 байтов в памяти подряд. При этом разрядность и прочие характеристики чисел совпадают. Первая форма была унаследована от калькулятора и допускала только команды с прямой адресацией (0-255, поскольку адрес был байтовый), вторая — только команды с косвенной адресацией, зато адресуется вся память.
  • Для команд целочисленной арифметики и логики с байтами, 16-ти и 32-битными словами адресом служит физический адрес первого, самого старшего байта слова.
  • Порядок следования байтов в словах — от старшего к младшему.
  • Архитектура - эклектичная[прояснить]. Для безусловного перехода или перехода к подпрограмме используется не менее 4 способов: по поиску «метки» в теле программы (последовательности байт 04 08 <метка>), последовательным просмотром (явное наследие калькулятора), с относительной адресацией - в пределах 256 байт от команды ветвления, по адресу в регистре, по таблице переходов.

В 128-килобайтной версии применяется страничная организация памяти с мгновенно переключаемыми (по изменению состояния соответствующих ячеек) страницами по 16 килобайт размером. Адресное пространство без переключений составляет 32 килобайта.

Регистры и индикаторы

Регистры адресовались как ячейки памяти по некоторым фиксированным адресам. При этом регистры X и Y арифметики плавающей запятой отображаются на индикаторах.

В режиме останова большинство клавиш на панели совершало арифметические и функциональные действия с числами в регистрах X и Y.

При работе программы на индикаторах отображались состояния регистров X и Y, однако существовало несколько команд, позволявших изменить способ отображения соответствующей им области памяти на один из нескольких служебных.

При отладке и запуске пошагового исполнения на индикаторах отображались адрес исполняемой команды, код и три последующих в памяти байта команд.

Регистров работы с байтами, 16-разрядными словами было по 16, при этом 16 байтовых регистров физически совпадали с первыми восемью 16-битовыми регистрами.

Порты ввода-вывода

Машина стандартно имела устройство чтения/записи на магнитной ленте. Интерфейс ввода-вывода позволял подключать перфоратор и считыватель с перфоленты, а также привод гибких восьмидюймовых дисков

Сообщения об ошибках ЭВМ Д3-28

0 — переполнение памяти, отведённой пользователю 1 — недопустимый оператор 2 — переполнение строки ввода 3 — недопустимый ограничитель в строке 4 — недопустимый номер строки 5 — несоответствие кавычек в предложении 6 — отсутствие открывающей скобки перед аргументом функции 7 — недопустимый оператор LET 10 — неправильная запись индексов 11 — неправильная размерность индекса 12 — несоответствие скобок в выражении 13 — недопустимый элемент выражения 14 — функция пользователя не определена 15 — неправильное имя переменной 20 — неправильная операция отношения 21 — недопустимый оператор IF 22 — недопустимый оператор COM или DIM 23 — недостаточно места для массива DIM 24 — неправильный оператор DEF 25 — нет данных для оператора READ 26 — недопустимый оператор DATA 27 — неправильный формат команд CMD 30 — неправильный формат в операторе FOR-NEXT 31 — отсутствие NEXT 32 — не было FOR 33 — переполнение стека FOR-NEXT 34 — нулевой шаг FOR 35 — неверный формат оператора PRINT 36 — неверно задан формат печати 37 — недопустимое выражение в операторе TAB 38 — отсутствие открывающей записи в МЛ 43 — нет строки для перехода по операторам GOSUB или GOTO 44 — нет внешней подпрограммы с указанным именем 50 — неправильное предложение с оператором обслуживания МЛ 52 — сбой структуры файла 53 — отсутствие в запоминающем устройстве массива при приёме с МЛ 54 — не считан очередной блок данных с МЛ в ОЗУ 55 — считанный блок не помещается в ОЗУ 123 — несуществующая переменная 128 — некорректная операция в процессе вычисления

Сетевая структура

Была разработана и реализована спецификация локальной сети размером до 255 устройств (машин или внешних устройств, например — принтеров) построенная на параллельном интерфейсе ИРПР. Топология — общая шина. Число соединительных проводников — 34. В компьютерном зале МФТИ было соединено от 5 до 18 машин.

Программное обеспечение

Бейсик

На ЭВМ Электроника Д3-28 реализован БЭЙСИК (вариант 3А). Интересен тем, что позволял, сразу после загрузки интерпретатора, загрузить расширения в машинном коде с НМЛ. Расширения вызывались через оператор CALL по номеру пакета расширений. Данные расширения позволяли компенсировать ограниченность языка, существовали расширения для работы со строками, для плотной упаковки целочисленных данных, многочисленные расширения для работы с периферийным оборудованием. Исходно, бейсик 3А поддерживал только вещественные числа.

«Тужилкинский Бейсик»

Назван по фамилии автора — Владимира Алексеевича Тужилкина, распространён был, главным образом, в МФТИ, где и был написан. Достоинства — большая функциональность и меньший объём занимаемой памяти, чем у «официальной» версии (8 кбайт против 10,5 кбайт). Недостаток — был рассчитан на нестандартное подключение дисплея 15ИЭ-00-013, что ограничивало его распространение. Использовал формат хранения программ и данных, также несовместимый с исходной версией, однако, благодаря доступу большого количества студентов МФТИ к этим машинам, объём «софта», написанного под этот диалект, далеко превышает объём других программ для Д3-28.

FORTRAN-5M

Самоназвание, выводилось после успешного запуска комплекса. Работал только на системах с 128к памяти. Происхождение неизвестно. Диалект фортрана, компилятор, что для данной машины было редкостью, давал произодительность сопоставимую с программой изначально написаной в кодах. Скопмпилированную двоичную программу можно было записать на кассету и использовать независимо. Во время компиляции иногда уничтожал исходный код программы (вероятно, в случае большого объема), но позволял корректно сохранить исполняемый модуль. Позволял внедрять фрагменты в машинных кодах. Возможно, был основой или ранней версией ОС ВТ-МХТИ.

ОС ВТ-МХТИ

В Московском химико-технологическом институте им. Д.И. Менделеева была создана операционная система, называвшаяся по названию института — ОС ВТ-МХТИ. Разработчиком этой системы был Владимир Калинкин. В систему входил интерпретатор-компилятор собственного языка программирования ВТ-МХТИ, работавший на порядок быстрее штатного "Бейсика" и ряд системных утилит. Генерация системы производилась с кассеты-генератора (по аналогии с ЕС-1022), сгенерированная система записывалась на вторую кассету. Особенностью языка программирования ВТ-МХТИ являлось использование как англоязычного, так и русскоязычного набора операторов и наличие интерактивного ввода (что-то типа Т9 на современных смартфонах). В сети сложно найти описание ОС ВТ-МХТИ, но существует масса пользователей, вспоминающих про эту систему.

http://www.phantom.sannata.ru/forum/index.php?t=&p=153740#pp153740#pp153740

http://www.chemport.ru/forum/viewtopic.php?f=1&t=5597&start=60#p596777

http://forum.vingrad.ru/topic-57314/view-all.html#

См. также

  • Электроника 15ВСМ-5 — устройство, внешне и по основным органам управления, устройствам и логической организации памяти очень похожее на Д3-28, однако имевшее 1 килобайт ОЗУ на ферритовых колечках, 256 слов ПЗУ микропрограмм, исполненном в виде ферритовых колечек с пропущенными через них проводниками.

Примечания

  1. Rick Bensene. Wang 720C Advanced Programming Calculator (англ.). The Old Calculator Web Museum (3 September 2008). Проверено 12 сентября 2010. Архивировано 7 июня 2012 года.

Ссылки

  • Фотогалерея: Сергей Фролов. Электроника Д3-28 15ВМ128-019. Коллекция советской цифровой электроники Сергея Фролова (28 августа 2010). Проверено 12 сентября 2010. Архивировано 19 мая 2012 года.

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии