
- •10.09.2012 — Лекция №1
- •12.09.2012 — Лекция №2
- •17.09.2012 — Лекция №3
- •23.09.2012 — Лекция №4
- •26.09.2012 — Лекция №5
- •1.10.2012 — Лекция №6
- •08.10.2012 — Лекция №7
- •08.10.2012 — Лекция №8
- •22.10.2012 — Лекция №10
- •24.10.2012 — Лекция №11
- •Команды микропроцессора x086.
- •03.12.2012 — Лекция №19
- •10.12.2012 — Лекция №21
- •17.12.2012 — Лекция №22
- •19.12.2012 — Лекция №23
03.12.2012 — Лекция №19
На первый взгляд кажется, что округления не возникает.
Операция округления - это процесс установления значения последней сохраняемой цифры после записи ее меньшим чем в исходном представлении числом разрядов.
Округление бывает 2х видов:
1. путем усечения - округления путем отбрасывания младших неиспользуемых разрядов, при этом погрешность округления раняется единице первого сохраняемого младшего разряда.
2. путем симметриченого округления - округления с учетом значения последней отбрасываемой цифры после сохраняемого разряда, при этом максимальная погрешность симметричного округления равна половине младшего сохраняемого разряда. В ЭВМ этот алгоритм реализуется следующим образом: отбрасываемый бит сохраняется в бите переноса регистра признаков/флагов и затем выполняется операция сложения этого бита переноса с округляемым числом.
При обработке чисел с плавающей точкой приведенная погрешность вычисляется путем деления на минимальное число данного порядка. Т.о. при усечении приведенная погрешность с плавающей точкой будет равна 1.0*2^(-n), где n - младший сохраняемый разряд после округления. Т.о. погрешность округления чисел с плавающей точкой не зависит от величины числа, а зависит только от порядка числа.
При сложении целых чисел погрешность при округдении не возниакет, а при сложении чисел с плавающей точкой требуется операция денормализации мантисы, что всегда приводит к необходимости операции округления, а следовательно к возникновению дополнительной погрешности. Погрешность алгоритмов можно оценивать аналитическим способом, т.е. последовательно анализируя погрешность от каждой операции. [пример] при операции сложения и вычитания максимальные погрешности операндов складываются по модулю. Получается максимальная результирующая погрешность. Для операции умножения погрешность вычисляется более сложным алгоритмом {формула}. Погрешность операции деления: {формула}. Погрешность от деления существенно возрастает при малых значениях делителя.
Если алгоритмы более сложные, то применяется разложение функции в ряд Тейлора и обычно используют два первых чления разложения (линейные функции). Однако применять разложение в ряд Тейлора надо с осторожностью, т.к. оценка оценки погрешности существенно зависит от формы функции, т.к. используя только первые 2 члена ряда и отбрасывая все остальные часто забывают про это и считают, что оценка погрешности точная
05.12.12 — Лекция №20
Применение разложения в ряд Тейлора - самый универсальный аналитический способ нахождения погрешности для любых дифференцируемых функций. Обычно в алгоритмах имеется несколько переменных, поэтому необходимо найти результирующую максимальную погрешность результата вычисления. от всех переменных и констант, имеющих свои погрешности. В таком случае используется разложение в ряд Тейлора с применением аппарата частных производных. Таким образом, например {пример} f(x,y)=/x=a, y=b/=f(a,b)+d[f(x,y)]/dx * (x-a) + d[f(x,y)]/dy * (y-b). Т.о. получаем погрешность ... Благодаря этому можно вычислить погрешность от операции деления
{ОПЕРАЦИЯ}
Аналитический метод используется для научных исследований для доказательства какой-либо теории. На практике же аналитические методы не применяются, т.к. они очень сложные и трудоемкие и при этом функции могут быть и не дифференцируемые. На практике применяются методы последовательного перебора путем моделирования работы функции на более мощной/точной ЭВМ, т.е. все алгоритмы задаются с двойной точностью по сравнению с реальной ЭВМ, на кторой будет использоваться алгоритм и полученные значения используются как эталонные для вычисления погрешности реального алгоритма. Основной недостаток такого подхода в том, что непонятно, как выбирать шаг дескритизации для переменных.
Если число вычислений очень большое для анализа погрешностей очень большое для анализа погрешностей алгоритма и все возможные комбинации переменных невозможно учесть, используют метод Монте-Карло: запускают генератор случайных чисел и все переменные в алгоритме задаются случайным образом со случайной погрешностью и погрешность результата оценивается аналогично предыдущему способу, при чем продолжительность вычислений можно прекратить, если результать погрешности стабилизирует свои параметр.
Неточность сложных алгоритмов обычно объясняется конечностью числа итерационных циклов, т.к любая система управления работает в реальном времени, то бесконечно увеличивать число итерационных циклов невозможно, поэтому ограничиваются продолжительностью алгоритма, который гарантирует приемлимую точность вычислений.
Устройства управления ЭВМ.
УУ предназначены для синхронизации всех блоков ЭВМ и внешних устройств.
Функции:
Принимать сигнал «сброс» и приводить все устройства ЭВМ в исходные для работы состояния. Поэтому все устройства, имеющие элементы памяти, требуют начальной инициализации (сброс).
Считывать состояние программного счетчикак (обычно 0 после сброса). Код первой команды, находящийся по указанному адресу, считывается в регистр команд. В регистре команд код команды сохраняется в процессе ее выполнения и поступает на дешифратор команд, который определяет тип команды и запускает датчик управляющих сигналов, который подает нужные сигналы для выполнения этой командысоответствующим блоком ЭВМ. К содержимому программного счетчика прибавляется 1 и работа ЭВМ продолжается со считывания следующей команды из сегмента кода и до бесконечности до отключения питания.
Реализует работу ЭВМ в пошаговом режиме для отладки программ, в цикличесском режиме для применения готовых подпрограмм, и в автономном режиме, когда постоянно выполняют какую-либо программу.
Существуют 2 принципа управления:
Схемное (аппаратное) — жесткая логика
микропрограммное — гибкая логика
Схемное управление ЭВМ
УУ реализуется в виде набора комбинации схем и регистров для временного хранения информации. Каждая команда реализуется на основе последовательности микрокоманд и микроопераций, которые реализованы в УУ в процессе изготовления ЭВМ и не могут быть изменены пользователем.
Схемное управление может быть реализовано 3 способами:
Центральное
Индивидуальное
Смешанное
В большинстве современных ЭВМ малой и средней производительности реализован схемный принцип управления как наиболее простой и надежный. В центральной схеме управления (ЦСУ) при этом в составе УУ имеется один центральный датчик управляющих сигналов, который управляет всеми блоками ЭВМ
РИСУНОК
ЗУком — запоминающее устройство команд
РК — регистр команд
ДШК — дешифратор команд
ЦДУС — центральный датчик управляющих сигналов
РИ — распределитель управляющих импульсов
ЦД управляющих сигналов способен реализовать функции для выполнения любой команды ЭВМ, как самой простой, так и самой сложной. Поэтому ЦСУ требует минимальных аппаратных затрат и постоянства коммандного цикла работы в ЭВМ, что очень удобно для синхронизации работы с другими устройствам. Основной недостаток ЦСУ: низкая эффективность работы ЭВМ, т.к командный цикл рассчитан на выполнение самой длинной команды; если встречается более короткая команда, ЭВМ простаивает, ожидая окончание цикла.