Срок выполнения:
Литература здесь (книги Пильщикова и Зубкова; из Зубкова пригодятся главы 2 и 11). Там же ссылка на документацию (англ.) ассемблера GNU (as).
...
В 32-разрядной версии собирайте без дополнительных ключей и пакетов: gcc <файл.s>
Примеры
Копирование символов: 01-copy.zip
Удаление пробельных символов: 02-remove-space.zip 03-remove-space-tab.zip
Замена цепочки пробелов на один: 04-filter-space.zip
...
Проверить разрядность системы можно командой uname -m
В Windows поставьте msys+mingw или cygwin (32-битные, с компилятором gcc). Всё тоже самое: и msys, и cygwin дают строку bash.
Отличие в программе: все глобальные и внешние метки должны начинаться с подчёркивания (main → _main).
Примеры
Вывод строки: say.s
Вывод числа: write-int.s
...
Вызов из Си (для Linux): t.c
Факториал: int-fact.s
Задание
Составьте программу на ЯА (архитектура IA-32, синтаксис AT&T), решает задачу по варианту.
При умножении используйте только младшие 32 бита произведения.
Варианты, часть 1
Расчёт номера своего варианта см. на странице Успеваемость студентов.
0. (p – a) (p – b) / 2
1. (-b + d) / (2 a)
2. 2 / (k x + y)
3. k (a – b) / (c + d)
4. a b c / (a – 3)