Модель учебной ЭВМ

Автор работы: Пользователь скрыл имя, 22 Декабря 2010 в 03:16, курсовая работа

Краткое описание

Все работы выполнены на программной модели учебной ЭВМ и взаимодействующих с ней программных моделях ВУ и кэш-памяти. Учебная ЭВМ является упрощенной программной моделью компьютера, позволяющей обучаемым освоить базовые понятия архитектуры: система команд, командный цикл, способы адресации, уровни памяти, способы взаимодействия процессора с внешними устройствами.

Содержание

Пояснительная записка 3
Введение 4
Задание №1 5
Задание №2 7
Задание №3 9
Задание №4 11
Задание №5 14
Задание №6 18
Задание №7 21
Задание №8 24
Заключение 26
Список литературы 27

Прикрепленные файлы: 1 файл

Модель учебной ЭВМ.docx

— 148.80 Кб (Скачать документ)

 
Государственное образовательное учреждение высшего  профессионального образования

Филиал  Санкт-Петербургского государственного морского технического университета в  городе Северодвинске – СЕВМАШВТУЗ

Факультет кораблестроения и океанотехники

Кафедра №11

Курсовая работа

по дисциплине “Архитектура ЭВМ

Модель  учебной ЭВМ

                  Студент  Соболев С.В.

                     Группа  4208

                     Преподаватель Чецкий В.И.

 

Содержание

Пояснительная записка 3

Введение 4

Задание №1 5

Задание №2 7

Задание №3 9

Задание №4 11

Задание №5 14

Задание №6 18

Задание №7 21

Задание №8 24

Заключение 26

Список  литературы 27

 

Пояснительная записка

  Цикл  работ выполнен в рамках курса  „Архитектура ЭВМ“.

  Все работы выполнены на программной  модели учебной ЭВМ и взаимодействующих  с ней программных моделях  ВУ и кэш-памяти. Учебная ЭВМ является упрощенной программной моделью компьютера, позволяющей обучаемым освоить базовые понятия архитектуры: система команд, командный цикл, способы адресации, уровни памяти, способы взаимодействия процессора с внешними устройствами.

  Цикл  включает работы различного уровня. Работы № 1-4 ориентированы на первичное знакомство с архитектурой процессора, системой команд, способами адресации и основными приемами программирования на машинно-ориентированном языке. Работа № 5 иллюстрирует реализацию командного цикла процессора на уровне микроопераций. Работа № 6 посвящена способам организации связи процессора с внешними устройствами, а в работах № 7 и 8 рассматривается организация кэш-памяти и эффективность различных алгоритмов замещения.

 

Введение

  Во  многих случаях знание операторов языка  высокого уровня, структуры данных и способов их обработки является достаточным для создания различных полезных приложений. Однако по-настоящему решать проблемы, связанные с управлением различной, особенно нестандартной, аппаратурой (программирование „по железу“) невозможно без знания ассемблера. Не случайно практически все компиляторы языков высокого уровня содержат средства связи своих модулей с модулями на ассемблере либо поддерживают выход на ассемблерный уровень программирования.

  Однако  проводить начальное обучение программированию на низком уровне с рассмотрением  механизмов взаимодействия устройств  на реальном языке, например x86 на персональной ЭВМ, не всегда удобно. В этом случае между пользователем и аппаратурой ЭВМ присутствует операционная система (ОС), которая существенно ограничивает желания пользователя экспериментировать с аппаратными средствами. Для преодоления этих ограничений необходимо обладать глубокими знаниями как ОС, так и аппаратных средств ЭВМ.

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

 

Задание №1

Архитектура ЭВМ и система  команд

  Цель работы – знакомство с интерфейсом модели ЭВМ, методами ввода и отладки программы, действиями основных классов команд и способов адресации.

