Скачиваний:
40
Добавлен:
18.12.2018
Размер:
189 Кб
Скачать

Int 10h ;Установка курсора.

mov CX, 1 ;Выводим по одному символу

mov AL, 0Fh ;символ солнышко

mov BL, 10001100b ;Атрибут: красный

mov AH, 09h ;функция вывода символа

Int 10h ;Вывод символа

;-------------Построение первой строки--------------

mov BH, 0

mov DL, 19

mov DH, 12

mov AH, 02h

int 10h

mov CX, 3 ;3 символа

mov AL,2Ah

mov BL, 00001010b ;цвет:зелёный

mov AH, 09h

int 10h

;-------------Построене второй строки---------------

mov BH, 0

mov DL, 18

mov DH, 13

mov AH, 02h

int 10h

mov CX, 5 ;5 символа

mov AL,2Ah ;Символ точки

mov BL, 00001010b ;цвет:зелёный

mov AH, 09h

int 10h

;------------Построение 3 строки--------------------

mov BH, 0

mov DL, 17

mov DH, 14

mov AH, 02h

int 10h

mov CX, 7 ;7 символа

mov AL,2Ah ;Символ точки

mov BL, 00001010b ;цвет:зелёный

mov AH, 09h

int 10h

;-------------Рисуем корешок------------------------

mov BH, 0

mov DL, 20

mov DH, 15

mov AH, 02h

int 10h

mov CX, 1

mov AL, 0Fh ;символ солнышко

mov BL, 00001110b ;цвет жёлтый

mov AH, 09h

int 10h

;------------------вывод поздравления----------------

MOV AX, @DATA

MOV DS, AX

XOR AX, AX

;-----------------1 строка----------------------------

mov BH, 0 ;Используем страницу видеопамяти 0

mov DL, 13 ;Координаты начальной точки Х=55

lea si,A ;Строка А

strok:

inc DL

mov DH, 1 ; Y

mov AH, 02h ;Выбираем функцию установки курсора.

Int 10h ;Установка курсора.

mov CX, 1 ;Выводим по одному символу

mov AL, si[0]

mov BL, 00000011b ;розовый

mov AH, 09h ;Выбираем функцию вывода символа и

Int 10h ;Вывод символа.

inc si ;следующий символ

cmp dl,ln1

jb strok ;если меньше то переход к метке

;---------------------------2 строка--------------------

mov BH, 0 ;Используем страницу видеопамяти 0.

mov DL, 16

lea si,B ;Строка В

strok1:

inc DL

mov DH, 2 ; Y

mov AH, 02h ;Выбираем функцию установки курсора

Int 10h ;Установка курсора

mov CX, 1 ;Выводим по одному символу

mov AL, si[0]

mov BL, 00001100b ;тёмно - синий

mov AH, 09h

int 10h

inc si

cmp dl,ln2

jb strok1

;-----------------------------3 строка---------------------

mov BH, 0 ;Используем страницу видеопамяти 0

mov DL, 14 ;Координаты начальной точки Х=55

lea si,C

strok2:

inc dl

mov DH, 3 ; Y

mov AH, 02h

int 10h

mov CX, 1 ;Выводим по одному символу

mov AL, si[0]

mov BL, 10001101b ;светло синий

mov AH, 09h

int 10h

inc si

cmp dl,ln3

jb strok2

;----------------Завершение программы--------------

mov AX, 4C00h

int 21h

END Start

4.2 Проанализировать пример программы GRAFIC, приведенной ниже и реализующей вывод графика функции, последовательность значений которой определена в сегменте данных в виде массива MAS. Добавить в исходный текст недостающие комментарии.

TITLE GRAFIC

;Программа построения графика функции в текстовом режиме экрана

;Входные параметры:

;массив значений элементов графика MAS

.MODEL SMALL

.DATA

Mas DB 0,1,5,8,9,8,5,1,0,-1,-5,-8,-9,-5,-1

Func DW 450, -350, 0, 250, 375, 400, 420, 360, 250, 200, 150

DW 325, 300, 285, 200, 0, –200, -275, -250, -150, -100

DW -50, 0, 50, 100, 150, 200

.STACK 256 (?)

.CODE

Start:

mov AX, @DATA

mov DS, AX

;------ Задание режима экрана с очисткой ----------

mov AH, 0

mov AL, 3 ;Режим 80х25, 16 цветов.

int 10h

;----- Построение вертикальной оси координат ------

mov BH, 0 ;Используем страницу видеопамяти 0

mov DL, 5 ;Координаты начальной точки Х=5

mov DH, 1 ; Y =1

met1:

mov AH, 02h ;Выбираем функцию установки курсора

int 10h ;Установка курсора

mov CX, 1 ;Выводим по одному символу

mov AL, 7Ch ;символ вертикальной черточки.

mov BL, 00001111b ;Атрибут: ярко белый по черному фону.

mov AH, 09h ;Выбираем функцию вывода символа и атрибута в позицию курсора

int 10h ;Вывод символа

inc DH ;Переход к координате Y+1.

cmp DH, 24 ;Сравнение с нижней позицией

jb met1 ;Если ниже, повторить цикл вывода символа

;----Построение горизонтальной оси координат ---

mov BH, 0

mov DL, 5 ;Координаты начальной позиции Х=5

mov DH, 12 ;Y=12

mov AH, 02h ;Выбираем функцию установки курсора

int 10h ;Установка курсора

mov CX, 50 ;Длина цепочки символов

mov AL,5Fh ;Символ горизонтальной черточки

mov BL, 00001111b ;белый по черному фону

mov AH, 09h ;Выбираем функцию вывода символа и атрибута в позицию курсора

int 10h ;Вывод символа

;--------------Вывод точек графика---------------------

lea SI, Mas ;Загрузка адреса массива значений

mov DI, 15 ;Установка счетчика циклов

mov CX, 1 ;Вывод по одному символу

mov BH, 0 ;Используем страницу видеопамяти 0

mov DL, 5 ;Координаты первой точки X=5

met2:

mov DH, 12 ;Y=12

sub DH, [SI] ;Вычисление Y(i) в системе координат графика

mov AH, 02h ;Выбираем функцию установки курсора

int 10h ;Установка курсора в вычисленную позицию

mov AL, 2Ah ;Символ звёздочки

mov BL, 00001100b ;цвет красный

mov AH, 09h ;Выбираем функцию вывода символа и атрибута в позицию курсора

Соседние файлы в предмете Автоматизированные информационные системы