русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Основы программирования на языке TURBOPASCAL. Учебное пособие. Б. А. Крымов, А. О. Мовшин, С. В. Кулакова. Воронеж: ВГТА. 2000.


Дата добавления: 2014-11-27; просмотров: 579; Нарушение авторских прав


Все, что изображено на мониторе – и графика, и текст, одновременно присутствует в памяти, встроенной в видеоадаптер. Чтобы изображение появилось на мониторе, оно должно быть записано в память видеоадаптера. Для этой цели отводится специальная область памяти, начинающаяся с абсолютного адреса 0В800h:0000h (для текстовых режимов) и заканчивающаяся 0В800h:0FFFFh. Все, что программы пишут в эти область памяти, немедленно пересылается в память видеоадаптера. В текстовых режимах для хранения каждого изображенного символа используются два байта: байт с ASCII кодом символа и байт с его атрибутом, так что по адресу 0В800h:0000h лежит байт с кодом символа, находящегося в верхнем левом углу экрана; по адресу 0В800h:0001h расположен атрибут этого символа; по адресу 0В800h:0002h – код второго символа в верхней строке экрана и т.д. Таким образом, любая программа может вывести текст на экран простой командой пересылки данных, не прибегая ни к каким специальным функциями DOS или BIOS.

 

;dirout.asm

;Выводит на экран все ASCII-символы без исключения, используя ;прямой вывод на экран.

;

.model tiny

.code

.386 ;Будет использоваться регистр ЕАХ

;и команда STOSD

org 100h ;Начало com-файла

start:

mov ax, 0003h

int 10h ;Видеорежим 3 (очистка экрана).

cld ;Обработка сток в прямом направлении

;Подготовка данных для вывода на экран:

mov eax, 1F201F00h;первый символ 00 с атрибутом 1Fh.

;затем пробел (20h) c атрибутом 1Fh

mov bx, 0F20h ;Пробел с атрибутом 0Fh

mov cx, offset ctable ;ES:DI – начало таблицы.

cloop:

stosd ;Записать символ и пробел в таблицу ctable.

inc al ;AL содержит следующий символ.

test cx, 0Fh ;Если СХ не кратен 16,

jnz continue_loop ;продолжить цикл.

push cx ;Иначе: сохранить значение счетчика.

mov cx, 80-32 ;Число оставшихся до конца строки символов.



xchg ax, bx

rep stosw ;Заполнить остаток строки пробелами

; с атрибутом 0F.

xchg bx, ax ;Восстановим значение ЕАХ.

pop cx ;Восстановим значение счетчика.

continue_loop

loop cloop

stosd ;Записать последний (256-й)символ и ;пробел.

 

;Вывод на экран.

 

mov ax, 0B800h ;Сегментный адрес видео памяти.

mov es,ax

xor di, di ;DI=0, адрес начала видеопамяти в ES:DI.

mov si, offset ctable ;Адрес таблицы в DS:SI.

mov cx, 6 ;15 строк по 80 символов, последняя строка-32.

rep movsw ;Скопировать таблицу ctable в ;видеопамять.

ret ;Завершение com-файла.

end start

 

Варианты заданий:

1. Вывести на экран с помощью видеопамяти 1-10 символы ASCII-таблицы.

2. Вывести на экран с помощью видеопамяти 10-20 символы ASCII-таблицы.

3. Вывести на экран слово «Привет», красными буквами на синем фоне.

4. Вывести на экран с помощью видеопамяти 20-30 символы ASCII-таблицы.

 

Литература

1. Немнюгин С. Pascal: Учебный курс. – СПб.: Питер. 1999.

2. Марченко, А. И. Программирование в среде Turbo Pascal 7.0 [Текст] / А. И. Марченко, Л. А. Марченко. – Киев : Корона-принт, 2007. – 464 с.

3. Попов, В. Б. Turbo Pascal для школьников. [Текст] / В.Б. Попов. – М. : Финансы и статистика, 2007. – 528 с.

4.Фаронов, В.В.Turbo Pascal 7.0. Начальный курс. [Текст] / В. В. Фаронов. – М. : КноРус, 2007. – 575 с.

5. Фаронов, В. В. Turbo Pascal 7.0. Практика программирования. [Текст] / В. В. Фаронов. – М. : КноРус, 2007. – 415 с.

Основы программирования на языке TURBOPASCAL. Учебное пособие. Б. А. Крымов, А. О. Мовшин, С. В. Кулакова. Воронеж: ВГТА. 2000.

 

Тема 1.Введение в PASCAL



<== предыдущая лекция | следующая лекция ==>
Исследование механизмов работа с видеопамятью персонального компьютера типа IBM. Тестирование и отладка ассемблерных программ. | Конструктивные элементы языка PASCAL


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.863 сек.