Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Срок выполнения: 8–15 октября

Литература здесь (книги Пильщикова и Зубкова; из Зубкова пригодятся главы 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)