Монітор, також монітор машинних кодів — комп'ютерна програма, що дозволяє користувачеві вводити команди, які показують або модифікують значення комірок пам'яті, а також інші команди, пов'язані з низькорівневим вводом-виводом або налагоджуванням. Деякі монітори дозволяють покрокове трасування бінарної програми, мають вбудований дизасемблер, а деякі навіть примітивний текстовий редактор і/або асемблер.
Програми-монітори були популярними у еру домашніх комп'ютерів 1970-1980-х років. Як правило, вони записувалися у постійний запам'ятовувач, тобто були завжди «резидентними» (доступними у адресному просторі мікропроцесора) — звідси ще одна назва «резидентний монітор».
Налагоджування і зневадження програм, як правило, здійснювалося встановленням точок зупину (якщо процесор дозволяв таку інструкцію) і запуском програми. При досягненні точки зупинки відбувався перехід до інтерактивного монітора, який дозволяв побачити стан програми, регістрів, стеку, ділянок пам'яті.
З розвитком , розповсюдженням дискет і все ширшим використанням мов програмування високого рівня (і, як наслідок, зменшенням частки програм, що розроблялися повністю на мові асемблера) програми-монітори поступово почали поступатися іншим інструментальним засобам.
Приклад
Резидентний монітор любительського комп'ютера Радіо 86РК мав розмір близько 2 кілобайт і записувався у мікросхему постійного запам'ятовувача. Адреси мікросхеми у адресному просторі процесора КР580ВМ80 були . Монітор імплементував наступні команди для інтерактивної роботи: D (dump): дамп ділянки пам'яті (шістнадцяткові коди) L (list): показ вмісту пам'яті у алфавітно-цифровому вигляді () M (modify): ручний ввід даних (шістнадцяткових кодів) у пам'ять F (fill): заповнення пам'яті константою T: копіювання ділянки пам'яті за іншою адресою C (compare): порівняння ділянок пам'яті S (search): пошук коду у пам'яті G (go): запуск програми X: перегляд і/або зміна значень регістрів процесора O (output): виведення блоку даних на магнітофон I (input): введення блоку даних з магнітофона R (read): читання даних з зовнішньої мікросхеми постійної пам'яті U: команда виклику майбутніх «розширень» монітора
Джерела