|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Лабораторная работа №1. Тема: «Изучение принципов работы компьютера»Тема: «Изучение принципов работы компьютера». Цель занятия: Ознакомление с моделью функционирования компьютера на примере выполнения команд ввода-вывода. Отрабатываемые вопросы: 1. Ознакомление с моделью функционирования компьютера. 2. Выполнение команд ввода-вывода.
Организационно – методические указания Задание 1. Ознакомление с моделью функционирования компьютера. Для запуска модели нужно в директории Computer запустить файл Computer.exe. Откроется окно «Система моделирования простейшей ЭВМ» (рис. 1.).
Рис. 1. Система моделирования простейшей ЭВМ
Данная модель включает: 1. Арифметическое устройство, предназначенное для выполнения арифметических операций и содержащее: 1.1.Аккумулятор (АК) для временного хранения операндов (данных) и промежуточных результатов. 1.2. Регистр операндов (РО)для временного хранения операндов. 1.3. Флаги (признаки) для организации операций условного перехода (переход по нулю , переход по знаку ) и фиксации преполнения . Разрядность АКиРО пять десятичных знаков, следовательно максимальное положительное число равно 99999. 2. Регистр команд, предназначенный для хранения выполняемой команды, она начнет выполняться после записи ее в регистр. Регистр команд имеет три поля: 2.1.Поле код операции (КОП) для указания операции, подлежащей выполнению. Это поле имеет разрядность два десятичных знака. В зависимости от того какие значение принимает поле, могут выполняться следующие команды: · Поле КОП=01 – команда ввод. Ввод данных с Устройства ввода в Аккумулятор; · Поле КОП=02 – команда вывода. Вывод данных из Аккумулятора на Устройство вывода; · Поле КОП=03 – команда сложения; · Поле КОП=04 – команда вычитания; · Поле КОП=05 – команда умножения; · Поле КОП=06 – команда деления; · Поле КОП=07 – команда загрузить. Служит для загрузки в АК одного из операндов из Оперативной памяти (ОП). Изначально оба операнда хранятся в основной памяти и до выполнения операции один из них нужно загрузить в Аккумулятор. Поскольку адрес одного из операндов предопределен, в командах обработки достаточно явно указать местоположение только второго операнда; · Поле КОП = 08 – команда записать. Служит для загрузки операнда или результата операции в ячейку памяти (из АК в ОП); · Поле КОП=09 – установить переход по нулю. Служит для организации условного перехода по адресу, указанному в поле адреса команды, если результат выполнения предыдущей команды равен нулю (флаг Ноль устанавливается в единицу). Если результат выполнения предыдущей команды не равен нулю, то переход не происходит и начинает выполняться следующая команда программы; · Поле КОП=10 – установить переход по знаку. Служит для организации условного перехода по адресу, указанному в поле адреса команды, если результат выполнения предыдущей команды отрицательный (флаг Знак устанавливается в единицу). Если результат выполнения предыдущей команды не отрицательный, то переход не происходит и начинает выполняться следующая команда программы; · Поле КОП=11 – безусловный переход. Служит для организации перехода по адресу указанному в команде. Переход осуществляется всегда в не зависимости от результата выполнения предыдущей команды; · Поле КОП=12– останов. Этой командой должна заканчиваться любая программа. Примечание. Команды Ввод и Вывод относятся к командам обмена данными с периферийными устройствами; команды Сложения, Вычитания, Умножения, Деления - к командам арифметической обработки; команды Переход по нулю, Переход по знаку и Безусловный переход к командам управления. 2.2. Поле тип адресации (ТА). Для указания способа формирования исполнительного адреса (адрес ОП по которому находится операнд). В зависимости от того какое значение принимает поле могут использоваться следующие способы адресации: · Поле ТА=0 – прямая адресация. В поле Адреса (А) указан исполнительный адрес операнда (Рис. 2);
Рис. 2. Прямая адресация
· Поле ТА=1 – непосредственная адресация. В поле Адреса (А) находится не адрес, а операнд, т.е. обращение к ОП не происходит (Рис. 3);
Рис. 3. Непосредственная адресация
· Поле ТА=2 – косвенная адресация. В поле адреса команд находится адрес ячейки ОП, в которой расположен адрес операнда (Рис. 4).
Рис. 4. Косвенная адресация
2.3.Поле адреса (А), в котором находится: · исполнительный адрес операнда при прямой адресации; · сам операнд при непосредственной адресации; · адрес ячейки ОП при косвенной адресации; · адрес следующей команды при выполнении команд перехода. 3. Оперативная память, предназначенная для записи, хранения и выдачи команд и операндов. В память входят: Регистр слова (РС), Регистр адреса (РА), кнопки Запись и Чтение. Для того чтобы занести в ячейку ОП какое – либо значение необходимо на РА набрать адрес ячейки, а на РС операнд или команду и нажать кнопку Запись ( Рис. 5). Для того чтобы прочитать данные из ОП необходимо задать адрес ячейки и нажать кнопку Чтение.
Рис. 5. Оперативная память
4. Блок управляющих сигналов (БУС), предназначенный для имитации работы устройства управления (Рис. 6). С его помощью можно задавать режимы работы (Автомат, по цикл, по такт), запускать программы в выбранном режиме (кнопка Старт), останавливать выполнение программы ( кнопка Стоп), осуществлять сброс регистров (кнопка Сброс). Кроме того, можно выбирать регистры для записи информации с помощью меню Выбор регистров, а также прослеживать выполнение команды по микрокомандам (окно МК). Примечание. При выполнении все команды разбиваются на подкоманды. Подкоманда, которая выполняется за один такт (режим Такт при однократном нажатии кнопки Старт) называется микрокомандой.
Рис. 6. Блок управляющих сигналов 5. Счетчик адреса команды (СЧАК). В рассматриваемой модели любая команда занимает одну ячейку, поэтому содержимое СЧАК увеличивается на единицу, что обеспечивается подачей сигнала управления +1 ( рис.1). По завершении текущей команды адрес следующей команды программы всегда берется из счетчика команд. Для изменения естественного порядка вычислений (перехода в иную точку программы) достаточно занести в СЧАК адрес точки перехода. 6. Устройство ввода, в состав которого входит Регистр ввода (РВВ), предназначенный для ввода данных. 7. Устройство вывода, в состав которого входит Регистр вывода (РВЫВ), предназначенный для вывода данных. Задание 2. Выполнение команд ввода-вывода. Рассмотрим работу компьютера на примере выполнения команд ввода – вывода. Постановка задачи: составить программу, передающую операнд с Устройства ввода на Устройство вывода, операнд сохранить в ячейке ОП. Исходные данные: с Устройства ввода считать операнд, равный « 555 », сохранить его в ячейке ОП по адресу «80» и вывести на Устройство вывода. 1. Введем заданный операнд в Регистр ввода. Для этого в Блоке управляющих сигналов в окне Выбор регистров выберем Регистр ввода (Рис. 7), соответствующее окно регистра окрасится в синий цвет. Введем заданный операнд с клавиатуры в РВВ.
Рис. 7. Ввод данных в РВВ
2. Составим программу согласно заданию, она приведена на рис.8.
Рис. 8. Программа выполнения ввода-вывода данных
3. Введем составленную программу в модель. Для этогов Блоке управляющих сигналов в окне Выбор регистров выберем Регистр адреса, соответствующее окно регистра окрасится в синий цвет.Наберем адрес первой команды « 00 ». Затем выберем Регистр слова, соответствующее окно регистра окрасится в синий цвет. Введем с клавиатуры первую команду « 01 0 00 » (Рис. 9). Нажмем кнопку Запись.
Рис. 9. Занесение команд программы в ОП
4. Аналогично введем другие команды. Обратите внимание, что после нажатия кнопки Запись значение РА увеличивается на единицу, следовательно, нужно задать лишь адрес первой команды, адреса остальных формируются автоматически. 5. Введем в СЧАК адрес первой команды программы «00 » аналогично пункту 3 и рис.6. 6. Для более полного представления принципов работы компьютера рассмотрим процесс выполнения команды Ввод по микрокомандам: 6.1. Выберем в Блоке управляющих сигналов режим работы - Такт и нажмем кнопку Старт, т.е. начнем выполнение команды Ввод по микрокомандам. 6.2. В окне МК БУС появится первая микрокоманда: РА:=СЧАК (Регистру адреса присвоить значение Счетчика адреса команды), по которой информация из СЧАК ( т.е. адрес первой команды программы) будет передана в ОП на РА. На модели направление передачи показано красной стрелкой (рис. 10). 6.3.При следующем нажатии кнопки Старт в БУС появиться микрокоманда: Чтение (РС:=ОП(РА)) (присвоить Регистру слова содержимое Регистра адреса оперативной памяти),т.е. в РС будет считана команда «01 0 00». А в результате выполнения предыдущей МК на РА Оперативной памяти появится значение СЧАК.
Рис. 10. Выполнение микрокоманды РА:=СЧАК 6.4. Нажмем кнопку Старт, в РС появится команда, а в БУС микрокоманда: РК:=РС (Регистру команд присвоить значение Регистра слова), которая будет выполняться в следующем такте (рис. 11).
Рис. 11. Выполнение микрокоманды Чтение РС:=ОП(РА)
6.5.Последовательно нажимая кнопку Старт, получим последовательность выполнения микрокоманд (микропрограмму), реализующий команду Ввод (рис 12). Внимание! Микрокоманда, появляющаяся в окне МК БУС в текущем такте, будет выполнена в следующем.
Рис. 12. Микропрограмма выполнения команды «Ввод»
7. После окончания выполнения команды Ввод переведите режим работы в Автомат,нажмите кнопку Старт, т.е. выполните остальные команды программы (рис 8). 8. Проверьте правильность выполнения программы, используя кнопку Чтение в блоке ОП. В Блоке управляющих сигналов выберете Регистр адреса ( окно Выбор регистров). Наберете адрес « 80 ». Нажмите кнопку Чтение. В ячейке по адресу «80» и в РВЫВ должен быть занесен операнд «555».
Задание для самостоятельной работы. Составить и выполнить программу считывающую операнд с Устройства ввода на Устройство вывода. Операнд сохранить в ячейке ОП. Исходные данные: · Операнд - 9091; · Адрес ячейки ОП - 90 (в ней будет сохранен операнд); · Выполнить по тактам команду Вывод и объяснить назначение микрокоманд. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.019 сек.) |