- •Архитектура эвм и вычислительных систем Методические указания и контрольные задания для студентов заочной формы обучения
- •Содержание
- •Пояснительная записка
- •Тематический план
- •Содержание дисциплины
- •Контрольные вопросы
- •Раздел 1. Представление информации в
- •Тема 1.1 Арифметические основы эвм
- •Восьмиразрядный код
- •Контрольные вопросы
- •Тема 1.2 Формы представление двоичных чисел
- •Контрольные вопросы
- •Тема 1.3 Особенности представление информации в пк
- •Контрольные вопросы
- •Раздел 2 логические основы эвм. Элементы и узлы
- •Тема 2.1 Логические элементы и операции
- •Контрольные вопросы
- •Тема 2.2 Триггеры
- •Контрольные вопросы
- •Тема 2.3 Регистры
- •Контрольные вопросы
- •Тема 2.4 Счетчики импульсов
- •Контрольные вопросы
- •Тема 2.5 Шифраторы (кодеры)
- •Контрольные вопросы
- •Тема 2. 6 Дешифраторы (декодеры)
- •Контрольные вопросы
- •Тема 2.7 Распределитель импульсов
- •Контрольные вопросы
- •Тема 2.8 Генератор тактовых импульсов
- •К онтрольные вопросы
- •Раздел 3 основные концепции функционированя эвм
- •Тема 3.1 Принцип построения эвм по «Фон Нейману»
- •Тема 3.2 Эволюция структурных схем эвм
- •Тема 3.3 Организация функционирования эвм с магистральной архитектурой
- •Контрольные вопросы
- •Тема 3.4 Организация работы эвм при выполнении программы
- •Контрольные вопросы
- •Тема 3.5 Особенности управления основной памятью эвм
- •Адресное пространство программы d Таблица сегментов программы d оп
- •Контрольные вопросы
- •Тема 3.6 Ресурсы эвм
- •Контрольные вопросы
- •Раздел 4 функциональная и структурная
- •Тема 4.1 Основные блоки пк и их назначение
- •Контрольные вопросы
- •Тема 4.2 Интерфейс
- •Контрольные вопросы
- •Тема 4.3 Функциональные характеристики пк
- •Контрольные вопросы
- •Раздел 5 микропроцессоры
- •Тема 5.1 Параметры микропроцессора
- •Контрольные вопросы
- •Тема 5.2 Системы команд и соответствующие классы процессоров
- •Контрольные вопросы
- •Тема 5.3 Режимы процессора
- •Контрольные вопросы
- •Тема 5.4 Функциональная структура микропроцессора
- •Контрольные вопросы
- •Раздел 6 основы программирования процессора
- •Тема 6.1 Элементы программирования на языке ассемблер
- •Контрольные вопросы
- •Тема 6. 2 Основные команды языка ассемблер
- •Контрольные вопросы
- •Тема 6. 3 Процедуры формирования программы
- •Контрольные вопросы
- •Тема 6.4 Структура исходной программы на языке ассемблера для получения
- •Контрольные вопросы
- •Тема 6.5 Краткие сведения об отладчике программ debug
- •Контрольные вопросы
- •Раздел 7 запоминающие устройства пк Тема 7.1 Иерархия памяти пк
- •Контрольные вопросы
- •Тема 7.2 Статическая и динамическая оперативная память
- •Контрольные вопросы
- •Тема 7.3 Регистровая кэш- память
- •Контрольные вопросы
- •Тема 7.4 Физическая структура оперативной памяти
- •Контрольные вопросы
- •Тема 7.5 Постоянные запоминающие устройства
- •Контрольные вопросы
- •Тема 7.6 bios, cmos ram
- •Контрольные вопросы
- •Тема 7.7 Логическая структура основной памяти
- •Непосредственно адресуемая память
- •Контрольные вопросы
- •Тема 7.8 Организация виртуальной памяти
- •Контрольные вопросы
- •Тема 7.9 Классификация внешних запоминающих устройств
- •Раздел 8 вычислительные системы
- •Тема 8.1 Классификация вычислительных систем
- •Контрольные вопросы
- •Тема 8.2 Многомашинные и многопроцессорные вс
- •Контрольные вопросы
- •Тема 8.3 Классификация архитектуры вычислительных систем
- •Контрольные вопросы
- •Тема 8.4 Архитектуры мультипроцессорных систем общего назначения
- •Контрольные вопросы
- •Методические указания по выполнению контрольных работ
- •Вопросы и задания к контрольной работе
- •Вопросы к экзамену
- •Материал для контроля остаточных знаний
- •Методические указания к практическим занятиям практическое занятие №1 Изучение принципа выполнения программ в эвм
- •Лабораторное занятие № 1 Изучение структуры вычислительной машины
- •Лабораторное занятие №2 Изучение аппаратных ресурсов эвм
- •Лабораторное занятие № 3 Изучение основных типов процессоров и их характеристик
- •Перечень литературы
- •Средства обучения
Контрольные вопросы
Состав интерфейсной и операционной части МП.
Состав и назначение УУ.
Назначение компонентов УУ
Функции выполняемые УУ.
Состав МПП.
Назначение и состав универсальных регистров.
Назначение и состав сегментных и регистров и регистров смещений.
Назначение и состав регистров флагов.
Функции, выполняемые схемой управления шиной и портами.
Раздел 6 основы программирования процессора
Тема 6.1 Элементы программирования на языке ассемблер
Студент должен
знать:
- для чего необходимо знание основ программирования на
машинно- ориентированных языках;
- основные компоненты языка ассемблер.
Что дает знание основ программирования на машинно-ориентированных
языках. Основные компоненты языка ассемблер: алфавит языка, константы,
команды, директивы, модификаторы.
Программы составляются, как правило, на машинно-независимом алгоритмическом языке высокого уровня (Вasic, Раscal, FORTRAN, С, РROLOG и т. д.). Представление об основах программирования на машинно-ориентированных языках полезно для:
- лучшего понимания архитектуры ПК и более грамотного использования
компьютеров; для разработки более рациональных структур алгоритмов и программ
решения прикладных задач;
- возможности просмотра и корректировки исполняемых программ с расширениями
.ехе. и .соm. компилированных с любых языков высокого уровня, в случае утраты
исходных программ (вызвав указанные программы и отладчик программ DEBUG и
декомпилировав их, можно получить их отображение на языке ассемблера);
- составления программ решения наиболее ответственных задач (программа,
составленная на машинно-ориентированном языке, обычно эффективнее программ,
полученных в результате трансляции с языков высокого уровня) и для реализации
процедур, включаемых в основную программу в виде отдельных фрагментов в том
случае, если они не могут быть реализованы ни на используемом языке высокого
уровня, ни с использованием служебных процедур операционной системы.
Основные компоненты языка ассемблер.
Алфавит языка составляют символы АSCII:
- буквы от А до Z (или от а до z, строчные и прописные буквы в ассемблере не
различаются);
- цифры от 0 до 9;
- специальные символы : @ , $ , ? , . , _ , - , + , * , ' , " , ; , : и т. д.
Из букв, цифр и символов: @ , $ , ? , . , _ формируются:
- простые сообщения: имена (идентификаторы) процедур (подпрограмм), переменных,
директив, команд (метки), значения констант и переменных;
- составные сообщения: команды (операторы);
- директивы (псевдооператоры), модификаторы (операции) и т. д.
Имена меток, переменных, идентификаторов могут быть длиной до 31 символа и начинаться должны обязательно не с цифры.
Константы (числа (только целые) и строки):
- двоичные числа; заканчиваются буквой В;
- десятичные числа; без специального окончания или заканчиваются буквой D;
- шестнадцатеричные числа; заканчиваются буквой Н.
Для обозначения цифр 10, 11, 12, 13, 14, 15 в шестнадцатеричной системе счисления используются соответственно буквы А, В, С, D, Е, F; но начинаться шестнадцатиричные числа должны обязательно с цифры, например: выражение F19Н - не число, а идентификатор, правильно число надо записать так: ОF19Н.
Запись отрицательных чисел:
- десятичные числа записываются обычным образом, просто со знаком: -32, -32D;
- двоичные числа записываются только в дополнительном модифицированном
коде: -32D → 11.100000В, -19D → 11.01101В;
- шестнадцатеричные числа записываются только в дополнительном коде: -32D записывается как 1.ЕОН, -119D записывается как 1.89Н.
Строки (литералы): включают любые буквы, цифры и символы, но заключаются в кавычки: "ПЭВМ IВМ РС с микропроцессором 80386".
Команды (операторы):
формат команды:
[Метка [:]] КОП [Операнд] [.Операнд] [:Комментарий].
Между элементами команды вставлены пробелы. Здесь и далее элементы, заключенные в квадратные скобки, необязательны.
КОП (Код Оператора) — мнемокод команды (состоит из 2-6 букв). Может быть до 256 различных кодов (в ассемблере IВМ РС их число изменяется в зависимости от типа МП. Например: 133 в МП 8088, 240 в МП 80386).
Операнд — явно заданный адрес (прямой или косвенный); имя метки, переменной; само значение переменной; ассоциативный признак и т. п. Количество необходимых и команде операндов ассемблер узнает по КОП. В большинстве двухадресных команд присутствуют операнды приемник ( dst— destination) и источник (src —sourse); источник не изменяет своего содержания, в приемнике 1-е число, участвующее в операции, заменяется результатом.
Метка — имя команды ассемблера для ссылки (обращения) к этой команде (до 31 символа). Двоеточие, стоящее после метки, означает, что метка всегда находится в текущем сегменте памяти.
Комментарий — любой текст, поясняющий человеку программу (не воспринимается ассемблером, но выводится в листинге).
Директивы (псевдооператоры)
Директивы в отличие от команд выполняются только в процессе ассемблирования (трансляции) программы, а не в процессе решения задачи на компьютере. То есть команды — это инструкции машине, а директивы — это инструкции ассемблеру (транслятору).
Формат директивы:
[Идентификатор] КПОП [Операнд] [.Операнд]... [;Комментарий]
Как и в случае команд, поле директивы может начинаться в любом месте строки программы при условии, что оно отделено от предыдущего поля хотя бы одним пробелом.
Идентификатор — имя директивы (для обращения к ней).
КПОП (Код ПсевдоОПератора) — мнемокод директивы (состоит из 2-7 букв). Операнды — их в директиве может быть много; это уже не только адреса, но и различные процедуры. В операндах могут быть записаны простые выражения, использующие модификаторы (операции).
Модификаторы
В операторах и псевдооператорах языка ассемблер иногда используются модификаторы, которые определяют ту или иную операцию, учитываемую при трансляции программы. Существует 5 видов модификаторов: арифметические, логические, отношений, возвращения значений и присваивания атрибутов. Наиболее часто используются модификаторы (mdf):
- арифметические модификаторы: + — сложить, - — вычесть, * — умножить, / —
разделить, mod — остаток от деления и т. д. Формат: оpr mdf opr.
- логические модификаторы: and — «и», оr — «или», not — «не» и xor - исключающее
«или». Формат: орr mdf орг.
- модификаторы отношения: еq — совпадения, nq — несовпадения, lt — меньше, qt —
больше, le — меньше или равно, qе — больше или равно. Формат: оpr mdf opr.
- модификаторы, возвращающие значения:
- $ — возвращает значение смещения адреса текущего оператора;
- seg — возвращает адрес сегмента адреса метки или переменной;
- offset — возвращает смещение адреса метки или переменной;
- lenqth — возвращает длину операнда в единицах определения (байтах или словах);
- tуре — возвращает атрибут типа переменной (1, если byte; 2 — word, 3 — dword)
или и метки (1 — nеаг, 3 — far);
- size — возвращает произведение lenqth*type. Формат: mdf opr.
- модификаторы присваивания атрибута:
- рtг — изменяет атрибут типа (bytе, word или dword) операнда или атрибут
дистанции (nеаг или fаг) адресного операнда. Формат: тип рtr орг. (здесь: тип —
новый атрибут, орг — идентификатор операнда, чей атрибут должен быть изменен);
- ds:, es:, сs:, ss: — изменяет атрибут сегмента адреса. Формат: rsegm : адрес, (адрес
может быть задан именем сегмента, переменной, меткой или адресным
выражением);
- short — дополняет атрибут near метки оператора перехода, указывает, что переход
осуществляется на расстояние не более ±128 байт от текущей команды. Формат:
short метка;
- high — возвращает старший байт 16-битового значения орr. Формат: high орr;
- low — возвращает младший байт 16-битового значения орr. Формат: low орr.
В программах используются:
- атрибуты дистанции:
- near — близкий, в пределах одного сегмента;
- far — далекий, за пределами одного сегмента;
- атрибуты типа данных:
- bуte — длиной 1 байт;
- word — длиной 2 байт;
- dword — длиной 4 байт.
