| 
 Выполнение или отладка 
на конкретном персональном компьютере (ПК) программ с обращениями к внешним устройствам, 
составленных для какого-либо иного ПК, не всегда возможна в полном объеме. Команды обращения к 
внешним устройствам IN и OUT требуют для своего 
выполнения указания абсолютных адресов 
портов ввода-вывода,
а любой ПК сам использует большое количество таких адресов для своих внешних 
устройств и собственных плат расширения. Адреса портов ввода-вывода, используемые в 
проектируемой системе, могут совпасть с адресами портов ПК, на которой предполагается отладка 
программы. При попытке непосредственного запуска программы в лучшем случае данные командой 
OUT могут быть отправлены в "никуда" - по адресу несуществующего 
устройства, или, в такой же ситуации, вместо каких-либо данных по команде 
IN будут приняты одни "1". В худшем случае может произойти обращение по 
адресу реального внешнего устройства ПК, последствия чего предсказать невозможно.
  Отладка программ с обращениям к 
портам ввода-вывода может быть выполнена при замене в программе команд обращения к внешним 
устройствам командами обращения к памяти. При этом сам пользователь сможет следить за 
изменением содержимого регистров внешнего устройства путем наблюдения за переменными - 
ячейками памяти, которые поставлены в соответствие некоторым адресам портов ввода-вывода. 
Пользователь как бы становится моделью внешнего устройства, он может задавать начальные 
значения портов ввода-вывода, менять их значения в процессе отладки (но не исполнения 
программы), ставить точки останова в зависимости от значений содержимого портов и просматривать 
их значения в процессе отладки. При простоте этого решения полностью изменяется внешний вид 
программы, соответственно изменяется и объем программы. | 
 | 
Назначение системы
 Макроопределения
 Подготовка программы
 Описание портов ВУ
 Отладка программы
 Обращения к ВУ |