Что значит ".=» означает в ГАЗЕ
Вопрос
Я изучаю исходный код GNU GRUB и в /grub-core/boot/i386/pc/*.S
файлов, их много .=
маркеры.Вот один из /grub-core/boot/i386/pc/boot.S
файл (строки 409-414):
/*
* Windows NT breaks compatibility by embedding a magic
* number here.
*/
. = _start + GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC
Я хочу знать, что .=
означает.
Решение
В ГАЗе, а возможно и в других ассемблерах, специальный символ .
относится к текущему адресу, в который ассемблер будет выполнять ассемблирование.Оператор, подобный приведенному выше, определяет, где будут собираться байты для следующего кода.
Документация для .
оператор здесь.
Не связан с StackOverflow