мета-данные страницы
  •  

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
glossary:prog:bevm [2025/07/13 12:20] – удалено - внешнее изменение (Дата неизвестна) A User Not Logged inglossary:prog:bevm [2025/11/09 12:07] (текущий) – внешнее изменение A User Not Logged in
Строка 1: Строка 1:
 +====== БЭВМ ======
  
 +<del>Материалы добросовестно спизжены из ИТМО, у С.В.Клименкова (препода по ОПД).</del>
 +
 +БЭВМ (Базовая Электронно-Вычислительная Машина) - простая модель, демонстрирующая принципы работы компьютера (с фон-Нецмоновской архитектурой)
 +
 +ISA (instruction set architecture) - набор инструкций конкретного компьютера, их семантика и способ кодирования в памяти. Примеры ISA: x86, ARM, MIPS, RISC-V. Компьютеры с одинаковой ISA могут быть по-разному устроены на уровне микроархитектуры - от этого может зависеть скорость или эффективность исполнения программ.
 +
 +++++материалы|
 +  * [[https://se.ifmo.ru/courses/csbasics|ссылочная]]
 +  * {{:glossary:computer:bcomp-ng.jar|эмулятор БЭВМ (jar)}}
 +  * [[https://gitea.kliksa.click:3000/radi0dev/bcomp_ng_guide|гайд по эмулятору БЭВМ]]
 +  * Материалы Клименкова
 +    * {{:glossary:computer:metoda_bcmp_2019_bcomp-ng_v.1.45.pdf|методичка}}
 +    * {{:glossary:computer:prez20019_vol1.pdf}}
 +    * {{:glossary:computer:prez20019_vol2.pdf}}
 +    * {{:glossary:computer:prez20019_vol3.pdf}}
 +    * {{:glossary:computer:prez20019_vol4.pdf}}
 +    * {{:glossary:computer:consp2019_vol1.pdf|конспект лекций}}
 +++++
 +
 +===== Структура БЭВМ =====
 +
 +Ниже приведена упрощенная структура базовой эвм. Это одноадресная эвм аккумуляторного типа, выполняющая простейшие операции с 16-разрядными машинными словами.
 +
 +{{:glossary:computer:bevm_struct.png}}
 +
 +==== Области ====
 +
 +  * Память - 2048 16и битовых ячеек с адресами [0, 2047].
 +  * Процессор:
 +    * регистры - хэш первых уровней, самые быстро доступные ячейки памяти. "Рабочий стол" процессора.
 +    * АЛУ - арифметико-логическое устройство. способно выполнять арифметические и логические операции, такие как сложение, сложение с учтём переноса, полученного в результате выполнения предыдущей операции, операции логического умножения и инвертирования. Имеет два входа (правый и левый).
 +      * коммутатор - устройство адресации.
 +      * устройство управления - оно же МПУ (микропрограммное устройство), выполняет машинные команды процессора при помощи элементарных микроопераций((открытие вентилей и проверка состояния бита заданного регистра)).
 +  * Пульт оператора - Позволяет выполнять пультовые операции.
 +
 +==== Регистры ====
 +
 +  * AC - (accumulator) "аккумулятор", используется((в современных процессорах вместо одного AC используется целый ряд регистров, так называемые "регистры общего назначения")) для хранения операнда для команд, хранит результат выполнения команд и тп.
 +  * BR - (buffer register) "буферный регистр", буфер для промежуточного хранения данных.
 +  * PS - (program state) "регистр состояния", хранит биты, управляющие работой бэвм (настройки), и признаки результата.
 +  * IR - (input register) "клавишный регистр",  находится в составе пульта оператора и нужен для ввода адреса программы, кодов программы и данных. Те взаимодействия оператора и бэвм.
 +  * DR -(data register) "регистр данных", буфер для обмена информацией между памятью и процессором.
 +  * AR - (address register) "регистра адреса", служит для обращения к ячейкам памяти и содержит адрес.
 +  * CR - (command register) "регистр команд",  содержит код выполняемой команды для её поэтапного декодирования.
 +  * IP - (instruction pointer) "счетчик команд", хранит адрес ячейки, содержащей следующую команду.
 +  * SP -(stack pointer) "указатель стека", используется для вызова подпрограмм и передачи аргументов подпрограммам.
 +
 +Регистры хранящие данные имеют 16 разрядов, а хранящие адреса - 11 разрядов. IP, SP, AR - 11иразрядные тк хранят адреса.
 +
 +==== Память ====
 +
 +Как и вся БЭВМ, память 16иразрядная, тоесть одна ячейка памяти может хранить 16иразрядное двоичное число. Адреса 11иразрядные, тоесть всего адресов 2048 (0-2047).
 +
 +{{:glossary:computer:mem.png}}
 +
 +/*
 +чтение и запись - триггеры (как устроены - не знаю)
 +{{fixme}}
 +*/
 +
 +Дешифратор, он же DC (decoder):
 +
 +{{:glossary:computer:decoder.png}}
 +
 +имеет 3 входа и 8 выходов.
 +
 +==== АЛУ ====
 +
 +{{:glossary:computer:alu.png}}
 +
 +Входы АЛУ:
 +  * COM(L/R) - compliment left/fight (инверсия правого/левого входа). Инверсия - 0=1, а 1=0, тоесть 10010 -> 01101
 +  * PLS1 - +1 к сумме
 +  * SORA - логическое умножение ("и")
 +
 +Коммутатор:
 +
 +Условно разделен "пополам" на стершие и младшие разряды.
 +
 +Может сдвигать (осуществлять перенос).
 +
 +Блок проверки и установки признаков результатов:
 +
 +устанавливает признаки результатов, нужные для вычислений.
 +
 +==== Пульт оператора ====
 +
 +Помимо всего прочего, позволяет как запустить, так и останавливать программу. В реальных ЭВМ остановка тактового генератора невозможна (потом его не получится запустить), поэтому используется прерывание. В БЭВМ же прерывание практически равно остановке тактового генератора.