Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИНФОРМ-Арифметические основы построения ЭВМ для....doc
Скачиваний:
8
Добавлен:
08.08.2019
Размер:
107.52 Кб
Скачать

Арифметические основы построения эвм.

  1. Основные сведения

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

Для выполнения курсовой работы необходимо знание основных разделов предмета «Информатика»: арифметические и логические основы ЭВМ.

Каждому студенту в начале семестра преподавателем выдаётся индивидуальное задание. Выполненная курсовая работа включает в себя разработанный алгоритм в соответствии индивидуальным заданием и программу, демонстрирующую работу алгоритма на конкретных примерах.

Курсовая работа оформляется в виде пояснительной записки объёмом около 15-20 страниц печатного текста. Текстовый и графический материалы курсовой работы должны быть оформлены в соответствии с требованиями ГОСТ. Оформленная курсовая работа сдаётся преподавателю на проверку.

Срок сдачи курсовой работы: 1 апреля текущего учебного года.

Допущенная к защите работа возвращается студенту. Защита работы происходит в назначенное время публично – перед комиссией из двух человек. На защите студент должен показать умение кратко и грамотно излагать технические вопросы по проектированию, уметь обосновать выбор принятого решения, а также знать в подробностях все разработанные вопросы. По результатам защиты и представленным в записке материалам студенту ставится оценка по четырёхбальной системе: «отлично», «хорошо», «удовлетворительно» или «неудовлетворительно». В случае неудовлетворительной оценки студенту выдаётся новое задание.

  1. Содержание курсовой работы

Логически выполнение курсовой работы можно разделить на три части:

1) разработка алгоритма преобразования данных в заданный формат;

2) разработка алгоритма выполнения требуемой арифметической операции; 3) написание программы, которая бы выполняла указанной действие над конкретными операндами.

При выполнении третьей части курсовой работы необходимо помнить, что программная реализация разработанного алгоритма – это лишь часть программы, которая необходима для подтверждения разработанных алгоритмов!

  1. РАЗРАБОТКА АЛГОРИТМА АРИФМЕТИЧЕСКОЙ ОПЕРАЦИИ

Первые две части курсовой работы – это разработка алгоритмов.

Для представления алгоритмов используется специальный граф-схемный язык, основными элементами которого являются функциональные и вспомогательные блоки, описывающие операции алгоритма.

Каждому отдельному действию, осуществляемому алгоритмом, придаётся значение микрооперации. Любая микрооперация изменяет состояние какого-либо из блоков. Всем блокам устройства присваиваются имена (условные обозначения): сумматор – СМ, сумматор мантисс – СММ, регистр – Pг, сумматор порядка – СМП, регистр переносов – PгП и т.д.

На рис. 1 представлены условные обозначения функциональных блоков. Каждому блоку алгоритма присваивается номер, который записывается слева в разрыве линии обвода блока. Описание последовательности выполнения действий ведётся с использованием номеров блоков. Блоки в алгоритме соединяются линиями связи. Как правило, линия связи входит в блок сверху и выходит снизу. Линия связи даётся без стрелок, если она идёт сверху вниз и слева направо. Во всех других случаях ставятся стрелки. Толщина линий связи в два раза меньше, чем толщина обводки блоков. Линии связи проводятся параллельно внешним краям рамки листа. Допускается пересечение их или изгиб под углом 90°. Расстояние между параллельными линиями должно быть не менее 8 мм. Размеры блоков выбираются из ряда: а =10, 15, 20, 30, … мм, b =1,5а. Расстояние между параллельными линиями должно быть не менее 10 мм.

Рис.1. Условные обозначения функционального и условного блоков.

В каждый блок может войти и выйти только по одной линии связи. Из условного блока выходят две связи: снизу и из правого угла. Над связями, выходящими из условного блока, пишут слова: «Да», «Нет».

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

Рис.2. Блоки разветвлений.

Линии связи проводятся в горизонтальном, либо в вертикальном направлении. Несколько логических связей могут объединиться в одну линию (рис. 3, а) или пересекаться под углом . Для записи действий, протекающих параллельно во времени, используют условное обозначение параллельного процесса (рис. 3, б). Это означает, что несколько процессов начинаются и заканчиваются одновременно. Линии связи можно разрывать, обозначив точки разрыва одинаковыми символами внутри соединителя (рис. 3, в, г). Около места разрыва связи допускается в скобках запись комментария, определяющего, куда направляется связь и откуда приходит.