Теоретические положения:

  Модель  содержит процессор, оперативную (ОЗУ) и сверхоперативную память, устройство ввода и устройство вывода.

  Процессор состоит из устройства управления, арифметико-логического устройства (АЛУ), десяти регистров общего назначения (РОН) и системных регистров (CR, PC, SP и др.). Доступ ко всем регистрам  и флагам процессора обеспечивается через окно Процессор.

  Регистры  Асс, DR, IR, OR, CR и все ячейки ОЗУ  и РОН имеют длину 6 десятичных разрядов, регистры PC, SP, RA и RB – 3 разряда. В окне Процессор отражаются текущие значения регистров и флагов, причем в состоянии Останов все регистры, включая регистры блока РОН, и флаги (кроме флага I) доступны для непосредственного редактирования.

  Сверхоперативная  память с прямой адресацией содержит десять регистров общего назначения R0-R9. Доступ к ним осуществляется через регистры RAR и RDR.

  АЛУ выполняет одну из арифметических операций, определяемую кодом операции (СОР), над содержимым аккумулятора (Асс) и  регистра операнда (DR). Результат операции всегда помещается в Асс. При завершении выполнения операции арифметическое устройство вырабатывает сигналы признаков  результата: Z = 1, если результат равен  нулю; S = 1, если результат отрицателен; OV = 1, если при выполнении операции произошло  переполнение разрядной сетки. В случаях, когда эти условия не выполняются, соответствующие сигналы имеют нулевое значение.

  В модели ЭВМ предусмотрены внешние устройства двух типов: первый – регистры IR и OR, которые могут обмениваться с  аккумулятором с помощью безадресных  команд IN (Асс := IR) и OUT (OR := Асс); второй –  набор моделей внешних устройств, которые могут подключаться к  системе и взаимодействовать  с ней в соответствии с заложенными в моделях алгоритмами.

  Устройство  управления осуществляет выборку команд из ОЗУ в последовательности, определяемой естественным порядком выполнения команд (т. е. в порядке возрастания адресов  команд в ОЗУ) или командами передачи управления; выборку из ОЗУ операндов, задаваемых адресами команды; инициирование  выполнения операции, предписанной командой; останов или переход к выполнению следующей команды.

Вариант задания:

IR Команда 1 Команда 2 Команда 3 Команда 4 Команда 5
17 000381 01 0 000 25 1 006 22 0 003 22 3 003 14 0 001

 

Команды и коды:

Последовательность Значения
Адреса 000 001 002 003 004
Коды 01 0 000 25 1 006 22 0 003 22 3 003 14 0 001
Команды IN MUL #006 WR 003 WR [003] JNS 1

Результаты  выполнения:

PC Асс М(3) PC Асc М(3)
001 000381   001    
002 002286   002 002286  
003   002286 003   002286
004     004    
001     001    
002 013716   002 013716  
003   013716 003   013716
004 000381   004 00381  

 

Задание №2

Программирование  разветвляющегося процесса

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

Теоретические положения:

  Для нарушения естественной последовательности выполнения команд используются команды  передачи управления, изменяющие содержимое счетчика команд (регистра PC). Учебная ЭВМ располагает следующими командами передачи управления: безусловный и шесть условных переходов, вызов подпрограммы, возврат из подпрограммы, цикл, программное прерывание, возврат из прерывания. Команды условной передачи управления используются для реализации алгоритмов, пути в которых зависят от исходных данных.

Исходные  данные варианта задания: 

Граф-схема  алгоритма решения  задачи:

  

  Оценив  размер программы примерно в 20-25 команд, отведем для области данных ячейки ОЗУ, начиная с адреса 030. Составленная программа с комментариями представлена в виде таблицы.

Текст программы:

Адрес Команда Примечание
Мнемокод Код
 000  IN  010000  Считываем х
 001  WR 30  220030  Размещение х в ОЗУ M(030)
 002  SUB #8  241008  Acc = Acc - 8
 003  JS FUN2  130013  if (Acc - 8 < 0) then goto FUN2
 004  FUN1:RDI 000001  410000 000001  Acc = 1
 005  SUB 30  240030  Acc = 1 - x
 006  WR 31  220031  Сохраним в  ОЗУ М(031)
 007  RD 30  210030  Acc = 30 = x
 008  ADI #17  431000 000017  Acc = Acc + 17 = x + 17
 009  DIV 31  260031  Acc = (x + 17) / (1 - x)
 010  JMP FIN  100020  На выход
 011  FUN2:RD 30  210030  Acc = 30 = x
 012  ADI #10  431000 000010  Acc = Acc + 10 = x + 10
 013  WR 31  220031  Сохраним 31 = Acc = x + 10
 014  RDI 001000  410000 001000  Acc = 1000
 015  DIV 31  260031  Acc = 1000 / (x +10)
 016  FIN:OUT  020000  Вывод результата OR = Acc
 017  HLT  090000  Остановка

Информация о работе Модель учебной ЭВМ