Разработка процессора с плавающей точкой

Использование во внутренних операциях процессора с плавающей точкой (ППТ) представления вещественных чисел в формате с расширенной точностью РТ. Программная модель процессора. Описание основных команд. Анализ блок-схемы процессора, алгоритмы операций.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.06.2011
Размер файла 2,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

31

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

РЯЗАНСКАЯ ГОСУДАРСТВЕННАЯ РАДИОТЕХНИЧЕСКАЯ АКАДЕМИЯ

КАФЕДРА ЭВМ

КУРСОВОЙ ПРОЕКТ

"Разработка процессора с плавающей точкой"

Выполнил: студент гр.147

Бугров Н.

Проверила: Елесина С.И.

г. Рязань 2002г.

Введение

Fsub m80real-вычитание

STST-m80real

Команда вычитания производит вычитание другого операнда из вершины стека и возвращает разность в получатель.

Один операнд находятся в регистровом стеке ST в формате m80real, другой в ОП в

формате m64real

Особые случаи: P, U, O, D, I.

FCom m64real - cравнение

Сравнение ST с 64real, с последующим извлечением из стека. Анализирует число в вершине стека и формирует код условия в слове SW.

Ёмкость ОП 8 Кбайт.

Длина слова памяти 128 бит.

1. Форматы данных

1.1 Внутренний формат

Рис.1.1 Внутренний формат РТ

Во внутренних операциях процессор с плавающей точкой (ППТ) использует представление вещественных чисел в формате с расширенной точностью РТ (рис.1.1.). Длина формата 80 бит.

Значащие цифры числа находятся в поле мантиссы (М). Длина мантиссы 64 бита. Поле порядка (Е) показывает фактическое положение двоичной точки в разрядах мантиссы. Длина порядка 15 бит. Бит знака S определяет знак числа. Мантисса представлена в прямом коде. Порядок Е задается в смещенной форме: он равен истинному порядку (П), увеличенному на значение смещения - смещ РТ= 16383:

Е= П + смещ РТ

Истинный порядок изменяется от - 16382 до 16383. Смещенные порядки 000.0В и 111.1В зарезервированы для специальных значений. Числа в формате РТ имеют явный бит F0. Значение числа в формате РТ равно

(-1) S*2 (Е-смещРТ) * (FО). (F1) (F2). (F63)

Пример.

Пусть задано число в десятичной форме: - 350.875

35010 - > 15eh = 101011110;

0.87510 - > 0.111;

S = 1;

101011110.111 = 1.010001110111 * 28;

E = 8 + 16383 = 4007h = 1000000000001112;

Внутренний формат 80real:

1.2 Внешние форматы

В данном курсовом проекте рассматривается внешний формат: 64геаl - двойная точность (ДТ).

Формат ДТ представлен на рис.1.2 Длина формата 64 бита.

Рис.1.2 Формат ДТ

Значащие цифры числа находятся в поле мантиссы (М). Длина мантиссы 52 бита. Поле порядка (Е) показывает фактическое положение двоичной точки в разрядах мантиссы. Длина порядка 11 бит. Бит знака S определяет знак числа. Мантисса представлена в прямом коде. Порядок E задается в смещенной форме, он равен истинному порядку (П), увеличенному на значение смещения - смещ ДТ = 1023:

Е = П + смещ ДТ

Истинный порядок изменяется от - 1022 до 1023. Смещенные порядки 000.0В и 111…1В зарезервированы для специальных значений. Явный бит FО в формате ДТ отсутствует и мантисса оказывается правильной дробью. Значение числа в формате ДТ равно (-1) S*2 (Е-смещ ДТ) *1. (F1) (F2). (F52).

Пример.

Пусть задано число в десятичной форме: - 350.875

35010 - > 15eh = 101011110;

0.87510 - > 0.111;

S = 1;

101011110.111 = 1.010001110111 * 28;

E = 8 + 1023 = 407h = 100000001112;

Внутренний формат 64real:

2. Программная модель процессора

