Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ для ЛПЗ, Архитектура ЭВМ методичка лаборатор...doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
9.7 Mб
Скачать

Выполнение простых вычислений микропроцессором

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

Нажатие клавиши с цифрой «2» приводит микропроцессор в состояние готовности и подает блоку предварительной выборки сигнал на запрос в системной памяти компьютера инструкции в отношении вновь поступивших данных, поскольку командная кэш-память такой инструкции не содержит.

.Новая инструкция по работе с данными поступает из системной памяти компьютера через блок шины в микропроцессор и записывается в командную кэш-память, где ей присваивается код «2=X».

Вслед за этим блок предварительной выборки запрашивает из кэш-памяти копию кода «2=X», которую направляет для дальнейшей обработки в блок декодировки.

Блок декодировки раскодирует инструкцию «2=X», преобразуя ее в цепочку двоичных символов, которая пересылается в управляющий блок и в кэш данных, давая им указание о том, как с полученной инструкцией поступать дальше.

Поскольку блоком декодировки принято решение о сохранении цифры 2 в кэш данных, управляющий блок выполняет соответствующую инструкцию для кода «2=X»: цифре 2 в кэш-памяти данных присваивается адрес «Х», здесь она и будет находиться в ожидании дальнейших указаний.

Нажав клавишу с цифрой «3», Вы дадите блоку предварительной выборки команду на запрос в системной памяти компьютера и в командной кэш-памяти инструкций о действиях в отношении вновь поступивших данных. Поскольку командная кэш-память таких инструкций не содержит, они поступят из системной памяти.

Аналогично команде «2=X», новые инструкции по данным поступают из системной памяти компьютера в микропроцессор и записываются в командную кэш-память, где получают код адресации «3=Y».

После этого копия кода «3=Y» поступает из командной кэш-памяти в блок предварительной выборки, откуда переправляется в декодирующий блок для дальнейшей обработки.

Декодирующий блок раскодирует инструкцию «3=Y», преобразуя ее в цепочку двоичных символов, которую направляет в управляющий блок и в кэш-память данных, давая им указание о том, как с данной инструкцией поступать дальше.

Поскольку декодирующий блок принимает решение о сохранении цифры 3 в кэш-памяти данных, то он выполняет соответствующую инструкцию для кода «3=Y»: цифре 3 присваивается в кэш-памяти данных адрес «Y», где она, аналогично цифре 2, и будет находиться в ожидании дальнейших указаний.

Нажатие клавиши со знаком «+» заставляет блок предварительной выборки запросить из главной памяти компьютера и командной кэш-памяти инструкции в отношении вновь поступивших данных. Как и в предыдущих случаях, эти инструкции должны быть получены из системной памяти.

Поскольку речь идет о не использовавшейся ранее инструкции, «плюс» поступает в микропроцессор из системной памяти компьютера и записывается в командную кэш-память с присвоением адресного кода «X+Y=Z», обозначающего операцию сложения.

Вслед за этим блок предварительной выборки запрашивает из командной кэш-памяти копию кода «X+Y=Z» и пересылает ее блоку декодировки для дальнейшей обработки.

Блок декодировки раскодирует инструкцию «X+Y=Z», преобразуя ее в цепочку двоичных символов, которую направляет в управляющий блок и в кэш-память данных, давая им указание о том, как с данной инструкцией поступать дальше. Одновременно арифметическое логическое устройство (АЛУ) получает указание на выполнение операции сложения.

Управляющий блок расчленяет код, а арифметическое логическое устройство (АЛУ) выполняет по команде операцию сложения чисел, закодированных как «X» и «Y» и извлеченных из кэш-памяти данных. После этого АЛУ, «посовещавшись» со своими «партнерами» – регистрами, пересылает им полученное число 5 для записи по одному из адресов.

После нажатия клавиши со значком «=» блок предварительной выборки в очередной раз проверяет командную кэш-память на предмет наличия инструкций, относящихся к вновь поступившим данным. Как и прежде, такие инструкции там отсутствуют.

Инструкция для знака «=» поступает в микропроцессор из системной памяти компьютера через блок шины и записывается в командную кэш-память, получив код адресации «Print Z» («отобразить на экране символ Z»).

Вслед за этим блок предварительной выборки запрашивает из командной кэш-памяти копию кода «Print Z», которую пересылает декодирующему блоку для дальнейшей обработки.

Декодирующий блок раскодирует инструкцию «Print Z», преобразуя ее в цепочку двоичных символов, которая затем пересылается управляющему блоку с указанием на то, как с полученной инструкцией поступать дальше.

Теперь, когда значение величины, представленной кодом Z, уже вычислено и записано в позиции № 5 блока регистров, для завершения операции сложения 2+3 остается выполнить команду вывода содержания регистра 5 на экран дисплея. На этом работа микропроцессора заканчивается.