Программа создает таблицу цветов в текстовом режиме. Комприлировать fasm-ом
org 100h mov ax, 3 int 10h ; установка видеорежима mov ax, 1003h mov bl, 0 ; 0 - яркие цвета, 1 - мигание int 10h push 0b800h pop es ; es = сегмент видеопамяти mov di, 0 ; di = начало сегмента cld ; прямое направление для строковых операций mov bx, hex_numbers ; устанавливаем таблицу для команды xlat mov ah, 0 ; ah будет хранить текущий атрибут next_color: mov al, ' ' stosw ; выводим пробел mov al, ah shr al, 4; ; в al остаются старшие 4 бита xlatb ; преобразуем их в шестнадцатиричную цифру stosw ; выводим первую цифру mov al, ah and al, 0xf; ; в al младшие 4 бита xlatb ; преобразуем их в шестнадцатиричную цифру stosw ; выводим вторую цифру mov al, ' ' stosw ; выводим пробел inc ah ; следующий атрибут test ah, 0xf ; если вывели 16 атрибутов jnz @f ; заполняем строку до конца dec ah ; пробелами mov cx, 80 - (16 * 4) ; сколько символов заполнять rep stosw inc ah @@: test ah, ah ; если ah=0, то перебрали все атрибуты jnz next_color ; повторяем для всех возможных атрибутов mov ah, 0 ; ждем клавишу int 16h ret ; выходим hex_numbers db '0123456789ABCDEF' ; шестнадцатиричные цифры