Программная модель (рис 2.1) включает в себя кольцевой стек из восьми регистров R0-R7, регистры слова тэгов TW, слова состояния SW и слова управления CW. В стеке хранятся числа в формате РТ. Вершина стека определяется полем TOP слова состояния SW и обозначается ST (0) или ST. На рисунке вершиной стека является физический регистр R3. ST (0) содержит последнее включенное в стек значение, регистр ST (1) предпоследнее и т.д.

ST (0) содержит последнее включенное в стек значение, регистр ST (1) предпоследнее и т.д. Включение в стек осуществляет декремент TOP и загрузку в новую вершину стека. При извлечении из стека данное читается из ST (0), а затем производится инкремент TOP.

Рис.2.1 Программая модель процессора

С каждым регистром стека ассоциируется двухбитный тэг, характеризующий хранимое число:

00 - нормализованное число;

01 - истинный нуль;

10 - денормализованное число;

11 - пустой регистр.

В слове состояния SW поле TOP содержит адрес текущей вершины стека. Биты кода условия CO-C3 фиксируют результаты команд сравнения, проверки и анализа. Восемь бит отведены для регистрации особых случаев (ошибок) (рис.2.2).

Рис.2.2 Регистр SW

При выполнении команд с ПТ возможны следующие особые случаи:

P - неточный результат (точность);

U - антипереполнение;

O - переполнение;

D - денормализованный операнд;

I - недействительная операция;

Z - деление на нуль.

Особым случаям соответствуют флажки в слове состояния SW (рис.2.2): IE, ZE, DE, OE, UE, PE. При любом особом случае устанавливается бит суммарной ошибки ES, а также вырабатывается активный сигнал ошибки FERR.

В слове управления CW поле RC задает режим округления, когда формат получателя не позволяет точно представить результат. Пусть В - точный результат, А и С - ближайшие к нему представимые в заданном формате числа: A<B<С. Поле RC задает режимы округления:

00 - округление к ближайшему - выбор из А и С, ближайшего к В;

01 - округление вниз - А;

10 - округление вверх - С;

11 - усечение - меньшее из А и С по модулю.

Младшие 6 битов CW хранят маски особых случаев. Если бит маски установлен, прерывания при соответствующем особом случае не происходит. Если бит маски сброшен, происходит прерывание.

Рис.2.3 Маски особых случаев.

В данном курсовом проекте используются следующие особые случаи: P, U, O, D, I.

Недействительная операция

Этот случай возникает при при переполнении стека (попытка включения в непустой регистр). Стековые операции распознаются по биту SF=1 в SW. При антипереполнении стека бит C1=0.

Переполнение

Возникает, когда округленный результат арифметической команды с преобразованием формата превышает наибольшее конечное число в формате получателя.

Денормализованный операнд.

Возникает при попытке оперировать денормализованный операндом.

3. Описание команд

3.1 FISUB m64int.

Команда вычитания вычитает другой операнд из вершены стека и возвращает разность в получатель. ST ST-m80real

Один из операндов находится в оперативной памяти (ОП) в формате 80real, второй в регистровом стеке ST в формате 80real. Перед выполнением операции вычитания операнд читается из ОП и позиционируется в регистре данных.

Особые случаи:

P-неточный результат;

U-антипереполнение;

O-переполнение;

D-денормализованный операнд;

I-недействительная операция.

Формат команды представлен на рис.3.1

Рис.3.1 Формат команды FISUB m80real.

Адрес операнда m80real определяется полями mod, r/m, sib и disp. Адрес вычисляется целочисленным процессором. К началу операции он уже сформирован. Бит [0] первого байта команды определяет тип операции. В данном случае бит [0] =0 - арифметическая операция над операндом из памяти и вершиной стека.

Поле MF определяет тип операнда. При m80real MF=01.

3.2 FCOMP m64real

Сравнение ST с 64real. Анализирует число в вершине стека и формирует код условия в слове SW. Формат команды представлен на рисунке 3.2.

Рис 3.2 Формат команды Fcom m64real.

Адрес операнда m64real определяется полями mod, r/m, sib и disp. Адрес вычисляется целочисленным процессором. К началу операции он уже сформирован. Бит х [0] первого байта команды определяет тип операции. Поле MF определяет тип операнда, При m64real MF=10.

4. Блок - схема процессора

