Задачка для самостоятельного решения по MIPS

На устройстве «MARS Bitmap Display», настроенным так:

display.png

Вывести своё имя-фамилию-отчество (можно не своё, но чтобы отличалось от других) в виде растровой картинки, смасштабированной до размера 512×256

Предполагается это делать примерно так.

Сначала получите растровый вариант ФИО. Например, такой:

........#####.............
.......##..##.............
.......##..##.##...##.....
.......##..##.##..###.....
.......##..##.##.#.##.....
.......##..##.###..##.....
......##...##.##...##.....
..........................
.......#####..............
......##...##.............
......##......##...##.....
......##......##..###.....
......##......##.#.##.....
......##...##.###..##.....
.......#####..##...##.....
..........................
..##..##..................
..##..##..................
..##..##..##...##.##...##.
..##..##..##...##.##...##.
..##..##..####..#.#######.
..##..##..##..#.#.##...##.
..#######.####..#.##...##.
........#.................

Это можно сделать, например, с помощью питоньего модуля pyfiglet:

$ python3 -m pyfiglet -w 28 -j center -f banner "Ли
Си
Цын"

или любым другим способом.

Затем превратите это в ассемблерный код, описывающий двумерный массив байтов:

   1 .data
   2 Name:
   3         .asciiz "........#####............."
   4         .asciiz ".......##..##............."
   5         .asciiz ".......##..##.##...##....."
   6         .asciiz ".......##..##.##..###....."
   7         .asciiz ".......##..##.##.#.##....."
   8         .asciiz ".......##..##.###..##....."
   9         .asciiz "......##...##.##...##....."
  10         .asciiz ".........................."
  11         .asciiz ".......#####.............."
  12         .asciiz "......##...##............."
  13         .asciiz "......##......##...##....."
  14         .asciiz "......##......##..###....."
  15         .asciiz "......##......##.#.##....."
  16         .asciiz "......##...##.###..##....."
  17         .asciiz ".......#####..##...##....."
  18         .asciiz ".........................."
  19         .asciiz "..##..##.................."
  20         .asciiz "..##..##.................."
  21         .asciiz "..##..##..##...##.##...##."
  22         .asciiz "..##..##..##...##.##...##."
  23         .asciiz "..##..##..####..#.#######."
  24         .asciiz "..##..##..##..#.#.##...##."
  25         .asciiz "..#######.####..#.##...##."
  26         .asciiz "........#................."
  27 Endname:

Далее пишем к нему программу, которая для каждой точки графического дисплея

Должно получиться что-то вроде этого:

result.png

Решения

Отсылать почтой на Д. Ю. Волканову

FrBrGeorge/Misc/TaskArch2020 (last edited 2020-04-12 19:33:28 by FrBrGeorge)