Автокод БЭСМ-6
Перейти к навигации
Перейти к поиску
Автокод БЭСМ-6 — мнемоническое представление низкоуровневого кода машины БЭСМ-6, одной из наиболее известных и удачных массовых отечественных сверхЭВМ.
Описание[править | править код]
Ресурсы центрального процессора, доступные пользователю:
- 15 15-разрядных индекс-регистров (от М1 до М17)
- 48-разрядный сумматор (СМ)
- 48-разрядный регистр младших разрядов (РМР)
- 6-разрядный регистр режимов АУ (РЖ)
- 15-разрядный регистр модификации адреса (МОД)
Строение команд:
Все команды были 24-разрядными и располагались в словах попарно. Переходы допускались только на границы слов.
Всего было два строения:
- 1-е строение (короткоадресная команда): исполнительный адрес (Аисп) = ([ИР] + адрес + S * 070000 + МОД) mod 0100000
- 2-е строение (длинноадресная команда): Аисп = ([ИР] + адрес + МОД) mod 0100000
Коды операций:
| Код | Обозначение | Описание |
|---|---|---|
| 000 | ЗП | Запись СМ по Аисп |
| 001 | ЗПМ | ЗП, затем магазинное считывание |
| 002 | РЕГ | Обращение к спец.регистрам (привилегированная команда) |
| 003 | СЧМ | Магазинная запись, затем СЧ |
| 004 | СЛ | Сложение СМ и слова по Аисп |
| 005 | ВЧ | Вычитание слова по Аисп из СМ |
| 006 | ВЧОБ | Вычитание обратное |
| 007 | ВЧАБ | Вычитание абсолютных величин |
| 010 | СЧ | Считывание слова по Аисп на СМ |
| 011 | И | Логическое И СМ и слова по Аисп |
| 012 | НТЖ | Исключающее ИЛИ (нетождественность) |
| 013 | СЛЦ | Циклическое сложение СМ и слова по Аисп как целых |
| 014 | ЗНАК | Изменение знака СМ если слово по Аисп < 0 |
| 015 | ИЛИ | Логическое ИЛИ |
| 016 | ДЕЛ | Деление |
| 017 | УМН | Умножение |
| 020 | СБР | Сборка |
| 021 | РЗБ | Разборка |
| 022 | ЧЕД | Число единиц в коде на СМ |
| 023 | НЕД | Номер старшей единицы в коде на СМ |
| 024 | СЛП | Сложение порядков чисел на СМ и по Аисп |
| 025 | ВЧП | Вычитание порядков |
| 026 | СД | Сдвиг |
| 027 | РЖ | Установка регистра режимов |
| 030 | СЧРЖ | Считывание регистра режимов на СМ |
| 031 | СЧМР | Передача РМР на СМ |
| 032 | УВВ | Управление вводом-выводом (привилегированная) |
| 033 | --- | |
| 034 | СЛПА | Сложение порядка числа на СМ с адресом |
| 035 | ВЧПА | Вычитание адреса из порядка числа на СМ |
| 036 | СДА | Сдвиг по адресу |
| 037 | РЖА | Установка регистра режимов по адресу |
| 040 | УИ | Установка индекс-регистра по СМ |
| 041 | УИМ | УИ, затем магазинное считывание |
| 042 | СЧИ | Считывание индекс-регистра на СМ |
| 043 | СЧИМ | Магазинная запись, затем СЧИ |
| 044 | УИИ | Установка индекс-регистра по индекс-регистру |
| 045 | СЛИ | Сложение индекс регистров |
| 046 | Не используется, но равнозначно 044 и 045 соответственно | |
| 047 | ||
| 050:077 | Эnn | Экстракоды, для обращений к операционной системе и вычисления математических функций |
| 20 | ||
| 21 | ||
| 22 | МОДА | Модификация адреса ("МОДА 0" == НОП) |
| 23 | МОД | Модификация адреса кодом по Аисп |
| 24 | УИА | Установка индекс-регистра по адресу |
| 25 | СЛИА | Сложение индекс-регистра с адресом |
| 26 | ПО | Переход по нулю |
| 27 | ПЕ | Переход по единице (не нулю) |
| 30 | ПБ | Переход безусловный |
| 31 | ПВ | Переход с возвратом |
| 32 | ВЫПР | Возврат из прерывания (привилегированная) |
| 33 | СТОП | Останов |
| 34 | ПИО | Переход по нулю индекс-регистра |
| 35 | ПИНО | Переход по ненулю индекс-регистра |
| 36 | Равнозначно 34 | |
| 37 | ЦИКЛ | Если индекс-регистр не ноль, увеличить на 1 и перейти |
Источники[править | править код]
- Система команд БЭСМ-6, подробное описание.