Hints

Выделить буффер состоящий из X*Y байт V

				.fill X, Y, V
				.fill 16, 1, 'a'
			

1. Работа с памятью

				movb %bl, (%rsi) 	# Записать байт из регистра bl по адресу в регистре rsi
				movl %rbx, (%rsi)       # Записать long (64 bit) из регистра rbx по адресу в регистре rsi
				movb (%rsi), %bl	# Прочитать байт, находящийся по адресу из регистра rsi в регистр bl
				movl (%rsi), %rbx	# Прочитать long (64 bit), находящийся по адресу из регистра rsi в регистр rbx
			

2. Установка gdb.peda

				git clone https://github.com/longld/peda.git ~/peda
				echo "source ~/peda/peda.py" >> ~/.gdbinit
			

3. Настройка DOSBox для занятий

4. Продвинутая работа с консолью в Linux

4.1. Отключение вывода символов при нажатии на клавиши

Для того чтобы сиволы при вводе не отображались в терминале необходимо изменить его атрибуты.
Для этого необходимо использовать функцию termios. Подробнее с ней знакомятся во втором семестре АСВТ
Пока воспользуемся специальной "библиотекой". Для сборки и линковки используем не as/ld, а gcc:
gcc getch.c program.s -o program

4.2. Цветной вывод, очистка экрана, перемещение курсора

Для того, чтобы текст был цветным, а курсор "перемещался" по консоли
Нужно вывести на консоль соответсвующую escape-последовательность.
Любая esc-последовательность начинается с символа esc: `\x1B` (код - 27)
Полный список esc-последовательностей можно найти на странице ANSI_escape_code.
"\x1B[?25l"		# Скрыть курсор

Полезные ссылки

Ведомость курса

Unistd

DOS.zip

getch.c

Про макросы TASM-а