Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
spr_gos.doc
Скачиваний:
12
Добавлен:
01.05.2025
Размер:
1 Мб
Скачать
☆

4.Алгоритмы визуализации: отсечения, развертки, удаления невидимых линий и поверхностей, закраски и т.Д. (Продолжение).

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

Можно выделить 4 случая взаимного расположения окна и мно­гоугольника:

1. Многоугольник целиком вне окна - все многоугольники сцены — внешние по отношению к окну. В этом случае окно закра­шивается фоном.

2. Многоугольник целиком внутри окна - имеется всего один внутренний или пересекающий многоугольник. В этом случае все окно закрашивается фоном и затем часть окна, соответст­вующая внутреннему или пересекающему окну, закрашивает­ся цветом многоугольника.

3. Многоугольник пересекает окно — имеется единственный ох­ватывающий многоугольник. В этом случае окно закрашива­ется его цветом.

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

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

13.Организация памяти эвм; основные стадии выполнения команды; организация прерываний в эвм.

Организация обработки прерываний в ЭВМ

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

Механизм прерывания обеспечивается соответствующими аппаратно-программными средствами компьютера.

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

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

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

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

Аппаратные прерывания используются для организации взаимодействия с внешними устройствами. Запросы аппаратных прерываний поступают на специальные входы микропроцессора. Они бывают:

маскируемые, которые могут быть замаскированы программными средствами компьютера;

немаскируемые, запрос от которых таким образом замаскирован быть не может. (есть продолжение)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]