На основании анализа заданных операций, укрупненная блок схема процессора представлена на рисунке 4.1 В него входят оперативная память ОП, блок преобразования форматов данных БПФ, блок регистров БР, блок обработки данных БОД, блок микропрограммного управления БМУ. БПФ и ОП связаны 64 - битной шиной, через нее передаются данные из ОП в формате 64real в БПФ. БПФ осуществляет прямое преобразование из формата ДТ в РТ. БР включает в себя регистровый стек, регистры слов тегов, управления и состояния. Из БР в БОД передаются 2 операнда в формате РТ для операции вычитания и сравнения, а из БОД в БР передается результат операции вычитания в формате РТ и записывается в вершину стека. Для 1-й команды 2-ой операнд берется из БПФ, а для 2-й напрямую из ОП.

Управление операциями осуществляется БМУ путем выборки последовательности микрокодов (МК). Обратная связь от БПФ, БР, БОД к БМУ осуществляется через шину осведомительных сигналов ОС.

5. Алгоритмы операций

5.1 Алгоритм операции FISUB m80real

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

1. Чтение второго операнда из ОП;

2. Операция вычитания;

3. Запись результата вычитания в стек.

1 этап.

Адрес данного к началу операции уже вычислен и находится в адресном регистре EAR. По заданию длина слова ОП равна 64бита. Поэтому операнд выбирается в регистр чтения RGR за одно обращение: RGRW=MEM [EAR].

Рис.5.1.

Возможные варианты позиционирования предложены на Рис.5.1 (a).

процессор плавающая точка алгоритм

Рис.5.1 (a). Варианты позиционирования 80 real.

Схема позиционирования m80real приведена на рис.5.1 (б).

Рис.5.1 (б). Позиционирование 80 real.

2 этап.

Первый операнд читается из вершины стека в рабочий регистр RG1: RG1=ST (0).

Второй операнд читается в рабочий регистр из регистра данных RG2: RG2=RGD.

Разность формируется в RG3.

Регистр операндов RG1 и RG2 и регистр суммы RG3 подразделяются на субрегистры знаков (S1,S2,S3), порядков (E1,E2,E3) и мантисс (M1,M2,M3). Регистры мантисс расширены до 68 бит для увеличения точности вычислений. Окончательный результат округляется до 64 бит.

Обработка знаков происходит в соответствии с табл.5.1, где Sm - знак разности мантисс.

Таблица 5.1

S1

S2

Действие над мантиссами

S3

0

0

1

1

0

1

0

1

M1-M2

M1+M2

M1+M2

M2-M1

Sm

0

1

Sm

Прежде чем сделать операцию вычитания мантисс, необходимо уравнять порядки. Для этого в начале находим E=E1-E2. Если E>0, то производится сдвиг M2 на E вправо (dec E), если E<0, то сдвигаем M1 на E вправо (inc E). уравнивание заканчивается при E=0. Если E>67, то сразу обнуляем сдвигаемую мантиссу, чтобы исключить ненужные сдвиги. Порядок результата E3 равен большему из E1 и E2.

В зависимости от знаков операндов (табл.5.1), производим сложение или вычитание мантисс.

Операция вычитания FISUB заканчивается нормализацией и округлением результата:

если M3 получилось в ДК, то M3 преобразуем в прямой код (ПК) M3=M3+1;

если произошло переполнение мантиссы, то делаем нормализацию вправо: M3=R1 (M3), E3=E3+1;

если отсутствует явный бит в M3, то делаем нормализацию влево: M3=Lk (M3), E3=E3-k, где k-число ведущих нулей;

округление M3 до 64 бит в зависимости от режима округления - поле RC (табл.5.2)

Таблица 5.2

RC

Режим

r

Действие округления

00

10

К ближайшему вверх

R<1000

R=1000

Отбросить младшие биты

Если младший сохраняемый бит 1 - прибавить к нему 1, отбросить младшие биты

01

11

Вниз

усечение

любое

Отбросить младшие биты

При нормализации возможны следующие особые случаи:

мантисса M3=0 (потеря значимости);

при инкременте E3 возникает переполнение порядка;

пре декременте E3 возникает антипереполнение порядка.

