
- •Московский институт электронной техники
- •Лабораторная работа 1.
- •Краткие теоретические сведения
- •Определение типа э в м.
- •Определение объема оперативной памяти.
- •Определение типа адаптера дисплея.
- •Ревизия периферийных устройств.
- •Домашнее задание.
- •Пример вызывающей программы
- •Управление выводом символов в си
- •Режим графики
- •Определение времени работы программы
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа n4 Методы защиты программ и данных краткие теоретические сведения
- •1. Шифрование путем замены.
- •2. Шифрование путем перестановок.
- •3. Шифрование с помощью ключа.
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа n 5 Отладчик d e b u g. Краткие теоретические сведения
- •Что такое debug
- •Команды debug
- •Некоторые команды ассемблера
- •Небольшие примеры
- •Домашнее задание
- •Порядок выполнения работы
- •Лабораторная работа 6 Вывод точечной графики для ega адаптера. Циклы и процедуры в ассемблере. Краткие сведения о видеосистемах ibm pc.
- •Программа на ассемблере
- •Пример программы
- •Порядок выполнения работы
- •Лабораторная работа 7 Генерация звука краткие теоретические сведения
- •Пример программы
- •Домашнее задание
- •Небольшие примеры Создание файла
- •Домашнее задание
- •Порядок выполнения работы
- •Литература
Пример вызывающей программы
#include <stdio.h>
#include <process.h>
#include <errno.h>
void main()
{
char *fan_name;
a: printf("\Введите имя программы;");
scanf("%s",fan_name);
if (*fan_name=='quit') exit(0);
system(fan_name);
perror("\n Код ошибки в вызываемой программе");
goto a;
}
ДОМАШНЕЕ ЗАДАНИЕ
1. Написать программу вычисления одной из функций: sin(x), cos(x), x2 ( в виде самос-тоятельной ЕХЕ-программы).
2. Написать программу, которая могла бы вызывать Вашу программу и команды DOS, а также осуществлять возврат в DOS используя меню:
ВЫБОР ПРОГРАММЫ:
1 - sin(x)
2 - cos(x)
3 - произвольная программа
4 - возврат в DOS.
Обратите внимание на необходимость “обнуления” имени вызываемой программы при повторном вызове с использованием функции system.
ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
1. Получить у преподавателя допуск на лабораторную работу.
2. Отладить программы на ЭВМ.
3. С помощью команды DOS mem/c (mem/c/p) исследовать распределение памяти ЭВМ после запуска различных программ.
ЛАБОРАТОРНАЯ РАБОТА 3
Методы вывода информации на терминал в MS DOS
(IBM PC/AT с EGA)
КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
В лабораторной работе N1 мы рассматривали вопрос о том, как можно определить тип адаптера дисплея и объема видеобуфера. В настоящей работе описываются различные режимы вывода для EGA. Адаптер EGA может быть снабжен 64К6, 128К, 256К памяти. Кроме исполь-зования в качестве видеобуфера, эта память может также хранить до1К задаваемых символов. Стартовый адрес буфера дисплея программируемый, поэтому буфер начинается с адреса A000H для улучшенных графических режимов и с B000H и B800H для совместимости со стандартным монохромным и цветным графическим режимами.
Доступное число страниц зависит как от режима экрана, так и от количества имеющейся памяти. EGA имеет ПЗУ на 16К, которое расширяет процедуры работы с терминалом BIOS.
В текстовом режиме буфер начинается с данных верхней строки экрана от левого угла. Дальнейшие данные переносятся с правого конца одной строки на левый конец следующей, как будто экран представлен одной длинной строкой. В графическом режиме буфер может быть разделен на 2 или 4 части. У EGA каждая часть буфера содержит один бит из двух или четырех, которые описывают цвет данной точки экрана.
При выводе текста различные видеосистемы работают одинаково. Для экрана (25 строк по 80 символов) отводится 4000 байт (по 2 байта накаждый символ). Первый (четный) байт содержит код ASCII, который аппаратно преобразуется в связанный с ним символ и посыла-ется на экран. Второй (нечетный) байт содержит атрибуты. Это информация о том, как должен быть выведен символ.
Структура байта атрибутов:
( 0-1-2 ) - код цвета символа;
3 - бит интенсивности;
( 4-5-6 ) - код цвета фона знакоместа;
7 - 0 (мигание - 1).
Коды цветов:
0 - черный;
1 - синий;
2 - зеленый;
3 - циан (голубой);
4 - красный;
5 - магента;
6 - коричневый (с битом интенсивности - желтый);
7 - белый.