Мигание текста - Assembler

Узнай цену своей работы

Формулировка задачи:

Всем привет. Как сделать мерцание текста? Заранее спасибо за любую помощь.
.MODEL SMALL
.DATA
MES1 DB 'HAPPY NEW YEAR', 13, 10, '$'
.STACK 256
.CODE
START:
    MOV AX, @DATA
    MOV DS, AX
    MOV AH, 00H  
    MOV AL, 03H 
    INT 10H
 
;вывод строк поздравления
 
    MOV DL, 13  ;X=32
    MOV DH, 19  ;Y=19
    MOV AH, 02H ;установка курсора
    
    INT 10H         ;прерывание
    MOV  AH, 09H    ;функция вывода символа
    MOV  BL, 0000001b ;синий по чёрному
    MOV  CX, 14 ;14 символов
    INT    10H
    LEA DX, MES1    ;вывод MES2
 
    MOV AH, 09h
    INT 21H
 
    MOV AX, 4C00h
    INT 21h
 
    END START

Решение задачи: «Мигание текста»

textual
Листинг программы
PROCEDURE TextBlinkOn;
assembler;
asm
  mov  ax,1003h
  mov  bl,1
  int  10h
end;
PROCEDURE TextBlinkOff;
assembler;
asm
  mov  ax,1003h
  mov  bl,0
  int  10h
end;

Объяснение кода листинга программы

  1. PROCEDURE TextBlinkOn; - процедура для мигания текста на экране
  2. PROCEDURE TextBlinkOff; - процедура для прекращения мигания текста на экране
  3. asm - оператор для перехода к ассемблерному коду
  4. mov ax,1003h - перемещение регистра ax в 1003h
  5. mov bl,1 - перемещение регистра bl в 1
  6. int 10h - переход к функции 10h для вывода символа
  7. mov ax,1003h - перемещение регистра ax в 1003h
  8. mov bl,0 - перемещение регистра bl в 0
  9. int 10h - переход к функции 10h для вывода символа

Оцени полезность:

7   голосов , оценка 4.143 из 5
Похожие ответы