Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб раб 1 асмс.doc
Скачиваний:
3
Добавлен:
29.07.2019
Размер:
65.54 Кб
Скачать

Лабораторная работа №1

Вывод текста на экран средствами DOS

Ввод с клавиатуры средствами DOS

Основы программирования под ms - dos

Программа написанная на ассемблере, так же как и программа, написанная на любом другом языке программирования, выполняется не сама по себе, а при помощи операционной системы. Операционная система выделяет область памяти для программы, загружает ее, передает ей управление и обеспечивает взаимодействие программы с устройствами ввода-вывода, файловым системами, и другими программами (разумеется кроме тех случаев, когда программа сама является операционной системой или ее частью). Способы взаимодействия программы с внешним миром различны для разных операционных систем, так что программа написанная для Windows не будет работать в DOS, а программа для Linux - в Solaris /x86, хотя все эти системы могут работать на одном и том же компьютере. Самая простая и распространенная операционная система для компьютеров, основанных на процессорах Intel, - DOS (Дисковая операционная система). DOS предоставляет программам полную свободу действий, никак не ограничивая доступ к памяти и внешним устройствам, позволяя им самим управлять процессором и распределением памяти. По этой самой причине DOS лучше всего подходит, чтобы близко познакомиться с устройством компьютера и возможностями, которые скрываются компиляторами с языков высокого уровнями и более совершенными операционными системами.

Итак, чтобы программа выполнилась, она должна быть скомпилирована в исполнимый файл. Основные два формата файлов в DOS - COM и EXE. Файлы типа COM содержат только скомпилированный код без какой-либо дополнительной информации о программе. Весь код, данные и стек такой программы располагаются в одном сегменте и не могут превышать 64 килобайта. Файлы типа EXE содержат заголовок, в котором описывается размер файла, требуемый объем памяти, список команд в программе, использующих абсолютные адреса, которые зависят от расположения программы в памяти, и т.д. EXE - файл может иметь любой размер. Формат EXE также используется для исполнимых файлов в различных версиях DOS расширителей и Windows, но со значительными изменениям.

Операционная система MS-DOS предоставляет свой сервис через 21-ое прерывание, то есть команда INT 21h вызывает системную функцию DOS, эта команда есть основное средство взаимодействия программ с операционной системой.

Вывод на экран в текстовом режиме средствами dos

Функция DOS 02h - записать символ в STDOUT с проверкой на CTRL-BREAK

Ввод: AH = 02h

DL=ASCII код символа

Вывод: AL=код последнего записанного символа (кроме случая с символом табуляции)

Некоторые служебные символы

BEL (07h) - звуковой сигнал

BS (08h) - движение курсора влево на одну позицию

HT (09h) - заменяется на несколько пробелов

LF (0Ah) - опускает курсор на одну позицию вниз

CR (0Dh) - приводит к переходу на начало текущей строки

Функция DOS 06h - записать символ в STDOUT без проверки на CTRL-BREAK

Ввод: AH = 06h

DL=ASCII код символа (кроме FFh)

Вывод: AL=код последнего записанного символа (кроме случая с символом табуляции)

Функция DOS 09h - Записать строку в STDOUT c проверкой на CTRL - BREAK

Ввод: AH=09h

DS:DX = адрес строки, заканчивающейся символом $ (24h)

Вывод: AL=24h (код последнего символа)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]