мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
asm:second2 [17/02/2011 16:42] – arabusov | asm:second2 [10/03/2011 21:53] (текущий) – arabusov | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
===== Вывод на экран ===== | ===== Вывод на экран ===== | ||
+ | [[http:// | ||
+ | |||
==== Режимы адаптеров ==== | ==== Режимы адаптеров ==== | ||
- | ^ Режим ^ Разрешение ^ Количество цветов ^ Тип^((устарели, | + | ((устарели, |
+ | ^ Режим ^ Разрешение ^ Количество цветов ^ Тип^ | ||
| 00h | 40x20 | 16 | Text| | | 00h | 40x20 | 16 | Text| | ||
| 01h | 40x25 | 16 | Text| | | 01h | 40x25 | 16 | Text| | ||
| 02h | 80x25 | 16 | Text| | | 02h | 80x25 | 16 | Text| | ||
| 03h | 40x20 | 16 | Text| | | 03h | 40x20 | 16 | Text| | ||
- | | 04h | 320x200 | + | | 04h | 320x200 |
- | | 05h | 320x200 | + | | 05h | 320x200 |
- | | 06h | 640x200 | + | | 06h | 640x200 |
| 07h | 80x25 | 2 | Text| | | 07h | 80x25 | 2 | Text| | ||
- | | 08h | 160x200 | + | | 08h | 160x200 |
- | | 09h | 320x200 | + | | 09h | 320x200 |
- | | 0ah | 640x200 | + | | 0ah | 640x200 |
| 0bh | Reserved|||| | | 0bh | Reserved|||| | ||
| 0bh | Reserved|||| | | 0bh | Reserved|||| | ||
- | | 0dh | 320x200 | + | | 0dh | 320x200 |
- | | 0eh | 640x200 | + | | 0eh | 640x200 |
- | | 0fh | 640x350 | + | | 0fh | 640x350 |
- | | 10h | 640x350 | + | | 10h | 640x350 |
- | | 10h | 640x350 | + | | 10h | 640x350 |
- | | 11h | 640x480 | + | | 11h | 640x480 |
- | | 12h | 640x480 | + | | 12h | 640x480 |
- | | 13h | 320x240 | + | | 13h | 320x240 |
+ | ==== Функции BIOS для работы с текстовым режимом ==== | ||
+ | === Установка режима === | ||
+ | <code asm>mov ah,00h | ||
+ | mov al, | ||
+ | int 10h | ||
+ | </ | ||
+ | === Получение режима === | ||
+ | <code asm>mov ah,0fh | ||
+ | int 10h | ||
+ | </ | ||
+ | При возврате: | ||
+ | <code asm> | ||
+ | al=режим | ||
+ | bh=активная страница | ||
+ | </ | ||
+ | === Установка позиции курсора === | ||
+ | <code asm>mov ah,02h | ||
+ | mov bh, | ||
+ | mov dh, | ||
+ | mov dl, | ||
+ | int 10h | ||
+ | </ | ||
+ | // Примечания // | ||
+ | |||
+ | (0,0) - верхний левый край экрана | ||
+ | === Запись символа и атрибута в позицию курсора === | ||
+ | <code asm>mov ah,09h | ||
+ | mov al, | ||
+ | mov bh, | ||
+ | mov bl, | ||
+ | mov cx, | ||
+ | int 10h | ||
+ | </ | ||
+ | // Примечания // | ||
+ | |||
+ | * В //al// специальные символы не распознаются | ||
+ | * Переноса курсора не происходит | ||
+ | === Рисование пикселя === | ||
+ | <code asm>mov ah,0ch | ||
+ | mov al, | ||
+ | mov bh, | ||
+ | mov cx, | ||
+ | mov dx, | ||
+ | int 10h | ||
+ | </ | ||
+ | |||
+ | === Запись символа в режиме телетайпа === | ||
+ | <code asm>mov ah,0eh | ||
+ | mov al, | ||
+ | mov bh, | ||
+ | mov bl,цвет (в графических режимах) | ||
+ | int 10h | ||
+ | </ | ||
+ | === Запись строки в режиме телетайпа === | ||
+ | <code asm>mov ax,seg буфер строки | ||
+ | mov es,ax | ||
+ | mov bp,offset буфера строки | ||
+ | mov ah,13h | ||
+ | mov al, | ||
+ | mov bh, | ||
+ | mov bl, | ||
+ | mov cx, | ||
+ | mov dh, | ||
+ | mov dl, | ||
+ | int 10h | ||
+ | </ | ||
+ | |||
+ | ==== Задание ==== | ||
+ | Написать функцию сохранения и установки режима терминала, |