
- •Московский институт электронной техники
- •Лабораторная работа 1.
- •Краткие теоретические сведения
- •Определение типа э в м.
- •Определение объема оперативной памяти.
- •Определение типа адаптера дисплея.
- •Ревизия периферийных устройств.
- •Домашнее задание.
- •Пример вызывающей программы
- •Управление выводом символов в си
- •Режим графики
- •Определение времени работы программы
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа n4 Методы защиты программ и данных краткие теоретические сведения
- •1. Шифрование путем замены.
- •2. Шифрование путем перестановок.
- •3. Шифрование с помощью ключа.
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа n 5 Отладчик d e b u g. Краткие теоретические сведения
- •Что такое debug
- •Команды debug
- •Некоторые команды ассемблера
- •Небольшие примеры
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа 6 Вывод точечной графики для ega адаптера. Циклы и процедуры в ассемблере. Краткие сведения о видеосистемах ibm pc.
- •Программа на ассемблере
- •Пример программы
- •Порядок выполнения работы
- •Лабораторная работа 7 Генерация звука краткие теоретические сведения
- •Пример программы
- •Домашнее задание
- •Небольшие примеры Создание файла
- •Домашнее задание
- •Порядок выполнения работы
- •Литература
Команды debug
Для запуска программы D e b u g необходимо набрать в командной строке D e b u g, на экране появится приглашение "-" (дефис), в ответ на "?" отладчик выведет список допустимых команд. Кратко рассмотрим работу некоторых из них.
Команда R - позволяет просмотреть все регистры процессора, или
изменить их содержимое:
- RAX
AX = 0000 (старое значение AX)
: 3A7 (новое значение AX)
Команда H - шестнадцатеричная арифметика, например для выполнения операций сложения и вычитания двух чисел ( B + 1 = С и B - 1 = A ) надо ввести команду:
H B 1
000C 000A
Команда Q - выход из отладчика.
Команда A - запись команд ассемблера в ячейки .
-A 100
1234 : 0100 ADD AX, BX (в сотую ячейку помещена команда
сложения регистров AX и BX).
Команда E - ввод данных в память начиная с заданного адреса.
Команда U - листинг ассемблерных программ.
Команда T - пошаговое выполнение прогрммы.
Команда G - выполнение всей программы (начиная с адреса в регистре IP) или до задан-ной команды. Пусть IP = 100, тогда G104 запускает программу с адреса 100 до адреса 104.
Команда N - задает имя программе: N LAB5.COM.
Команда W - запись программы на диск (длина программы в байтах должна быть помещена в CX, регистры AX, BX и DX при этом лучше обнулить).
Некоторые команды ассемблера
MOV AX, BX - переслать число из регистра BX в регистр AX.
MOV AX, 123H - записать в AX число 123 (шестнадцатеричное).
ADD AX, BX - сложить содержимое AX и BX.
SUB AX, BX - вычесть содержимое BX из AX.
MUL BX - умножить содержимое AX на BX (ответ помещается в пару регистров - старшие 16 бит в DX, младшие в AX).
DIV BX - разделить содержимое AX на BX (ответ помещается в пару регистров - целое в AX, а остаток в DX).
INT N - выполнить прерывание N.
Небольшие примеры
1. MOV DX, 41H ;поместим в DX код буквы A
MOV AH, 02H ;поместим в AH номер функции вывода символа на экран)
INT 21 ;прерывание для вывода
INT 20 ;возврат в D e b u g
После выполнения этой программы на экране появится символ A.
2. MOV AH, 09H ;запишем в AH 09 - номер функции вывода строки символов на экран
MOV DX, 0200 ;в DX поместим адрес начала строки
INT 21 ;прерывание для вывода
INT 20 ;возврат в D e b u g
Строка будет печаться до знака $ (доллар). ASCII-код этого символа - 24H. Код символов выводимой строки можно поместить в память командрой E200 (при этом данные будут записы-ваться в память начиная с адреса 200).
Домашнее задание
Составить краткий конспект лабораторной работы.
Найдите в литературе коды символов, необходимых в работе и запишите их в конспект.
Дополнение: Много интересного вы можете найти в книгах П.Нортона:
1. Язык ассемблера для IBM PC.
2. Персональный компьютер фирмы IBM и OC MS-DOS.