
- •Алгоритм, программа, операция, команда, адрес
- •Многоуровневая организация эвм
- •Аппаратные и программные средства вт.
- •Принципы построения систем управления с эвм.
- •Назначение и организация памяти эвм.
- •И ерарх.Организация и сравнительные характеристики устройств памяти.
- •Память эвм. Оверлей. Управление оверлеями.
- •Классификация бис памяти
- •Принципы организации записи и чтения информации на внешних запоминающих устройствах.
- •Принцип программного и микропрограммного управления
- •Система команд процессора эвм.
- •Принудительная адресация микрокоманд. Применение.
- •Процессор с программным и микропрограммным управлением.
- •Функции и структура операционного устройства
- •Программа отладчик. Процесс отладки. Дисассемблер.
- •Программирование арифметико-логических устройств.
- •Организация алу с фиксированной запятой
- •Выполнение операций с плавающей запятой.
- •Логические операции.
- •Иерархическая структура организации цикла команда. Алгоритм выполнения машинного цикла
- •Архитектура микропроцессора
- •Микропроцессоры с фиксированной разрядностью и списком команд.
- •Микро-эвм
- •Мп с сокращенным набором команд
- •Операция ввода-вывода: программный обмен, обмен по прерыванию, системы прерываний, прямой доступ к памяти.
- •Роль прерываний в организации систем реального времени
- •Внешние устройства (всё что нашёл вообще)
- •Организация управления памятью
- •Управление процессом выполнения программы
- •Принципы построения и работы трех типов трансляторов: ассемблеров, компиляторов, интерпретаторов
- •Понятие о назначении, составе и порядке использования средств отладки и редактирования пользовательских программ.
- •Файловые вирусы в ms dos. Бутовые (загрузочные) вирусы. Другие вирусы.
- •Антивирусные технологии
- •Защита программ
- •Защита локалки
- •Трансляторы ассемблера
- •Структура ассемблера, адресное пространство.
- •При программировании на языке ассемблера используются данные следующих типов:
Понятие о назначении, составе и порядке использования средств отладки и редактирования пользовательских программ.
Отла́дка — этап разработки компьютерной программы, на котором обнаруживают, локализуют и устраняют ошибки. Чтобы понять, где возникла ошибка, приходится :
узнавать текущие значения переменных;
выяснять, по какому пути выполнялась программа.
Существуют две взаимодополняющие технологии отладки.
Использование отладчиков — программ, которые включают в себя пользовательский интерфейс для пошагового выполнения программы: оператор за оператором, функция за функцией, с остановками на некоторых строках исходного кода или при достижении определённого условия.
Вывод текущего состояния программы с помощью расположенных в критических точках программы операторов вывода — на экран, принтер, громкоговоритель или в файл. Вывод отладочных сведений в файл называется журналированием.
Типичный цикл разработки, за время жизни программы многократно повторяющийся, выглядит примерно так:
Программирование — внесение в программу новой функциональности, исправление ошибок в имеющейся.
Тестирование (ручное или автоматизированное; программистом, тестером или пользователем; «дымовое», в режимечёрного ящика или модульное…) — обнаружение факта ошибки.
Воспроизведение ошибки — выяснение условий, при которых ошибка случается. Это может оказаться непростой задачей при программировании параллельных процессов и при некоторых необычных ошибках, известных как гейзенбаги.
Отладка — обнаружение причины ошибки.
Способности программиста к отладке — это, по-видимому, важнейший фактор в обнаружении источника проблемы, но сложность отладки сильно зависит от используемого языка программирования и инструментов, в частности, отладчиков.
Отладчик представляет из себя программный инструмент, позволяющий программисту наблюдать за выполнением исследуемой программы, останавливать и перезапускать её, прогонять в замедленном темпе, изменять значения в памяти и даже, в некоторых случаях, возвращать назад по времени.
Также полезными инструментами в руках программиста могут оказаться:
Профилировщики. Они позволят определить сколько времени выполняется тот или иной участок кода, а анализ покрытияпозволит выявить неисполняемые участки кода.
API логгеры позволяют программисту отследить взаимодействие программы и Windows API при помощи записи сообщений Windows в лог.
Дизассемблеры позволят программисту посмотреть ассемблерный код исполняемого файла
Снифферы помогут программисту проследить сетевой трафик генерируемой программой
Снифферы аппаратных интерфейсов позволят увидеть данные которыми обменивается система и устройство.
Логи системы.
Использование языков программирования высокого уровня, таких как Java, обычно упрощает отладку, поскольку содержат такие средства как обработка исключений, сильно облегчающие поиск источника проблемы. В некоторых низкоуровневых языках, таких как ассемблер, ошибки могут приводить к незаметным проблемам — например, повреждениям памяти илиутечкам памяти, и бывает довольно трудно определить что стало первоначальной причиной ошибки. В этих случаях, могут потребоваться изощрённые приёмы и средства отладки.