Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Вывод на экран шестнадцатеричного числаСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Вывод на экран одной шестнадцатиричной цифры:
Процедуры
Это список инструкций, который можно вызвать из различных мест программы. Аналог функции в С и подпрограммы. Процедуру можно вызвать с помощью CALL имя, и выход с помощью REТ. Адрес возврата запоминается в стеке. САLL имя …….
…. …. RET ……
Теперь напишем программу распечатки содержимого регистра BL.
MOV DL, BL RCR DL, 4; сдвиг вправо на 4 бита MOV DL, BL CALL PRINT_HEX INT 20H PRINT_HEX: AND DL, 0FH ADD DL, 030H CMP DL, 03AH JL PRINT ADD DL, 07H PRINT: INT 21H RET
Ввод символов Вызов DOS через INT 21H, предварительно загрузив в AH единицу, обеспечив ввод одного символа. Решим следующую задачу – сформировать байт из шестнадцатеричного числа (из 2-х шестнадцатиричных цифр). Если вводится символ, который нельзя преобразовать в шестнадцатеричную цифру, то – звонок.
CALL INP_HEX MOV AL, DL RCL DL, 4 CALL INP_HEX ADD DL, AL MOV AH, 02 INT 21H INT 20H INP_HEX: PUSH DX MOV AH, 08; считать символ, но не выводить его на экран LOOP: INT 21H CMP AL, 030H JB BEEP CMP AL, 046H JA BEEP CMP AL, 039H JA CONT MOV AH, 02 MOV DL, AL SUB AL, 030H POP DX RET BEEP: INT 21H CONT: CMP AL, 041H JB LOOP MOV AH, 02 MOV DL, AL INT 21H SUB AL,037H POP DX RET
Вывод на экран двоичного числа
MOV BX, 0A3C5H MOV CX, 0008 CYCLE: RCL BX, 1; циклический сдвиг BX на 1 разряд вправо LOOP CYCLE; пока СХ=СХ-1¹0 INT 20H
MOV AH, 02; номер функции в AH – печать символа из DL MOV CX, 0008; количество сдвигов MET: MOV DL, 00 RCL BL, 1 ADC DL, 30 INT 21H LOOP MET INT 20H
РАБОТА С ДИСКОВЫМИ ФАЙЛАМИ
В DOS доступны следующие функции работы с файлами:
39h – создать каталог файлов (аналогично функции MKDIR DOS) перед использованием DS:DX – адрес ASCIIZ – строки –имя пути для нового каталога. Ошибки в АХ: 3 - путь не найден 5 – ошибка в доступе
3Аh – удалить каталог DS:DX – адрес ASCIIZ – строки –имя пути для нового каталога. Ошибки в АХ те же.
3Вh – сменить текущий каталог DS:DX – то же АХ – 3
3Сh – создать файл (CREATE) открывает существующий или создает новый файл. DS:DX – адрес ASCIIZ строки. СХ – аттрибут файла АХ – возвращается логический номер файла.
Логический номер файла или дескриптор – это 16-битовое число, используемое DOS как указатель на систему таблиц. Логический номер освобождается после закрытия файла и может быть использован повторно. Существует пять стандартных логических номеров 0-4, которые автоматически предоставляются любой программе. Остальные номера с большими логическими номерами DOS предоставляет по требованию.
АSCIIZ-строка Функции DOS, работающие с файлами, требуют задания имени и пути к файлу в виде ASCIIZ строки. ASCIIZ строка состоит из обычных ASCII символов, за которыми следует нулевой байт. Типичная строка выглядит наподобие: C:\DIRECTORY1\DIRECTORY2\FILENAME.EXT В качестве разделителя может быть как прямая, так и обратная косая черта. (имя дисковода может быть опущено)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2017-02-07; просмотров: 546; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.008 с.) |