Рис.3. Логические связи (а, б) и разрыв соединительных линий (в, г).

Для описания проходящих процессов кроме условных обозначений используется оператор присваивания «:=». Например, действие «передать в регистр А изображение числа В в обратном коде» запишется в виде PrA := [B]об. Запись PrA := 0 означает установку регистра в нулевое положение.

Оператор присваивания указывает и устройство, на котором производится действие. Так, запись СМА := [СМА] + [PrB] означает, что действие осуществляется на сумматоре А. Запись СМА := [СМВ] + [PrD] недопустима, так как неизвестно, где производится действие.

Выполнение сдвигов обозначается следующим образом: сдвиги сумматора вправо на k разрядов – R (k, СМ): сдвиги регистра А влево на n разрядов – L (n, PrA).

Поэтому запись вида СМА: = R (2, СМА) означает, что в сумматоре А осуществляется сдвиг вправо на два разряда и сдвинутое число остаётся в сумматоре А. Модификационный сдвиг обозначается следующим образом Pr2 = Rм (2Pr2)

Операции преобразования в обратный и дополнительный коды можно рассматривать как самостоятельные микрооперации и для их записи использовать свои обозначения. Например, содержимое регистра А преобразуется в дополнительный код – ДК (PrA) или содержимое сумматора А преобразуется в обратный код – ОК (СМА). Операция инвертирования - , что означает инвертирование содержимого регистра А во всех разрядах.

Двоичные разряды во всех блоках устройства нумеруются слева направо. Номер разряда какого-то блока указывается в квадратных скобках после назначения блока: Pr1 [5] – 5-й разряд регистра 1; Pr2 [15 2] – совокупность разрядов со 2-го по 15-й регистра 2.

Ниже представлены основные обозначения, используемые для записи алгоритмов:

Установка в нулевое положение………….

Pr1: = 0

СМ: = 0

Инвертирование кода ……………………..

Pr1: =Pr1

Передача информации из отдельного блока в другой:

а) из Pr1 в Pr2 прямым кодом ……………

б) из Pr1 в СМ обратным кодом………….

в) из сумматора в регистр 2 дополнительным кодом …………………………

Pr2: = [Pr1]пр

СМ: = [Pr1]ок

Pr2: = [СМ]дк

Сдвиг регистра Pr1 на n разрядов:

а) влево ……………………………………..

б) вправо (модифицированный)………….

Pr1: = L (n, Pr1)

Pr1: = Rм (n, Pr1)

Операция последовательного счёта……..

СЧ: = СЧ + 1

Операция сложения кодов: содержимое СМ сложить с содержанием Pr1 ………………………

СМ: = [СМ] + [Pr1]

Частичная передача информации из Pr2 с 3-го по 15-й в Pr1 с 1-го по 13-й разряды

Pr1 [13+1] :=Pr2 [15+3]

Правила, по которым осуществляется модифицированный сдвиг чисел со знаком, представлены в следующей таблице:

Исходная

комбинация

Сдвинутая влево

на один разряд

Сдвинутая вправо

на один разряд

00,а1а2…аn

12…аn0

00,0а1а2…аn-1

01,а1а2…аn

12…аn0

00,1а1а2…аn-1

10,а1а2…аn

12…аnα

11,0а1а2…аn-1

11,а1а2…аn

12…аnα

11,1а1а2…аn-1

Величина α зависит от кода: для дополнительного кода α=0, для обратного кода α=1.

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

Для описания повторяющихся действий можно ввести процедуры. Процедура оформляется в виде отдельного алгоритма, которому присваивается имя. Кроме того, могут быть даны наборы формальных параметров, заменяемых на фактические при обращении к данной процедуре. Имя процедуры и перечень формальных параметров указываются в блоке «Начало» алгоритма процедуры. Обращение к процедуре осуществляется из общего алгоритма с помощью блока обращения, в котором указываются имя процедуры и в круглых скобках фактические параметры, соответствующие данной процедуре.

Правила выполнения схем определяются следующими документами:

ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.

ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения.

ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические.