Вывести на экран первые 16 символов ASCII-таблицы в виде матрицы 4х4 (com-файл, tasm) - Assembler
Формулировка задачи:
Задание такое:
Написать com-программу, которая выведет на экран только первые 16 символов ASCII-таблицы в виде матрицы 4х4
Решение задачи: «Вывести на экран первые 16 символов ASCII-таблицы в виде матрицы 4х4 (com-файл, tasm)»
textual
Листинг программы
model tiny .code org 100h start: mov al,' ' mov cx,4 @@01: push cx mov cx,4 @@02: int 29h inc al loop @@02 pop cx push ax mov al,10 int 29h mov al,13 int 29h pop ax loop @@01 ret end start
Объяснение кода листинга программы
В этом коде на языке Assembler происходит следующее:
- Инициализируется регистр al (содержит символ) значением пробела.
- Инициализируется регистр cx (счётчик) значением 4.
- В цикле, пока значение счётчика cx больше или равно 4, происходит следующее:
- Выполняется интеркаляция (int 29h), при этом в регистр al записывается очередной символ из таблицы ASCII.
- Увеличивается значение счётчика cx на единицу.
- После окончания цикла значение регистра al устанавливается равным 10.
- Выполняется интеркаляция (int 29h), при этом в регистр al записывается символ, соответствующий ASCII-коду 13.
- Значение регистра al устанавливается равным 13.
- Выполняется интеркаляция (int 29h), при этом в регистр al записывается символ, соответствующий ASCII-коду 10.
- Завершается работа программы (ret). Номера пунктов соответствуют указанным в коде меткам @@01 и @@02.