Рисование флага страны в Ассемблере - Assembler

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

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

Нам задали в институте написать программу на Ассемблере, программа должна рисовать в графической среде флаг Швеции. Много раз пробовал написать, но никак не получается. Кому не сложно можете помочь написать эту программу. Буду очень благодарен.

Решение задачи: «Рисование флага страны в Ассемблере»

textual
Листинг программы
; masm dos com #
.286
.model tiny
.code
org 100h
begin:  mov ax, 13h   ;установка графического режима 320х200х256
        int 10h
        push 0A000h;установили ES на начало видеобуфера
    pop es
    mov di,0; координата верхнего левого угла
    mov ax,101h; синий цвет в AL и AH
    mov cx,32000
    rep stosw;заполнили синим весь экран
    mov di,135; начало вертикальной перекладины
    mov cx,200
    mov ax,0E0Eh; желтый цвет
a1: push cx
    mov cx,25
    rep stosw
    add di,270
    pop cx
    loop a1; нарисовали вертикальную перекладину
    mov di,320*80; рисуем горизонтальную часть креста
    mov cx,7200
    rep stosw
        mov ah,0    
        int 16h; любуемся на флаг Швеции пока не надоест
    mov ax,3; установили текстовый режим
    int 10h
        ret     ;вышли из программы
end begin

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

  1. Установка графического режима 320х200х256 - mov ax, 13h
  2. Заполнение экрана синим цветом - mov ax,101h; mov di,0; mov cx,32000; rep stosw
  3. Начало вертикальной перекладины - mov di,135
  4. Желтый цвет - mov ax,0E0Eh
  5. Нарисовали вертикальную перекладину - mov di,320*80; mov cx,7200; rep stosw; loop a1
  6. Горизонтальная часть креста - mov di,320*80; mov cx,7200; rep stosw
  7. Возвращение в текстовый режим - mov ax,3; int 10h
  8. Выход из программы - ret

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

7   голосов , оценка 4.286 из 5