Файл: Методические указания к практическим работам по дисциплине Вычислительные системы и сети Специальность 5В070200 Автоматизация и управление.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 29.04.2024

Просмотров: 42

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Практическая работа№1

Представление информации в вычислительных комплексах

1.1 Двоичные числа

1.2 Шестнадцатеричные числа В то время как процессор и другие устройства ЭВМ используют только двоичное представление информации, такое представление очень неудобно для человека, который анализирует содержимое памяти ЭВМ. Введение шестнадцатеричных чисел значительно облегчает эту задачу. Допустим, что мы хотим проанализировать содержимое четырех последовательных байтов (двух слов). Разделим мысленно каждый байт пополам и запишем для каждого полубайта соответствующее десятичное значение:0101 1001 0011 0101 1011 1001 1100 11105 9 3 5 11 9 12 14Чтобы не использовать для некоторых полубайтов две десятичные цифры, рассмотрим систему счисления: 10 = А, 11 = В, 12 = С, 13 = D, 14 = E, 15 = F. Теперь содержимое тех же самых четырех байтов выглядит более удобно:59 35 В9 СЕТакая система счисления включает «цифры» от 0 до F и так как таких цифр 16, то она называется шестнадцатеричной. На рисунке 5 приведено соответствие между двоичными, десятичными и шестнадцатеричными числами от 0 до 15(10).Двоичн. Десят. Шестн. Двоичн. Десят. Шестн.0000 0 0 1000 8 80001 1 1 1001 9 90010 2 2 1010 10 А0011 3 3 1011 11 В0100 4 4 1100 12 С0101 5 5 1101 13 D0110 6 6 1110 14 Е0111 7 7 1111 15 FРисунок 5 - Соответствие между двоичными, десятичными и шестнадцатеричными числамиПодобно двоичным и десятичным цифрам каждая шестнадцатеричная цифра имеет вес, кратный основанию счисления. Таким образом, каждая цифра имеет вес в 16 раз больше, чем соседняя справа цифра. Крайняя правая цифра имеет вес 160 = 1, следующая 161 = 16, 162 = 256, 163 = 4096, 164 = 65536.Например, шестнадцатеричное число 3АF имеет десятичное значение:(3  162) + (А  161) + (F  160) = (3  256) + (10  16) + (15  1) = 943Для обозначения шестнадцатеричного числа часто используют букву Н (или h), например: 3AFh. Над шестнадцатеричными числами можно выполнять арифметические операции подобно тому, как они выполняются над десятичными числами. Например, найдем сумму 6Аh и B5h: 6A+B5 _ В5 6А 4В 11F Разность В5 – 6А: 1.3 Представление текстовой информации Текст состоит из символов, поэтому символ можно считать минимальным элементом текста. Если собрать все возможные символы, которые могут встретиться в тексте: латинские буквы, буквы кириллицы, знаки препинания и т.д., и каждому из этих символов присвоить свой уникальный номер (называемый кодом символа), то текст можно записать в виде набора чисел. С помощью 8 бит можно закодировать 256 различных символов. Этого хватит, чтобы закодировать различными комбинациями бит буквы латинского алфавита и кириллицы, как строчные, так и заглавные, знаки препинания, цифры, символы арифметических действий и некоторые другие распространенные символы, такие как «$» или «&». Комбинация из восьми бит получила свое собственное название – байт. Так как коды символам можно присвоить по-разному, для того, чтобы не было путаницы, было решено ввести стандарт кодирования символов. Для английского языка такой стандарт существует, он называется ASCII (AmericanStandardCodeforInformationInterchange – стандартный американский код для информационного обмена). С кодированием русских букв дела обстоят хуже. В настоящее время применяется как минимум три различные кодировки символов кириллицы: Win-1251, КОИ-8 и CP866. Если русский текст записан в одной кодировке, а Вы пытаетесь просмотреть его, используя другую кодировку, то получите совершенно нечитаемый набор букв или символов. Решить такую проблему можно с помощью специальных программ, переводящих текст из одной кодировки в другую.В ASCII закреплены две таблицы кодирования: базовая и расширенная. В базовой таблице определены значения кодов с 0 по 127, а в расширенной – с 128 по 255. В базовой таблице находятся буквы латинского алфавита, цифры, математические знаки и знаки препинания. Кроме того, за кодами с 0 по 31 закреплены специальные управляющие символы: перевод строки, возврат каретки и т.д. Расширенная таблица ASCII содержит буквы западноевропейских языков и так называемые символы псевдографики, с помощью которых можно, например, рисовать таблицы.В кодировки русского языка расширенная таблица изменена. В таблице 1 и таблице 2 приведены базовая таблица ASCII-символов и кодировка CP866, используемая в операционной системе MS-DOS. В течение долгого времени понятия «байт» и «символ» были почти синонимами. Однако, в конце концов, стало ясно, что 256 различных символов – это не так много. Математикам требуется использовать в формулах специальные математические знаки, переводчикам необходимо создавать тексты, где могут встретиться символы из различных алфавитов, экономистам необходимы символы валют ($,£,¥). Для удовлетворения нужд всех людей 256 символов явно недостаточно. Для решения этой проблемы была разработана универсальная система кодирования текстовой информации – Unicode. В этой кодировке каждый символ кодируется не одним, а двумя байтами. Таким образом, доступно не 256, а 216=65536 различных кодов. Этого количества хватает на латинский алфавит, кириллицу, иврит, различные африканские и азиатские языки, в том числе наиболее часто употребляющиеся китайские иероглифы, различные специализированные символы, в том числе математические, экономические, технические и многие другие. Кроме этого, часть кодов даже осталась неиспользованной. Главный недостаток Unicode состоит в том, что все тексты в этой кодировке становятся в два раза длиннее.Таблица 1Базовая таблица ASCII 32 пробел 48 0 64 @ 80 P 96 ` 112 P 33 ! 49 1 65 A 81 Q 97 a 113 Q 34 « 50 2 66 B 82 R 98 b 114 R 35 # 51 3 67 C 83 S 99 c 115 S 36 $ 52 4 68 D 84 T 100 d 116 T 37 % 53 5 69 E 85 U 101 e 117 U 38 & 54 6 70 F 86 V 102 f 118 V 39 ' 55 7 71 G 87 W 103 g 119 W 40 ( 56 8 72 H 88 X 104 h 120 X 41 ) 57 9 73 I 89 Y 105 i 121 Y 42 * 58 : 74 J 90 Z 106 j 122 Z 43 + 59 ; 75 K 91 [ 107 k 123 { 44 , 60 < 76 L 92 \ 108 l 124 | 45 - 61 = 77 M 93 ] 109 m 125 } 46 . 62 > 78 N 94 ^ 110 n 126 Таблица 2Кодировка CP866 (DOS)

1.4 Представление звуковой информации

Практическая работа№2

Память. Конвейерная и многопроцессорная обработка информации в ЭВМ

Практическая работа№3

Принципы систолической обработки информации

Операция поиска вхождений с помощью линейной систолической структуры

Операция умножения квадратных матриц с помощью прямоугольной систолической матрицы.

Практическая работа№4

Получение информации о сетевых настройках локального компьютера

Практическая работа№5

Тестирование сети TCP/IP

Практическая работа№6

Использование основных команд протокола TCP/IP, применяемых в ОС Windows

Практическая работа№7

Использование утилит ping и tracert

8. Оформить отчет по лабораторной работе.

Практическая работа№8

Организация файлового обмена в сетях Microsoft Windows

Практическая работа№9

Доступ к удаленному компьютеру по протоколу telnet

Практическая работа№10

Установка и настройка Веб-сервера Apache под Windows.

Практическая работа№11

Практическая работа№12

Разработка локальной вычислительной сети

Практическая работа№2

Память. Конвейерная и многопроцессорная обработка информации в ЭВМ



Краткая теория
Память. Важнейшими характеристиками отдельных устройств памяти являются емкость памяти, удельная емкость, время доступа.

Емкость памяти определяется максимальным количеством данных, которые могут в ней храниться. Емкость измеряется в двоичных единицах (битах), машинных словах, но большей частью в байтах.

Время доступа к памяти – время, которое занимает установка адреса на адресной шине и считывание данных с шины данных.

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

Таким образом, время доступа к памяти при считывании определяется по формуле

tобр_с = tдост_с + tсчит + tрег,

где tдост_с - промежуток времени между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации;

tсчит - продолжительность самого физического процесса считывания;

tрег - время, затрачиваемое на регенерацию информации (равно нулю для ЗУ, которым регенерация не требуется).

Время доступа при записи определяется по формуле

tобр_з = tдост_з + tподг + tзап,

где tдост_з - промежуток времени между моментом начала операции записи и моментом, когда становится возможным доступ к запоминающим элементам;

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

tзап - время занесения информации.

В качестве продолжительности цикла обращения к памяти принимается величина.

tобр = max(tобр_с, tобр_з).

Простейшая организация конвейера
. Выполнение типичной команды в конвейерной систем можно разделить на следующие этапы:

• выборка команды – IF (по адресу, заданному счетчиком команд, из памяти извлекается команда);

• декодирование команды/выборка операндов из регистров – ID;

• выполнение операции/вычисление эффективного адреса памяти – EX;

• обращение к памяти – MEM;

• запоминание результата – WB.

Чтобы конвейеризовать выполнение программы, мы можем просто разбить выполнение команд на указанные выше этапы, отведя для выполнения каждого этапа один такт синхронизации, и начинать в каждом такте выполнение новой команды. Естественно, для хранения промежуточных результатов каждого этапа необходимо использовать регистровые станции. Хотя общее время выполнения одной команды в таком конвейере будет составлять пять тактов, в каждом такте аппаратура будет выполнять в совмещенном режиме пять различных команд.

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

Диаграмма работы простейшего конвейера

Номер команды

Номер такта

1

2

3

4

5

6

7

8

9

Команда i

IF

ID

EX

MEM

WB













Команда i+1




IF

ID

EX

MEM

WB










Команда i+2







IF

ID

EX

MEM

WB







Команда i+3










IF

ID

EX

MEM

WB




Команда i+4













IF

ID

EX

MEM

WB



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

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

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

tср = t i max + tнс

где t i max – максимальная длительность этапа выполнения операции

tнс - накладные расходы времени на организация конвейера.

А определение времени выполнения программы зависит от числа команд программы, количества этапов выполнения операций и среднего времени.

Многопроцессорная обработка в ЭВМ. При организации вычислений в многопроцессорной системе осуществляется преобразование входной переменной (сигнала). Вычисление можно одновременно выполнить на N процессорах. Процессор Рi в исходном состоянии получает на вход одно из значений х и в конце вычисления выдает значение Аi. Если рассматривать процесс вычислений в виде графа, то горизонтальные пути на графе будут соответствовать обработке внутри процессора, а промежуточные вершины — промежуточным этапам вычисления. Остальные дуги графа будут определять межпроцессорные обмены. На каждом этапе вычисления число обменов равно
N. Результаты, полученные на любом этапе, нужны только для следующего этапа.

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

Обмены информа­цией между процессорами достигают большого значения, что может привести к малой эффективности многопроцессорной обработки. Поэтому выгоднее распараллеливать обработку данных более крупными блоками. За счет наличия в блоках операций самого различного характера появляется возможность наиболее полного использования процессоров.

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

Задание

1. Определите время доступа к памяти при считывании, записи и продолжительность обращения к памяти.


Вариант№ 1

Если время между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации tдост_с = 25 нс, время считывания tсчит = 80 нс, время регенерации tрег = 2 нс., tдост.з. = 10 нс, tподг. = 5 нс, tзап = 30 нс

Вариант№ 2

Если время между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации tдост_с = 15 нс, время считывания tсчит = 60 нс, время регенерации tрег = 3 нс. tдост.з. = 3 нс, tподг. = 2 нс, tзап = 2 нс

Вариант№ 3

Если время между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации tдост_с = 60 нс, время считывания tсчит = 150 нс, время регенерации tрег = 8 нс. tдост.з. = 25 нс, tподг. = 15нс, tзап = 60 нс

Вариант№ 4

Если время между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации tдост_с = 35 нс, время считывания tсчит = 100 нс, время регенерации tрег = 6 нс. tдост.з. = 8 нс, tподг. = 4 нс, tзап = 15 нс

Вариант№ 5

Если время между моментом начала операции считывания и моментом, когда становится возможным доступ к данной единице информации tдост_с = 10 нс, время считывания tсчит = 20 нс, время регенерации tрег = 4 нс. tдост.з. = 3 нс, tподг. = 1 нс, tзап = 7 нс


2. Определить, за какое время Т будет выполнена программа в конвейерной машине.


Вариант№ 1

Если программа состоит из 20 команд, на конвейерной машине с пятью этапами выполнения операций, которые имеют длительности ti, равные 20, 40, 60, 50, 70 нс соответственно, если накладные расходы на организацию конвейера составляют tнс = 5 нс

Вариант№ 2

Если программа состоит из 100 команд, на конвейерной машине с четырьмя этапами выполнения операций, которые имеют длительности ti, равные 50, 50, 50, 50 нс соответственно, если накладные расходы на организацию конвейера составляют tнс = 10 нс.

Вариант№ 3

Если программа состоит из 70 команд, на конвейерной машине с шестью этапами выполнения операций, которые имеют длительности ti, равные 60, 60, 40, 40, 60, 50 нс соответственно, если накладные расходы на организацию конвейера составляют tнс = 5 нс

Вариант№ 4

Если программа состоит из 60 команд, на конвейерной машине с пятью этапами выполнения операций, которые имеют длительности ti, равные 30, 40, 50, 30, 50 нс соответственно, если накладные расходы на организацию конвейера составляют tнс = 5 нс.

Вариант№ 5

Если программа состоит из 25 команд, на конвейерной машине с шестью этапами выполнения операций, которые имеют длительности ti, равные 70, 50, 50, 40, 40, 40 нс соответственно, если накладные расходы на организацию конвейера составляют tнс = 20 нс.


3. Определите среднее время выполнения программы в неконвейерной машине.


Вариант№ 1

Неконвейерная машина с пятью этапами выполнения операций, которые имеют длительность 50, 50, 60, 50 и 50 нс.

Вариант№ 2

Неконвейерная машина с пятью этапами выполнения операций, которые имеют длительность 80, 60, 50, 70 и 65 нс.

Вариант№ 3

Неконвейерная машина с четырьмя этапами выполнения операций, которые имеют длительность 30, 40, 45, 35 нс.

Вариант№ 4

Неконвейерная машина с шестью этапами выполнения операций, которые имеют длительность 50, 60, 55, 70, 65 и 80 нс.

Вариант№ 5

Неконвейерная машина с пятью этапами выполнения операций, которые имеют длительность 30, 40, 50, 35 и 55 нс.