При возникновении подобных случаев фиксируются следующие признаки результатов:

Z-нулевой результат;

S-знак результата;

P-потеря точности;

O-переполнение порядка;

U-антипереполнение порядка.

Маскированные реакции на особые случаи:

Z-запись в ST истинного нуля;

O-запись кода бесконечности;

U-запись кода нуля или денормализованного значения.

Схема операции FISUB m64real приведена на рис.5.2.

Пример арифметической операции:

M1=0111011101012=77516

M2=1000101110112=8BB16

Рис.5.2 Алгоритм операции FISUB m64int (начало).

Рис5.2 Алгоритм операции FISUB m64real (окончание).

5.3 Алгоритм операции FCOM m64real

Эта команда анализирует число в вершине стека и формирует код условия в слове SW. Сравнение производится с операндом из ОП. Алгоритм представлен на рис.5.3.

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

1. чтение второго операнда из ОП;

2. преобразование второго операнда из формата 64real в формат 80real;

3. операция сравнения;

1 этап

Адрес данного к началу операции вычислен и находится в адресном регистре EAR. По заданию длина слова ОП равна 128 бит. Поэтому операнд выбирается в регистр чтения RGR за одно обращение:

RGRW=MEM [EAR] (рис.5.3.)

Рис.5.3.

2 этап

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

позиционирование прочитанного данного, т.е. размещение его в приемном регистре в некотором стандартном виде;

преобразование из формата ОТ в формат РТ.

