ProMiNick wrote:
По моим куцым данным на перфоленте не было ASCII символов.
На перфоленте были вертикальные и горизонтальные прорези и отсутствие оных.
Гл. V "Ввод и вывод данных"
[1]
Бумажная лента: Пятипозиционная.
Можно кодировать:
- Команды
- Числа
- Символы
Имеются специальные комбинации:
- "Цировой регистр",
- "Буквенный регистр",
- "Подчёркивание",
- "Стоп",
- "Возврат каретки",
- "Перевод строки".
При выводе в виде символов управление всеми действиями пишущей машинки ( или телетайпа) осуществляются в формате 27-ричных комбинаций данными.
Остальные 22 комбинации позволяют на машинке с двумя регистрами печатать 44 различными знака.
ProMiNick wrote:
реализовывать я буду в своем формате BCTD (а пользователю отображать в виде 27-ричных чисел), но поскольку я сторонник опенсорца приделать этому костыли девятиричности сможете сами.
Где подробно посмотреть о таком представлении троичных чисел?
ProMiNick wrote:
по операциям: загрузка с магнитного барабана происходит в одну из третей доступного адресного пространства.
Обмен зонами. Да, так.
ProMiNick wrote:
Начинается все с загрузки серединного адресного пространства и выполнения инструкции по адресу 1.
Но то начинается...
Специальная кнопка на пульте "Начальный пуск", когда с перфоленты считываются данные в зону ферритовой памяти Z=0, регистр счетчика команд устанавливается С=00001 и далее передаётся управление на выполнение команд.
ProMiNick wrote:
А какое поведение у инструкции после?
Допустим в коде встретилась инструкция загрузки вновь серединного адресного пространства все "...0" и "...+" трайты переписываются и управление переходит куда? на инструкцию с адресом 1? на инструкцию следующую за инструкцией в которой была команда на запись с барабана?
После выполнения кода операции машины определяется адрес следующего кода операции.
Новый адрес 9-разрядного кода K1...K9 ячейки в ферритовой памяти находится в регистре С.
В твоём примере, после чтения зоны с магнитного барабана, прочитается новый 9-разрядный короткий код по адресу регистра С.
ProMiNick wrote:
А если загрузка не в серединное адресное пространство, а в отрицательное (там где старший трит "-") то куда переходит управление в этом случае? опять на инструкцию с адресом 1? или на 81 трайт меньше адреса 1?
на инструкцию следующую за инструкцией в которой была команда на запись с барабана?
При кодах операций безусловного перехода или условных переходов в регистре С младший трит может быть отрицательным.
Описание в
[1]:
5-разрядный регистр управления С, в котором содержится адрес
выполняемой команды, после выполнения каждой команды в регистре С
формируется адрес следующей команды причём за командой являющейся первой коротким кодом какой-либо ячейки, следует команда, являющаяся вторым коротким кодом этой ячейки, а вслед за ней — команда, являющаяся первым коротким кодом следующей ячейки, и т. д.;
этот порядок может быть нарушен при выполнении команд
перехода.
В случае, когда в качестве адреса команды указан адрес 18-разрядной ячейки, т.е. адрес с цифрой !1 в пятом разряде, машина выполняет два раза выполняет команды, в старшей половине.
Адресный счётчик троичного "Сетунь" - самая запутанная часть документации.
Почему именно так, не очевидно, работает счётчик команд - не могу объяснить.
В эмуляторе многократно переписывал модель ферритовой памяти и функцию определения следующего адреса команды и выполнение кода при с адресом в последней цифре !1.
В поздней работе Брусенцов Н.П. [2] описал модель ферритовой памяти и памяти магнитного барабана:
Адресное пространство главной памяти простирается от -(35-1)/2 до (35-
1)/2, т. е. от -121 до +121, но так как каждый третий адрес использован для указания пары ячеек, обладающих каждая отдельным адресом, то адресовать можно только 162 девятитритных ячейки и 81 пару ячеек.
Последовательная выборка команд производится с пропуском адресов, соответствующих парам ячеек, т. е. программный счетчик принимает следующие значения: -120, -119, -117, -116, ..., -3, -2, 0, 1, 3, 4, ..., 117, 118, 120, 121.
При обменах с внешней памятью, которая реализована на магнитном
барабане и является основной памятью машины, а также при вводе и выводе главная память представляется разделенной на страницы, содержащие по 54 ячейки. Номером страницы служит значение старшего трита принадлежащих этой странице адресов.
Другими словами, память структурирована как массив
m(-1:1, -80:81, 1:9)
1. Брусенцов Н.П., Маслов С.П., Розин В.П., Тишулина A.M. Малая цифровая вычислительная машина "Сетунь". // [Текст] .- Москва.- Изд-во МГУ.- 1965. - 136 стр. - с прил. - чертеж. - тираж 5000 экз. - цена 50 коп.
2. Н. П. Брусенцов, ЗАМЕТКИ О ТРОИЧНОЙ ЦИФРОВОЙ ТЕХНИКЕ - ЧАСТЬ 2.
You do not have the required permissions to view the files attached to this post.
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)