
- •Моделирование схемы регистра приема, хранения, выдачи кодов
- •2.2. Регистры хранения и сдвига
- •2.2.1. Регистры хранения (памяти)
- •2.2.2. Регистры сдвига
- •2.2.3.Пример работы регистра сдвига
- •2.3. Регистры общего назначения, сегментов и флагов
- •2.3.1. Регистры общего назначения
- •2.3.2. Регистры сегментов
- •2.3.3.Регистры флагов
- •2.3.4.Регистры приема, хранения, выдачи кодов
- •3. Порядок выполнения работы
- •4. Список заданий
- •5. Контрольные вопросы
- •6. Список рекомендуемой литературы
2.3.2. Регистры сегментов
Регистры сегментов (cs, ds, ss, es, fs и gs) хранят 16-битные дескрипторы сегментов. Дескрипторы сегментов - это специальные указатели, определяющие расположение сегмента в памяти.
2.3.3.Регистры флагов
Этот регистр представляет собой набор флагов, устанавливаемых или сбрасываемых по результатам выполняемых команд. Флаг - это переменная длиной 1 бит, используемая в командах условного перехода. Если значение этой переменной равно 1, то считается, что флаг установлен, если 0 – сброшен. Существует несколько видов флагов:
Флаг нуля (zf) устанавливается в случае получения нулевого результата при выполнении очередной команды и сбрасывается при остальных ненулевых значениях.
Флаг переноса (сf) устанавливается при переносе или заеме старшего бита в арифметических операциях, в остальных случаях сбрасывается.
Флаг переполнения (оf) устанавливается, если результат арифметической операции не умещается в операнде-приемнике.
Флаг знака (sf) устанавливается при единичном значении старшего бита результата - признаке отрицательного числа
2.3.4.Регистры приема, хранения, выдачи кодов
Эти регистры являются самыми распространенными регистрами в компьютере, так как для преобразования информации перед любой вычислительной операцией необходимо иметь ту информацию, которая позволяет выполнить код операции в формате команды.
Регистр приема, хранения, выдачи кодов строится на основе двух компонентов: RS-синхронного триггера и логического элемента «И» (рис.3).
Рис.3. Регистр приема, хранения и выдачи кодов
3. Порядок выполнения работы
Рассмотрим порядок выполнения работы на примере моделирования двухразрядного регистра приема, хранения и выдачи кодов, имеющего комбинацию входных сигналов (1,0) .
1. Вызвать программу OrCAD Capture для построения схемы.
2. Создать новый проект.
3. Из библиотеки LOGIC выбрать нужные логические элементы («И» и RS-триггер).
4. Из библиотеки SOURCE взять компонент STIM1, на который будут подаваться входные сигналы. Поместить компоненты на рабочем поле и соединить их выводы с входами регистра. Получить схему приема, хранения и выдачи кодов (рис.4).
Рис. 4. Схема регистра приема, хранения и выдачи кодов
5. Подать на входы регистра приема, хранения и выдачи кодов сигналы согласно заданию для записи с одновременной подачей синхроимпульса. Затем подать синхроимпульс на ВПК для получения прямого кода хранимого числа и синхроимпульс на ВОК для получения обратного кода. Длительности синхроимпульсов – 2 мс.
6. Получить временную диаграмму.
7. Проанализировать полученные результаты.
8. Оформить отчет, который должен содержать:
1) наименование лабораторной работы;
2) цель работы с указанием конкретного задания;
3) теоретическое содержание, включающее краткое описание классификации регистров;
4) порядок выполнения работы;
5) электронно-логическую схему заданного регистра;
6) временную диаграмму полученного регистра;
7) выводы по данной лабораторной работе.