Позиционирование можно изобразить следующим рисунком (рис.5.3 (а.)

Аналогично получим другие варианты позиционирования m64real:

Рис.5.3 (а). Позиционирование m64real.

Case (EAR [0: 3])

{

100B: RGD [75: 10]: =R63 (RGRW)

011B: RGD [75: 10]: =R47 (RGRW)

010B: RGD [75: 10]: =R31 (RGRW)

001B: RGD [75: 10]: =R15 (RGRW)

000B: RGD [75: 10]: = (RGRW)

}

RGD [78: 75,11: 0]: =0;

Преобразование вещественных чисел.

Число формата ОТ в формат РТ преобразуется в следующей последовательности. RGD представляем в виде субрегистров знака - S (RGD [79]), порядка - Е (RGD [71: 64]) и мантиссы М (RGD [63: 39]).

Если число равно нулю, то результатом будет код нуля в формате РТ: Е=0, М=0.

Если число нормализовано:

E=E+15360

сдвинуть мантиссу (биты 63: 0) на один бит вправо и записать 1 в бит 63:М=1. R1 (M).

Если число денормализовано, провести его нормализацию:

прибавить к порядку 15360: Е=Е+15360;

производить сдвиг мантиссы влево до появления 1 в ее старшем бите, при каждом сдвиге вычитать 1 из порядка: М=L1 (M), Е=Е-1.

3 этап

Таблица 2.2

Условие

С3

С2

С1

С0

ST > SRC

0

0

х

0

ST < SRC

0

0

х

1

ST = SRC

1

0

х

0

Несравимы

1

1

х

1

Рис.5.4 Алгоритм операции Fcom m64real.

6. Структурные схемы блоков процессора

6.1 Блок памяти

В данном курсовом проекте используется одноуровневая память данных емкостью 8Кб и длиной слова ОП 128 бит. Адрес данного к началу операции вычислен и находится в адресном регистре ЕАR. В операциях с ПТ минимальный размер данного 2 байта, поэтому адресация производится с точностью до двухбайтового слова W. Адрес содержит 12 бит, из них старшие 9 адресуют слово МW, а младшие 3 - слово W в MW.

В курсовом проекте адресуются данные длиной 80 бит. Адресация памяти для заданных форматов приведена на рис.6.1.

При выборке из ОП читается всегда полное слово MW в регистр чтения-записи RGRW [127: 0]. При записи данное должно быть размещено в ОП в соответствии со своим форматом и адресом, поскольку запись полного слова может привести к разрушению информации в соседних полях слова памяти. Для этого память выполнена в виде восьми банков Б7, Б6, Б5, Б4, БЗ, Б2, Б1, БО, которые хранят соответственно двухбайтовые слова W7, W6, W5, W4, WЗ, W2, W1, WО всех слов памяти.

Рис.6.1 Адресация памяти для формата m80real и m64real.

6.2 Блок преобразования форматов

При разработке алгоритмов операции FBLD m80dec описаны основные действия в БПФ. Укрупненная схема БПФ приведена на рис.6.3 Она включает в себя прямой (ППФ) преобразователь форматов, коммутатор прямого (КПП) позиционирования со схемами управления СУПП. Коммутатор управляются сигналами EAR [0: 1]. Преобразователями управляют специальные последовательности микрокодов, вырабатываемые БМУ в зависимости от вида преобразования и его шага, а также от промежуточных результатов преобразования. Управляющий код мультиплексора вырабатывается СУПП в зависимости от формата данного и младших битов адреса.

Рис.6.3 Укрупнённая схема БПФ

Структурная схема блока ППФ для нормализованных чисел приведена на рис 6.4 На один вход сумматора SМ1 подаем из RGRW смещенный порядок Е, а на другой константу 15360. На выходе SМ1 получаем смешенный порядок Е для формата 80геа1 и передаем ее в разряды 78-64 RGD. Разряды мантиссы М из регистра RGRW передаются в старшие разряды регистра сдвига RGS1, а в младшие записываем нули. Осуществляем сдвиг на 1 разряд вправо с занесением “1” в освободившийся разряд. В разряды 63-0 RGD передаем значение с выхода RGS1.

Рис. 6.4 Структурная схема блока ППФ

6.3 Блок регистров

Блок регистров (рис.6.5) включает в себя регистровый стек SТ, регистр тэгов TW, регистр управления CW, регистр состояния SW, регистр первого операнда RG1, схему анализа и модификации TW, CW и SW. ST имеет адресный вход А=ТОР (адресует вершину стека). Чтение из ST происходит по сигналу RD (RG1=ST). Запись в ST происходит по сигналу RW по шине А из регистра результата БОД.

Схема анализа и модификации выполняет проверку и модификацию тэгов, установку битов особых случаев, проверку масок.

Рис.6.5 Структурная схема блока регистров

6.4 Блок обработки данных

Обобщенная схема БОД.

БОД выполняет операцию вычитания над поступающими на его входы операндами. Обобщенная схема БОД приведена на рис.6.6.

В нее входят регистры RG1 и RG2 первого и второго операндов, компаратор СОМР для сравнения операндов с кодами истинного нуля, блок выполнения операций БВО, регистр результата RGB. Константы для сравнения с операндом поступают на компаратор из ПЗУ констант в составе блока микропрограммного управления БМУ. БВО разделяют на схему обработки знаков, блок обработки порядков БОП, блок обработки мантисс БОМ и формирователь признака результата ФПР.

Рис.6.6 Обобщенная структурная схема БОД.

Блок вычитания.

На основании алгоритма операции FISUB m64real (раздел 5.1) разработан блок вычитания. Вариант схемы БВО представлен на рис 6.7.

Регистры операндов RG1 и RG2 и регистр суммы RG3 подразделяются на субрегистры знаков (S1, S2, S3), порядков (E1, E2, E3) и мантисс (М1, М2, М3).

Регистры мантисс расширены до 68 бит для увеличения точности вычислений. Окончательный результат округляется до 64 бит.

Сумматор мантисс SME выполняет операции вычитания (М1-М2) мантисс. Сумматор порядков SME выполняет операции вычитания порядков Е1-Е2, а также передачу Е1 или Е2 на выход SME. Схемы уравнивания порядков нормализации и округления работают в соответствии с алгоритмом, который описан в п.5.1 (этап 2).

Схема обработки знаков определяет действие над мантиссами и знак результата S3 в зависимости от знаков операндов S1, S2 и знака разности мантисс Sm (табл.5.1).

Представим поподробнее блоки обработки знаков и уравнивания порядков. Их структурные схемы представлены на рис.6.8 и рис.6.9.

Рис. 6.8 Обработка знаков.

Рис.6.7 Структурная схема БВО вычитания.

6.5 Блок микропрограммного управления

В состав БМУ (рис.6.9) входят регистр команд RGК, регистр RGМК, схема управления последовательностью микрокоманд УПМ, мультиплексор кода условия МКУ, инвертор кода условия ИКУ, счетчик микрокоманд СМК, преобразователь кода операции ПКОп, мультиплексор адреса МК МУАД, память констант ПЗУК.

ПЗУ МК содержит микропрограммы выполняемых операций. RGМК хранит выбранную микрокоманд (микрокод) на время ее исполнения. В микрокоманде выделяется часть, которая управляет операционными блоками - ОП, БПФ, БР, БОД и часть, которая управляет самим БМУ. В МК, которая управляет БМУ входят следующие поля: СНА - управление адресом следующей МК, СС - определяет проверяемое логическое условие (ЛУ), I - бит инверсии условия, J - бит безусловного перехода, Адр/К - поле адреса или константы, которое содержит адрес следующей МК, адрес ПЗУ констант или небольшую константу К.

МКУ выделяет ЛУ, указанное СС, а ИКУ передает полученное значение X на УПМ с инверсией или без нее в зависимости от бита 1.

ПКОп преобразует код операции в начальный адрес НА микропрограммы этой операции или непосредственно в микрокод.

УПМ управляет мультиплексором адреса МК МУАД в зависимости от полей СНА и J МК и значения условия X.

Рис 6.9 Схема БМУ

Размещено на Allbest.ru


Подобные документы

  • Разработка устройства, реализующего набор команд из числа операций с плавающей точкой семейства процессора i486. Структура сопроцессора FPU. Принцип выполнения операций, разработка блок-схемы, построение структурной схемы основных блоков процессора.

    курсовая работа [734,9 K], добавлен 27.10.2010

  • Операции, осуществляемые при реализации алгоритмов цифровой обработки сигналов. Применение процессора ADSP-2106x для операций с фиксированной и плавающей точкой. Исключения при выполнении операций с плавающей точкой, режимы и границы округления.

    реферат [35,2 K], добавлен 13.11.2009

  • Основные форматы данных и их представление. Запись чисел в формат с плавающей точкой. Вычитание чисел в формате с плавающей точкой. Регистры операндов и результата, размером формата числа с плавающей точкой, двойной точности. Поля смещённого порядка.

    курсовая работа [78,9 K], добавлен 09.09.2014

  • Общее представление о записи данных. Виды регистров и типов данных с плавающей точкой. Модель выполнения программы SIMD. Формат данных в памяти регистра с плавающей точкой. Состояние и управление потоковым разрешением. Поле управления округлением.

    реферат [1,1 M], добавлен 06.01.2011

  • Разработка функциональной схемы операционного автомата микросхемы специализированного процессора, выполняющего заданную арифметическую операцию. Закодированная граф-схема машинного алгоритма. Таблица входов мультиплексора выбора осведомительного сигнала.

    курсовая работа [669,9 K], добавлен 25.07.2013

  • Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.

    учебное пособие [1,1 M], добавлен 09.04.2013

  • Функциональная организация процессора. Сложение с нормализацией, синтез операций, выборка команды. Описание структурной схемы процессора. Синтез управляющего автомата, разметка граф схемы. Разбиение микроопераций по полям и кодирование логических условий.

    курсовая работа [91,8 K], добавлен 24.09.2010

  • Принцип работы процессора, способы его охлаждения, кодовые названия. Шины процессора, разрядность и кэш–память. Технологии расширения и поток команд процессора. Процессорные вентиляторы и их характеристика. Алгоритм и способы разгона процессора.

    реферат [38,0 K], добавлен 21.02.2009

  • Функциональная и структурная организация ЭВМ. Разработка функциональных микропрограмм заданных команд. Их объединение и привязка к структуре операционного автомата процессора. Разработка управляющего автомата процессора с программируемой логикой.

    дипломная работа [4,0 M], добавлен 25.03.2012

  • История развития центрального процессора. Основные проблемы создания многоядерных процессоров. Проектирование микропроцессорной системы на базе процессора Intel 8080. Разработка принципиальной схемы и блок-схемы алгоритма работы микропроцессорной системы.

    курсовая работа [467,6 K], добавлен 11.05.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.