русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Программные прерывания.


Дата добавления: 2015-06-12; просмотров: 550; Нарушение авторских прав


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

INTn (Программное прерывание) вызывает программу обработки, указанную вектором прерываний, заданным в команде. Команда INT может задавать любые типы прерываний. Эта команда используется для поддержки множества типов программных прерываний или для проверки работы сервисных программ обработки прерываний. Сервисные программы обработки прерываний завершаются командой IRET, которая передает управление к команде, следующей за командой INT.

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

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

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



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



<== предыдущая лекция | следующая лекция ==>
Команды управления циклом | Команды работы со строками


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.039 сек.